Концептуальная модель предметной области. ER -диаграмма. Язык концептуального моделирования (ЯКМ).
- На основе анализа предметной области и технического задания построить концептуальную (инфологическую) модель предметной области. Концептуальную модель построить в двух видах: ER-диаграмма; модель на языке концептуального моделирования.
- Описание должно содержать:
· ER-диаграмму;
· концептуальную модель в виде текста на ЯКМ.
Учебный пример разработки базы данных
Проведённый анализ предметной области позволяет построить её концептуальную модель. То есть, выделить сущности с их атрибутами и определить смысловые связи между сущностями.
Концептуальная модель строиться либо в виде диаграммы «Сущность-Связь» (Entity-Relationship-диаграммы, ER-диаграммы), либо записывается на языке концептуального(инфологического) моделирования (ЯКМ, ЯИМ). В рамках лабораторной работы надо построить как ER-диаграмму, так и модель на ЯКМ.
Построение ER-диаграммы.
Рассмотрим для краткости лишь фрагмент предметной области.
К сущностям предметной области относятся: Читатели, Переплёты(экземпляры изданий).
Сущность Читатели имеет следующие атрибуты(свойства):
- Номер читательского билета
- Фамилия читателя
- Имя читателя
- Отчество читателя
- Адрес читателя
- Телефон читателя
Сущность Переплёты имеет следующие основные атрибуты:
- Номер (инвентарный номер) переплета
- Дата приобретения конкретного переплета
- Цена конкретного переплета
|
|
Между сущностью Читатели и сущностью Переплёты есть смысловая связь. Обычно её выражают глаголом. То есть, «Переплёты выдаются Читателям».
Изобразим это в виде диаграммы «Сущность-Связь» (ER-диаграммы).
Атрибут Номер_билета подчёркнут сплошной линией, это означает, что мы выбрали его в качестве первичного ключа для сущности Читатели. То есть, именно по нему мы будем отличать одного читателя от другого. Значения первичного ключа не могут повторяться. Также Номер_переплёта выбран первичным ключом для сущности Переплёты.
Связь Выдаются имеет размерность M:N, то есть «многие-ко-многим». Так как один переплёт может выдаваться многим читателям и один читатель может брать много переплётов.
Все связи «многие-ко-многим» необходимо «расшить», то есть представить подробно. Каждая связь «многие-ко-многим» представляется двумя связями «один-ко-многим» и ассоциацией. Ассоциация это полноправная сущность, в частности она может иметь свои атрибуты и ключи. Имя ассоциации образуют обычно как отглагольное существительное от имени связи. Например, имя связи – Выдаются, имя ассоциации – Выдача.
Получаем окончательный вариант ER-диаграммы.
|
|
Теперь, с помощью ассоциации Выдача мы всегда можем определить какой конкретный переплёт выдавался какому читателю и когда. Пунктиром подчёркнуты внешние ключи, то есть копии первичных ключей из родительских сущностей.
Обратим внимание, что ассоциация Выдача имеет составной первичный ключ, состоящий из трёх полей Номер_переплёта, Номер_билета, Дата_выдачи.
Запись модели на ЯКМ.
Перепишем теперь нашу модель в виде текста на ЯКМ.
Переплеты (Номер_переплета(Pk), Цена, Дата_приобретения)
Читатели (Номер_билета(Pk), Фамилия, Имя, Отчество, Адрес, Телефон)
Выдача (Номер_билета(Pk,Fk), Номер_переплета(Pk,Fk), Дата_выдачи(Pk), Срок, Дата_возврата)
Здесь поля, входящие в первичные ключи обозначены Pk (Primery key). Внешние ключи обозначены Fk (Foreign key). Вместо этого можно использовать подчёркивания, как в ER-диаграмме.
При такой записи связи между сущностями в явном виде не описываются, их надо мысленно восстанавливать по первичным и внешним ключам.
Составитель: к.т.н., доцент каф ПИТ, Иванов А.В.
Дата добавления: 2021-02-10; просмотров: 149; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!