Описание предметной области тренинговой компании

27.11.2006

Однажды я делал систему для организации, занимающейся тренингами. Устройство получилось сложным, опишу его лишь в общих чертах. Получилось больше похоже не на сайт в привычном понимании, а на web-based информационную систему.

Основными объектами предметной области можно считать людей, события и образовательные программы. Люди — это участники и организаторы разных мероприятий, тренеры и авторы учебных курсов. Под событиями подразумеваются семинары, тренинги, конференции, встречи.

Даже взаимоотношения между этими элементами не так-то просто описать. При этом схема значительно упрощена. Поначалу и заказчик, и тем более я слабо представляли, что нужно. Были лишь какие-то опорные точки, цель системы и базовые функции.

Итак, что же мы делали? Прежде всего, выделили сущности предметной области. Как вы могли заметить, в системе присутствует вполне очевидная иерархия объектов, то есть «люди» — это верхний уровень, а «тренеры» и «участники» — нижний («люди» — родители, «тренеры» и «участники» — потомки).

Затем определили свойства объектов. Это не совсем поля таблиц базы данных, скорее, их прообразы. Свойства – это характеристики сущностей. У каждого человека есть имя, которое и является примером свойства.

Нужно стремиться к высокой детализации и как можно раньше разрешать все смысловые вопросы, касающиеся сущностей и их свойств. Модель постоянно совершенствуется в процессе проектирования и даже на стадии разработки, но чем точнее она получится в первый раз, тем лучше.

Третьим этапом назовем проработку связей между объектами. Тренеры проводят тренинги, причем в некоторых проектах работают не отдельные люди, а команды. Точно также при составлении учебных программ возможны такие варианты:
* несколько авторов написали одну программу,
* один автор написал несколько программ.

Теперь попробуем всё это нарисовать. Если раньше вам не приходилось заниматься разработкой логических моделей данных, начните совсем с простых схем, не основанных ни на каких стандартах. Вот картиночка, где показано, какие тренеры в каких событиях участвовали. В ней только несколько примеров, отражающих возможные отношения.

Отношения между тренерами и событиями

Кстати, я зря пошутил в названии лекции: это отвлекает и увеличивает шансы что-то пропустить.

Вступительная часть примера неожиданно затянулась, так что продолжение следует. В следующий раз сразу покажу пару схем и, теперь уж наверняка, назову ключевые слова для дальнейшего самообразования, дам ссылки.

Комментарии

Greenders, 20.03.2007 07:30

Можно было б описать предметную область для страховой компании