
- •Лекція 5. Модель “Сутність – зв’язок”
- •5.1. Концепції er-моделі
- •5.1.1. Типи сутностей Типи сутностей - об'єкт чи концепція, що характеризуються на даному підприємстві які мають незалежне існування.
- •Сутність - екземпляр типу сутності, що може бути ідентифікований унікальним образом.
- •Слабкий тип сутності - тип сутності, існування якого, залежить від якогось іншого типу сутності. Сильний тип сутності - тип сутності, існування якого не залежить від якогось іншого типу сутності.
- •Способи представлення сутностей на діаграмі
- •5.1.2. Атрибути Атрибут - властивість типу сутності чи типу зв'язку.
- •Домен атрибута - набір значень, що можуть бути привласнені атрибуту.
- •Простий атрибут - атрибут, що складається з одного компонента з незалежним існуванням.
- •Складений атрибут - атрибут, що складається з декількох компонентів, кожний з який характеризується незалежним існуванням.
- •Однозначний атрибут - атрибут, що містить одне значення для однієї сутності.
- •Багатозначний атрибут - атрибут, що містить кілька значень для однієї сутності.
- •Похідний атрибут - атрибут, що представляє значення, похідне від значення зв'язаного з ним атрибута чи деякої безлічі атрибутів, що належать якомусь (не обов'язково даному) типу сутності.
- •Потенційний ключ - атрибут чи набір атрибутів, що унікально ідентифікує окремі екземпляри типу сутності.
- •Первинний ключ - потенційний ключ, що обраний як первинний ключ.
- •Складений ключ – потенційний ключ, що складається з двох чи більше атрибутів.
- •Представлення атрибутів на діаграмах
- •5.1.3. Типи зв'язків Тип зв'язку - осмислена асоціація між сутностями різних типів.
- •Зв'язок - асоціація між сутностями, що включає по одній сутності з кожного типу, що бере участь у зв'язку сутності.
- •Представлення зв'язків на діаграмах
- •Ступінь зв'язку - кількість сутностей, що охоплені даним зв'язком.
- •Рекурсивний зв'язок - зв'язок, у якому ті самі сутності беруть участь кілька разів і в різних ролях.
- •5.1.4. Атрибути зв'язків
- •5.2. Структурні обмеження
- •5.2.1. Показник кардинальності Показник кардинальності описує кількість можливих зв'язків для кожної із сутностей учасниць.
- •Зв'язку „один до одного"
- •З в'язок „один до багатьох"
- •Зв'язку "багато до багатьох"
- •5.2.2. Ступінь участі Ступінь участі визначає, чи залежить існування деякої сутності від участі в зв'язку деякої іншої сутності.
- •5.3. Проблеми er-моделювання
- •5.3.1. Пастки розгалуження Пастка розгалуження має місце в тому випадку, коли модель відображає зв'язок між типами сутностей, але шлях між окремими сутностями цього типу визначений неоднозначно.
- •5.3.2. Пастки розриву Пастка розриву з'являється в тому випадку, коли в моделі передбачається наявність зв'язку між типами сутностей, але не існує шляху між окремими сутностями цих типів.
- •5.4.1. Суперкласи і підкласи типів сутностей
- •Суперклас - тип сутності, що включає різні підкласи, які необхідно представити в моделі даних. Підклас - тип сутності, що виконує окрему роль, а також є членом суперкласу.
- •5.4.2. Спадкування атрибутів
- •5.4.3. Спеціалізація Спеціалізація - процес збільшення розходжень між окремими членами типу сутності за рахунок виділення їхніх відмінних характеристик.
- •5.4.4. Генералізація Генералізація - процес зведення розходжень між сутностями до мінімуму шляхом виділення їхніх загальних характеристик.
- •5 .4.5. Обмеження, що накладаються на процедури спеціалізації і генералізації
- •5.4.6. Категоризація Категоризація - моделювання одного підкласу зі зв'язком, що охоплює кілька різних суперкласів.
- •5.5. Створення eer-моделі для представлення користувача Manager з навчального проекту DreamHome
- •5.5.1. Специфікації вимог для представлення користувача Manager
- •5.5.2. Створення eer-моделі
- •Визначення типів сутностей
- •Визначення типів зв'язків
- •Визначення показника кардинальності і ступеня участі сторін для типів зв'язків
- •Визначення атрибутів і зв'язування їх з типами сутностей і зв'язків
- •Визначення атрибутів, що є потенційними і первинними ключами
- •Чи спеціалізація генералізація типів сутностей
- •Категоризація типів сутностей
- •Створення розширеної діаграми „сутність-зв’язок"
- •Питання
- •Вправи Навчальний проект University Accommodation Office
З в'язок „один до багатьох"
Розглянемо бінарний зв'язок Oversees між сутностями Staff і Property_forRent. На мал. 5.14 цей зв'язок представлений у виді семантичної мережної моделі.
Н
а
цій діаграмі показані окремі екземпляри
зв'язку Oversees між сутностями Staff і
Property_for_Rent. Наприклад, співробітниця з
ім'ям 'Ann Beech' (s2) відповідає за два об'єкти
нерухомості, розташованих у місті
Глазго, з номерами ‘PG21' (р1) і 'PG36' (р2), а
співробітниця з ім'ям 'Mary Howe' (s3) - за один
об'єкт нерухомості з номером 'РА14' (рЗ),
розташований у місті Абердин. Співробітниця
з ім'ям 'Susan Brand' (sl) не втягнута в цей
зв'язок. Як уже згадувалося вище, при
визначенні співвідношення кардинальності
враховуються тільки ті сутності, що
втягнуті в цей зв'язок. Слід зазначити,
що одна сутність типу Staff може бути
зв'язана з однієї чи більш сутностями
типу Property_for_Rent. Отже, зв'язок Oversees, з
погляду сутності Staff, є зв'язком типу
"один до багатьох" (1;М).
Я
кщо
розглянути зв'язок Oversees із протилежної
сторони, то можна помітити, що з об'єктами
нерухомості в місті Глазго з номерами
'PG21' (р1) і 'PG36’ (р2) працює
співробітниця з ім'ям 'Ann Beech' (s2), а з
об'єктом нерухомості в місті Абердин з
номером 'РА14' (рЗ) - співробітниця з ім'ям
'Mary Howe' (s3). Слід зазначити, що одна сутність
типу Property_for_Rent зв'язана з однією сутністю,
типу Staff. Тому зв'язок Oversees, з погляду
сутності Property_for_Rent, є зв'язком типу "один
до одного" (1:1).
Отже, з погляду сутності Staff, зв'язок Oversees є зв'язком типу 1;М, а з погляду сутності Property for Rent - зв'язком типу 1:1. Однак на ER-діаграмах її варто представляти з найбільш високим із всіх існуючих показником кардинальності, тобто з погляду зв'язку Oversees. Інакше кажучи, для зв'язку Oversees показник кардинальності ми приймаємо рівним 1:М. ER-діаграма зв'язку Oversees між сутностями Staff і Property_for_Rent представлена на мал. 5.15. Кардинальність цього зв'язку підтверджується бізнес правилом, на основі якого вона була представлена.
Зв'язку "багато до багатьох"
Р
озглянемо
бінарний зв'язок Advertises між сутностями
Newspaper і Property for Rent. На мал. 5.16 цей зв'язок
представлений у виді семантичної
мережної моделі.
На цій мережній моделі показані окремі екземпляри зв'язку Advertises між сутностями Newspaper і Property_for_Rent. Наприклад, у газеті 'Glasgow Daily' (nl) рекламуються два об'єкти нерухомості з номерами 'PG21' (р1) і 'PG36' (р2), а в газеті 'Aberdeen Express' (n3) - один об'єкт нерухомості з номером 'РА14' (рЗ). Можна помітити, що одна сутність типу Newspaper може бути зв'язана з однієї чи більше сутностями типу Property_for_Rent. Отже, зв'язок Advertises, з погляду сутності Newspaper, є зв'язком типу "один до багатьох" (1:М).
Якщо розглянути зв'язок Advertises із протилежної сторони, то можна помітити, що об'єкт нерухомості з номером 'PG36' (р2) рекламується в газетах 'Glasgow Daily' (nl) і 'The West News' (n2). Звідси випливає, що одна сутність типу Property_for_Rent може бути зв'язана з однієї чи більше сутностями типу Newspaper. Тому зв'язок Advertises, з погляду сутності Property_for_Rent, також є зв'язком "один до багатьох” (1:М).
О
тже,
зв'язок Advertises є зв'язком типу 1:М и с
точки зору сутності Newspaper, і з погляду
сутності Property_for_Rent. Вона представлена
у виді двох зв'язків типу "один до
багатьох" (1:М), що разом утворять
зв'язок типу "багато хто до многим"
(M:N). Інакше кажучи, показник кардинальності
зв'язку Advertises дорівнює
M:N. ER-діаграма зв'язку Advertises між сутностями Newspaper і Property forJRent представлена на мал. 5.17. Кардинальність цього зв'язку підтверджується бізнес правилом, на основі якого вона була представлена. -