Конспект занятия 18.09.2012

55 views
Skip to first unread message

Alexander Dolnik

unread,
Sep 18, 2012, 2:45:19 PM9/18/12
to 422_2012_db...@googlegroups.com
Добрый день, группа 422!

Мне кажется, что я внёс больше смуты, чем понимания на паре, - так что попытаюсь просуммировать
основные положения в письме: концепцию, шаги построения и некоторые секреты и тонкости.

Концепция или цель построения ER диаграммы - настройка на конкретную задачу и предметную область.
При этом надо учитывать много параметров. Если задача, казалось бы, незначительно меняет формулировку -
это может привести к совершенно другой ER модели той же самой предметной области.

Построение модели состоит из следующих шагов:
   1)  Выделение основных понятий области (выписываем их в столбик и выкидываем ненужное).
   2)  Организация их в сущности с атрибутами, выделение ключей.
   3)  Создание грубой схемы с поименованными множественными связями (на занятии было, договор-тариф-услуга).
        Комментарий,- можно вообще все сущности изучаемой предметной области рассматривать как связанные
        одной мега связью,- это правильно, но неудобно и бесполезно. Удобнее пользоваться бинарными связями, но не всегда
        удаётся создать схему с бинарными связями без циклов.
   4)  Определение типов связей и их кратности.
   5)  Проработка полученной схемы: избавление от n-арных связей (стараться свести из к бинарным, хотя это не всегда возможно, пример тот же).

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

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

Иногда, для решения проблемы с тернарной связью помогает приём введения искусственной сущности.
Пример: можно связать договор с сущностью тариф-за-услугой, а затем тариф-за-услугу связать с услугой,-
это альтернатива тернарной связи {договор, услуга, тариф}

На связи с вами,
  Александр Дольник

Reply all
Reply to author
Forward
0 new messages