1 of 53

Бази даних �та інформаційні системисеместр 2

Проектування

реляційної бази даних

Лекції 6, 7, 8, 9

Лекція 1,2,3,4(практика)

2 of 53

Вступ

Підхід до проектування БД:

НИСХОДЯЧИЙ

Базова методологія:

ПОБУДОВА ER-ДІАГРАМИ

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

2

3 of 53

Етапи проектування бази даних (низхідний підхід)�

Процес проектування бази даних складається з трьох основних етапів:

  • концептуальне проєктування;
  • логічне проєктування;
  • фізичне проєктування.

Концептуальне (інфологічне) проектування БД

Концептуальне проектування бази даних - процес створення інформаційної моделі ПрО (концептуальної), яка не залежить від будь-яких фізичних аспектів її представлення

Зміст: Включає в себе визначення типів найважливіших сутностей та існуючих між ними зв'язків, атрибутів.

Опис:

  • Концептуальна модель даних створюється на основі інформації, записаної в специфікаціях вимог користувачів.
  • Концептуальне проєктування бази даних абсолютно не залежить від таких подробиць її реалізації:
    • типу обраної цільової СУБД,
    • використовуваних мов програмування,
    • обраної моделі організації даних,
    • типу обраної обчислювальної платформи, а також від будь-яких інших особливостей фізичної реалізації.
  • Під час розроблення концептуальну модель даних постійно тестують і перевіряють на відповідність вимогам користувачів.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

3

4 of 53

Логічне (даталогічне) проектуванняБД

Логічне проєктування бази даних - процес створення моделі ПрО на основі обраної моделі організації даних, але без урахування типу цільової СУБД та інших фізичних аспектів реалізації.

Опис:

  • Концептуальна модель даних, створена на попередньому етапі, уточнюється і перетворюється на логічну модель даних.
  • Логічна модель даних враховує особливості обраної моделі організації даних у цільовій СУБД (наприклад, реляційна модель).
  • На цьому етапі вже має бути відомо, яку СУБД буде використано як цільову - реляційну, мережеву, ієрархічну або об'єктно-орієнтовану.
  • Ігноруються всі інші характеристики обраної СУБД, наприклад, будь-які особливості фізичної організації її структур зберігання даних і побудови індексів.
  • У процесі розроблення логічна модель даних постійно тестується і перевіряється на відповідність вимогам користувачів до даних і забезпечення підтримки всіх необхідних користувачам транзакцій.
  • Для перевірки правильності логічної моделі даних використовується метод нормалізації
  • Створена логічна модель даних є джерелом інформації для етапу фізичного проектування
  • Логічна модель даних відіграє також важливу роль на етапі експлуатації та супроводу вже готової системи.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

4

5 of 53

Фізичне проектування бази даних

Фізичне проектування бази даних - опис способу фізичної реалізації логічної моделі бази даних

Опис:

  • на цьому етапі розглядають створення відносин, організацію файлів та індексів, призначених для забезпечення ефективного доступу до даних, а також усі пов'язані з цим обмеження цілісності та засоби захисту.

У разі РМД :

    • створення набору реляційних таблиць і обмежень для них на основі інформації, представленої в логічній моделі даних;
    • визначення конкретних структур зберігання даних і методів доступу до них (організація файлів, індексів), що забезпечують оптимальну продуктивність СУБД;
    • розробка засобів захисту створюваної системи.

Зауваження!

  • На етапах концептуального і логічного проєктування вирішується питання "ЩО РОБИТИ", а на етапі фізичного проєктування - "ЯК РОБИТИ".
  • Етапи виконуються послідовно, оскільки зрозуміти, що треба зробити, слід перш, ніж вирішити, як це зробити.
  • Етапи вимагають абсолютно різних навичок і досвіду, тому вимагають залучення фахівців різного профілю.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

5

6 of 53

Моделювання даних

Основні цілі моделювання даних полягають у:

  • спрощенні опису вимог до даних предметної області (ПрО) і процедур взаємодії цих даних;
  • єдиному розумінні вимоги до даних окремих користувачів і розробників;

Якщо обидві сторони знайомі з системою позначень, що використовується для створення моделі, то наявність моделі даних сприятиме більш плідному спілкуванню користувачів і розробників.

  • відображенні характеру самих даних незалежно від їхнього фізичного представлення;
  • використанні даних у межах області застосування програми.

На підприємствах широко застосовують засоби стандартизації для моделювання даних шляхом вибору певного методу моделювання та використання його в усіх проєктах розроблення бази даних.

Найпопулярніша технологія високорівневого моделювання даних побудована на концепції моделі "сутність-зв'язок"

(Entity-Relationship model - ER-модель).

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

6

7 of 53

Критерії оцінювання моделі даних

Оптимальна модель даних має задовольняти критеріям, переліченим у таблиці. Однак іноді ці критерії несумісні, тому доводиться йти на певний компроміс.

Наприклад, у гонитві за найбільшою виразністю моделі даних можна втратити її простоту.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

7

Критерій

Опис

Структурна достовірність

Відповідність способу визначення та організації інформації на цьому підприємстві

Простота

Зручність вивчення моделі як професіоналами в галузі розроблення інформаційних систем, так і звичайними користувачами

Виразність

Здатність представляти відмінності між даними, зв'язки між даними та обмеження

Відсутність надмірності

Виключення зайвої інформації, тобто будь-яка частина даних має бути представлена тільки один раз

Здатність до спільного використання

Відсутність приналежності до якогось особливого застосунку або технології і, отже, можливість використання моделі в багатьох застосунках і технологіях

Розширюваність

Здатність розвиватися і включати нові вимоги з мінімальним впливом на роботу вже існуючих додатків

Цілісність

Узгодженість зі способом використання та управління інформацією всередині підприємства

Схематичне представлення

Можливість представлення моделі за допомогою наочних схематичних позначень

8 of 53

Бази даних �та інформаційні системи

Концепції ER-моделі (ІТІНФ)

Лекція 2,3

9 of 53

Мої дані:

  • Яковлева Олена Володимирівна
  • доцент каф. Інформатики
  • т. раб. 7021-419
  • e-mail: helen.v.yakovleva@gmail.com
  • блог: http://infdbis.blogspot.com/

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

9

10 of 53

План лекції

Вступ

  1. Основні поняття
    1. Типи сутностей
    2. Атрибути
    3. Типи зв'язків
      • Ступінь типу зв'язку
      • Атрибути зв'язків
      • Рекурсивний зв'язок
  2. Структурні обмеження
    • Показник кардинальності
    • Ступінь участі
  3. Проблеми ER-моделювання
    • Пастка розгалуження
    • Пастка розриву

Висновок

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

10

11 of 53

Мета лекції:

  1. Розглянути основні поняття ER-моделі
  2. Ознайомитися з графічним відображенням основних понять ER-моделі
  3. Розглянути потенційні проблеми ER-моделювання

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

11

12 of 53

Вступ

  • Модель "сутність - зв'язок" (Entity-Relationship model або ER-модель) являє собою високорівневу концептуальну модель даних.
  • ER-модель розроблена Пітером Ченом (Chen) у 1976 році.

Мета:

  • Спрощення завдання проектування структури БД
  • Єдине розуміння ПрО замовниками та розробниками

Зауваження!

Концептуальна модель не залежить від:

  • моделі організації даних
  • конкретної СУБД або апаратної платформи

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

12

13 of 53

Концепції ER-моделі

Основні поняття

ER-моделі:

  • сутності;
  • атрибути;
  • зв'язку.

Рисунок 1.1 - Приклад схеми ER - моделі (нотація UML)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

13

14 of 53

Концепції ER-моделі

Рисунок 1.1 - Приклад схеми ER - моделі (нотація UML)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

14

Warehouse

IdProduct

Stock

1

8

2

100

3

45

4

20

5

30

6

2

7

4

8

5

9

0

15 of 53

Сутність

Тип сутності (entity type) - тип об'єкта або процесу (об'єкт/процес), що описує предметну область.

Сутність характеризується фізичним або абстрактним існуванням

Формального визначення немає, отже, різні розробники можуть виділяти різні сутності

Таблиця 1.1 - Приклади сутностей із фізичним та абстрактним існуванням

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

15

Фізичне існування

Абстрактне існування

Працівник

Огляд об'єкта нерухомості

Об'єкт нерухомості

Продаж об'єкта нерухомості

Клієнт

Візит до лікаря

Деталь

Видача книги

Постачальник

Заселення в готель

Читач бібліотеки

Ремонт автомобіля

16 of 53

Сутність

Екземпляр сутності - однозначно ідентифікований об'єкт, який належить до сутності певного типу

  • Кожен тип сутності має унікальний набір атрибутів.
  • Кожна окрема сутність має свої власні значення для кожного атрибута

Розрізняються:

Слабкий тип сутності - тип сутності, існування якого залежить від якогось іншого типу сутності (як первинний ключ або його частину використовують первинний ключ іншої сутності)

Сильний тип сутності - тип сутності, існування якого не залежить від якогось іншого типу сутності (як первинний ключ використовуються тільки власні атрибути цієї сутності)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

16

17 of 53

Способи представлень сутностей на діаграмі

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

17

Ім'я сутності

  • Сильний тип сутності

  • Слабкий тип сутності

Ім'я сутності

Рисунок 1.2 - Представлення на ER-діаграмі сильних і слабких типів сутностей

Проект

Етап проекту

Студент

Успішність

Угода

Товар

18 of 53

Атрибути

Атрибут - властивість типу сутності або типу зв'язку

Домен атрибута - набір допустимих значень одного або декількох атрибутів

Приклади: домен адреса - може бути доменом кількох атрибутів;

домен дата - може складатися з інших доменів (день, місяць, рік)

Атрибут може бути:

  • простим / складеним;
  • однозначним / багатозначним;
  • похідним;
  • ключовим

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

18

Атрибут

Опис

Приклад

простий�(атомарний)

складається з одного компонента з незалежним існуванням

Стать, Зарплата

складовий

складається з декількох компонентів із незалежним існуванням

Адреса / �Вулиця, Місто, Поштовий індекс

однозначний

містить одне значення для кожного екземпляра сутності певного типу

Для екземпляра сутності Кафедра існує одне значення атрибута Телефон

багатозначний

містить кілька значень для деяких екземплярів сутності певного типу

Для екземпляра сутності Кафедра існує кілька значень атрибута Телефон

похідний

представляє значення, похідне від значень інших атрибутів, що належать деякому (не обов'язково даному) типу сутності

1.Атрибути Рік_народження, Вік

2. Сутність Угода

Атрибути Початок, Закінчення, Термін дії

3. Атрибут Сума_угоди

4.Атрибут Кількість_студентів_у_групі

19 of 53

Атрибути. Ключі

Потенційний ключ - атрибут або мінімальний набір атрибутів, який однозначно ідентифікує кожен екземпляр сутності

Первинний ключ - потенційний ключ, який обраний для однозначної ідентифікації кожного екземпляра сутності

Складовий ключ - потенційний ключ, який складається з двох або більше атрибутів

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

19

20 of 53

Представлення атрибутів на діаграмах

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

20

Ім'я атрибуту

Ім'я 1

Ім'я 2

Ім'я 3

Ім'я 3

Ім'я атрибуту

Ім'я атриб

  • простий атрибут

  • складовий атрибут

  • похідний атрибут

  • багатозначний атрибут

  • первинний ключ

Ім'я атриб

21 of 53

Представлення атрибутів на ER-діаграмах

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

21

Кільк_ співробітників

Рисунок 1.3 - Подання на діаграмі сутностей Співробітник і Відділення

Адреса

Місто

Вулиця

Дім_Офіс

Відділення

Телефон

Номер_ відд

Назва_відд

Співробітник

ПІБ

Ном_співроб

Адреса

Посада

Телефон

Зарплата

22 of 53

Зв'язки

Тип зв'язку (relationship type) - осмислена асоціація між сутностями різних типів

Екземпляр зв'язку - однозначно ідентифікована асоціація, яка включає по одному екземпляру сутності з кожного типу сутності, що бере участь у зв'язку

Для вивчення окремих екземплярів зв'язку застосовується семантична мережа

Розглянемо тип зв'язку Має (Has), який представляє асоціацію між сутностями Відділення і Співробітник.�

Позначення:

∙ - екземпляр сутності;

∙ - екземпляр зв'язку.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

22

Зауваження!

В ER-моделі використовується вищий рівень абстракції порівняно із семантичною мережею, оскільки множини екземплярів сутностей об'єднуються в типи сутностей, а множини екземплярів зв'язків - у типи зв'язків.

23 of 53

Сематична модель

Рисунок 1.4 – Сематична мережа (модель) із зображенням окремих екземплярів зв'язку типу Має (Has)

Зауваження! Сематич. модель показує зв'язок між конкретними кортежами різних сутностей. ER модель показує зв'язки на рівні сутностей (має вищий рівень абстракції)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

23

Екземпляри

сутності

Відділення

Екземпляри

зв'язку

Має

Екземпляри

сутності

Співробітник

B1

B2

М1

М2

М3

С1

С2

С3

24 of 53

Представлення зв'язків на ER-діаграмах

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

24

Рисунок 1.5 - Подання на ER-діаграмі сильних сутностей Співробітник та Відділення, неідентифікуючого зв'язку Має між ними та атрибутів, які є первинними ключами

Відділення

Номер_ відд

Співробітник

Ном_співробіт

Ім'я зв'язку

Ім'я зв'язку

  • НЕідентифікуючий зв'язок�(між сильними сутностями)

  • ідентифікуючий зв'язок�(між сильною та слабкою сутностями)

Має (Has)

25 of 53

Ступінь типу зв'язку

Ступінь типу зв'язку - кількість типів сутностей, які охоплені цим зв'язком

Ступінь:

2 (бінарна)

3 (тернарна)

4 (кватернарна)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

25

Покупець

Менеджер

Об'єкт нерухомості

Фінансова організація

Угода

Рисунок 1.6 - Приклад кватернарного зв'язку Угода

26 of 53

Атрибути зв'язків

Зв'язки також можуть характеризуватися атрибутами

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

26

Рисунок 1.7 - Приклад зв'язку з атрибутами

ІН_Об'єкт

Дата

Коментарі

Об'єкт нерухомості

Клієнт

ІН_Клієнт

Подивився

27 of 53

Структурні обмеження

Структурні обмеження формуються на основі бізнес-правил, які, своєю чергою, формуються на основі вимог користувачів, описаних у специфікації.

Структурні обмеження:

  • кардинальність (кратність);
  • ступінь участі.

Кардинальність

Кардинальність - максимальна кількість можливих екземплярів сутності деякого типу, які можуть бути пов'язані з одним екземпляром сутності іншого типу за допомогою певного зв'язку

Найпоширенішими є бінарні зв'язки з показниками кардинальності:

  • "один до одного" (1:1)
  • "один до багатьох" (1:М)
  • "багато до багатьох" (М:N)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

27

28 of 53

Структурні обмеження

Ступінь участі - визначає, чи беруть участь у зв'язку всі або тільки деякі екземпляри сутності

2 варіанти участі:

  • повне (total) - для існування деякого екземпляра сутності потрібне існування екземпляра іншої сутності;
  • часткове (partial) - для існування деякого екземпляра сутності НЕ потрібне існування екземпляра іншої сутності;

Зауваження!

Під час визначення показника кардинальності слід враховувати тільки ті екземпляри сутності, які охоплюються цим зв'язком.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

28

- повна /обов'язкова участь

- часткова / необов'язкова участь

29 of 53

Кардинальність, ступінь участі

Зв'язок "один до одного"

Зліва направо: із семантичної моделі випливає, що один екземпляр сутності типу Співробітник пов'язаний з одним екземпляром сутності типу Відділення (1:1),

Справа наліво: Один екземпляр сутності типу Відділення пов'язаний з одним екземпляром сутності типу Співробітник (1:1).

Отже, зв'язок Керує є зв'язком "один до одного"

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

29

Відділення

Співробітник

Керує

1

1

Екземпляри

сутності

Співробітник

Екземпляри

зв'язку

Керує

Екземпляри

сутності

Відділення

В1

В2

К1

К2

С1

С3

С2

Рисунок 1.8 - Приклад зв'язку 1:1

30 of 53

Кардинальність, ступінь участі

Зв'язок "один до багатьох"

Зліва направо: із семантичної моделі випливає, що один екземпляр сутності типу Відділення пов'язаний із багатьма екземплярами сутності типу Співробітник (1:М);

Справа наліво: один екземпляр сутності типу Співробітник пов'язаний з одним екземпляром сутності типу Відділення (1:1).

Отже, зв'язок Має є зв'язком "один до багатьох" (ВИБИРАЄТЬСЯ МАКСИМАЛЬНИЙ ПОКАЗНИК! )

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

30

Екземпляри

сутності

Відділення

Екземпляри

зв'язку

Має

Екземпляри

сутності

Співробітник

В1

В2

М1

М2

М3

С1

С2

С3

С4

Співробітник

Відділення

Має(Has)

1

М

Рисунок 1.9 - Приклад зв'язку 1:М

31 of 53

Кардинальність, ступінь участі

Зв'язок "багато до багатьох" (РМД - не підтримує)

Зліва направо: із семантичної моделі випливає, що один екземпляр сутності типу Газета пов'язаний із багатьма екземплярами сутності типу Об'єктНерухомості (1:М);

Справа наліво: один екземпляр сутності типу Об'єктНерухомості пов'язаний з одним екземпляром сутності типу Газета (1:М).

Отже, зв'язок Друк є зв'язком "багато до багатьох" (М:N) (ВИБИРАЄТЬСЯ МАКСИМАЛЬНИЙ ПОКАЗНИК! )

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

31

Екземпляри

сутності

Газета

Екземпляри

зв'язку

Друк

Екземпляри

сутності

Об'єктНерухомості

Г1

Г2

Д1

Д2

Д3

О1

О2

О3

О4

Об'єкт

Газета

Друк

М

N

Рисунок 1.10 - Приклад зв'язку М:М

Г3

Д4

32 of 53

Кардинальність (кратність) складного зв'язку

Кардинальність (кратність) складного зв'язку - кількість екземплярів сутності певного типу в n-арному зв'язку, що визначається після фіксації (n-1) значень.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

32

Рисунок 1.11 - Кардинальність тристороннього зв'язку

Покупець

Менеджер

Об'єкт нерухомості

Угода

M

1

1

33 of 53

Міграція атрибутів. Розкриття схеми �(неідентифікуючий зв'язок)

Розкриття схеми:

Відділення (Номер_відд, Назва_відд, Адреса)

Співробітник (Номер_співроб, ПІБ, Номер_відд (FK), Посада, Зарплата, Адреса, Телефон)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

33

Рисунок 1.12 - Представлення на діаграмі сутностей Співробітник і Відділення, їхніх атрибутів і зв'язку між ними

Адреса

Відділення

Номер_ відд

Назва_відд

ПІБ

Співробітник

Номер_ співроб

Адреса

Посада

Телефон

Зарплата

Має

1

М

34 of 53

Міграція атрибутів. Розкриття схеми �(ідентифікуючий зв'язок)

Бізнес-правила (варіант А):

  • Наше підприємство може виконувати одночасно декілька проєктів
  • Фінансування виділяється на кожен етап проєкту
  • Етапи мають унікальний номер у рамках проєкту

Фрагмент документа "Відомості про проєкти"

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

34

Номер

проєкту

Назва проєкту

Номер

етапу

Дата початку

етапу

Дата закінчення етапу

Вартість етапу

дол.

098

Розробка ІС "Банк"

.

1

02.10.2022

02.02.2023

40 000

2

03.02.2023

03.01.2024

100 000

097

Розробка ІС "Торговельне підприємство"

1

02.02.2022

02.05.2023

50 000

2

03.05.2023

20.12.2023

70 000

099

Розробка сайту "Адміністрація президента"

1

02.05.2022

02.06.2023

70 000

2

03.06.2023

12.11.2023

50 000

3

13.11.2022

31.12.2023

60 000

 

..........

 

...........

..........

........

35 of 53

Міграція атрибутів. Розкриття схеми �(ідентифікуючий зв'язок)

Розкриття схеми:

Проект (Номер_проєкту, Назва_проєкту)

Етап (Номер_етапу, Номер_проєкту (FK), Дата_нач_епату, Дата_зак_етапу, Вартість)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

35

Рисунок 1.13 - Представлення на діаграмі сутностей Проект і Етап, їхніх атрибутів і зв'язку між ними

Вартість

Етап

Номер_ етапу

Дата_нач_етапу

Дата_зак_етапу

Проект

Номер_ проєкту

Назва_проєкту

Складається з

1

М

36 of 53

Міграція атрибутів. CASE система ERwin�(ідентифікуючий зв'язок)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

36

37 of 53

Міграція атрибутів. Розкриття схеми �(неідентифікуючий зв'язок)

Бізнес-правила (варіант Б):

  • Наше підприємство може виконувати одночасно кілька проєктів
  • Фінансування виділяється на кожен етап проєкту
  • Етапи мають унікальний номер у межах усього підприємства

Фрагмент документа "Відомості про проєкти"

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

37

Номер

проєкту

Назва проєкту

Номер

етапу

Дата початку

етапу

Дата закінчення етапу

Вартість етапу

дол.

098

Розробка ІС "Банк"

.

3

02.10.2022

02.02.2023

40 000

4

03.02.2023

03.01.2024

100 000

097

Розробка ІС "Торговельне підприємство"

1

02.02.2022

02.05.2022

50 000

5

03.05.2023

20.12.2023

70 000

099

Розробка сайту "Адміністрація президента"

2

02.05.2022

02.06.2023

70 000

6

03.06.2023

12.11.2023

50 000

7

13.11.2023

31.12.2024

60 000

 

..........

 

...........

..........

........

38 of 53

Міграція атрибутів. Розкриття схеми �(неідентифікуючий зв'язок)

Розкриття схеми:

Проект (Номер_проєкту, Назва_проєкту)

Етап (Номер_етапу, Номер_проєкту (ВК), Дата_нач_епату, Дата_зак_етапу, Вартість)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

38

Рисунок 1.14 - Представлення на діаграмі сутностей Проект і Етап, �їхніх атрибутів і зв’язку між ними

Вартість

Етап

Номер_ етапу

Дата_нач_етапу

Дата_зак_етапу

Проєкт

Номер_ проєкту

Назва_проєкту

Складається з

1

М

39 of 53

Міграція атрибутів. CASE система ERwin�(неідентифікаційний зв'язок)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

39

40 of 53

Альтернативний варіант позначень �структурних обмежень

Використання відображень максимальних (Max) і мінімальних (Min) значень у вигляді напису (Min,Max)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

40

Рисунок 1.15 - Варіанти позначень структурних обмежень

Співробітник

Відділення

Має

1

М

Співробітник

Відділення

Має

(0:1)

(1:M)

41 of 53

Рекурсивний зв'язок

Рекурсивний зв'язок - зв'язок, у якому одні й ті самі сутності беруть участь кілька разів і в різних ролях (зовнішній ключ посилається на первинний своєї сутності)

Використання рольових імен

Зв'язкам можуть привласнювати рольові імена для вказівки призначення кожної сутності, що бере участь у цьому зв'язку.

Розкриття схеми:

Співробітник (Номер_спіроб, ПІБ, Посада, Зарплата, Адреса, Телефон, Консультант (FK))

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

41

Консультує

Рисунок 1.16 - Приклад кватернарного зв'язку Угода

ПІБ

Співробітник

Номер_ співроб

Адреса

Посада

Телефон

Зарплата

Співробітник-консультант

Співробітник-консультант

1

N

42 of 53

Використання рольових імен

Рольові імена можуть також використовуватися, коли сутності пов'язані кількома зв'язками.

Розкриття схеми:

Відділення (Номер_відд, Назва_відд, Адреса, Номер_співробітника (FK))

Співробітник (Номер_сотр, ПІБ, Номер_відд (ВК), Посада, Зарплата, Адреса, Телефон)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

42

Має

Рисунок 1.17 - Використання рольових імен

ПІБ

Співробітник

Номер_ співроб

Адреса

Посада

Телефон

Зарплата

Адреса

Відділення

Номер_ відд

Назва_відд

Керує

Відділення

Відділення

Працівник

Керівник

1

1

М

1

43 of 53

Проблеми ER-моделювання (пастки з'єднання)

Два основні типи потенційних пасток з'єднання:

  • пастка розгалуження;
  • пастка розриву.

Завжди важливо перевіряти модель даних на наявність потенційних пасток з'єднання, оскільки наявність пасток може призвести до перебудови всієї концептуальної моделі.

При недостатньому розумінні суті встановлених зв'язків можна побудувати модель, яка не буде істинним представленням реального світу.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

43

44 of 53

Проблеми ER-моделювання. �Пастка розгалуження

Опис:

Має місце в тому випадку, коли модель відображає зв'язок між типами сутностей, але шлях між окремими сутностями цього типу визначено неоднозначно.

Причина виникнення (вірогідність):

Розгалуження двох або більше зв'язків типу 1:М з однієї сутності.

Приклад.�ПО "Новобудови Харкова" (БП):

  • В одній будівельній компанії реалізуються кілька проєктів, �кожен проєкт реалізується тільки однією компанією;
  • В одній будівельній компанії працює кілька архітекторів, �кожен архітектор працює тільки в одній компанії;
  • Проєкт розробляється одним архітектором, �архітектор може розробляти багато проєктів.

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

44

45 of 53

Проблеми ER-моделювання. �Пастка розгалуження

Проблема: Який проєкт розробляє який архітектор?

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

45

Архітектор

Будівельна компанія

Має

1

М

Проект

Розробляє

1

М

Рисунок 1.18 - Приклад пастки розгалуження

Екземпляри

сутності

Буд. комп.

Екземпляри

зв'язку

Має

Екземпляри

сутності

Архітектор

Б1

Б2

М1

М2

А1

А2

А3

М3

Р2

Р1

Р4

Р3

Екземпляри

зв'язку

Розробляє

Екземпляри

сутності

Проект

П1

П2

П3

П4

Причина проблеми:

Із сутності БудКомпанія розгалужуються два зв'язки типу 1:М

46 of 53

Проблеми ER-моделювання. �Пастка розгалуження (розв'язання проблеми)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

46

Проєкт

Архітектор

Має

1

М

Будівельна компанія

Розробляє

1

М

Рисунок 1.19 - Приклад перетворення ER-моделі з метою усунення пастки розгалуження

Розв'язання проблеми:

Перебудова ER-моделі для представлення правильної взаємодії між сутностями

Екземпляри

сутності

Архітектор

Екземпляри

зв'язку

Розробляє

Екземпляри

сутності

Проєкт

Б1

Б2

М1

М2

А1

А2

А3

Р2

Р1

Р4

Р3

Екземпляри

зв'язку

Має

Екземпляри

сутності

Буд. комп.

П2

П3

П4

П1

М3

47 of 53

Проблеми ER-моделювання. �Пастка розриву

Опис:

З'являється в тому разі, коли в моделі передбачається наявність зв'язку між типами сутностей, але не існує шляху між окремими сутностями

Причина виникнення:

Наявність зв'язку з частковою участю, що утворює розрив між пов'язаними сутностями.

Приклад.�ПО "Агентство нерухомості" (БП):

  • Кожен об'єкт нерухомості закріплений за відділенням (продається тільки одним відділенням), за одним відділенням закріплено багато об'єктів;
  • Один співробітник агентства (менеджерами з продажу) займається багатьма об'єктами нерухомості, проте існують співробітники, які за об'єкти не відповідають.
  • За об'єкт нерухомості відповідає тільки один співробітник (менеджер), �проте не кожен об'єкт має співробітника, що за нього відповідає (тобто об'єкт тимчасово може бути не в роботі або з ним може працювати будь-який менеджер з продажу);

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

47

48 of 53

Проблеми ER-моделювання. �Пастка розриву

Проблема: Який об'єкт приписаний за яким відділенням?

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

48

Об'єкт нерухомості

Співробітник

Відповідає за

1

М

Відділення

Має

М

1

Рисунок 1.20 - Приклад пастки розриву

Екземпляри

сутності

Співробітник

Екземпляри

зв'язку

Відповідає за

Примірники

сутності

Об'єктНерухомісті

С1

С3

ВЗ1

ВЗ2

О1

О2

О3

ВЗ3

М2

М1

М4

М3

Екземпляри

зв'язку

Має

Екземпляри

сутності

Відділення

В1

В2

Причина проблеми:

Часткова участь сутностей Співробітник і Об'єктНерухомості у зв'язку Курирує

С2

С4

О4

49 of 53

Проблеми ER-моделювання. �Пастка розриву (розв'язання проблеми)

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

49

Об'єкт нерухомості

Співробітник

Відповідає за

1

М

Відділення

Має

М

1

Рисунок 1.21 - Перероблена діаграма з метою усунення пастки розриву

Розв'язання проблеми:

Введення відсутнього зв'язку Продає

Продає

1

М

Екземпляри

сутності

Співробітник

Екземпляри

зв'язку

Відповідає за

Екземпляри

сутності

Об'єктНерухомісті

С1

С3

ВЗ1

ВЗ2

О1

О2

О3

М2

М1

М4

М3

Екземпляри

зв'язку

Має

Екземпляри

сутності

Відділення

В1

В2

ВЗ3

С2

С4

О4

П1

П2

П3

Екземпляри

зв'язку

Продає

П4

50 of 53

Питання

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

50

51 of 53

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

51

Приклад. Предметна область В-01 "Облік автомобілів, що здаються в оренду" (складн.1)

Варіант 1.

БП:

1. У власника може бути більше одного автомобіля

2. Автомобіль належить одному постійному власнику

3. Номер кузова автомобіля унікальний

4. Орендар може орендувати конкретний автомобіль в одну дату тільки один раз, але може взяти в ту саму дату інший автомобіль.

5. Орендна плата визначається в момент здачі автомобіля в оренду (не постійна)

Рисунок - Дан фрагмент документа "Облік автомобілів, зданих в оренду"

Варіант 2.

БП:

1. У власника може бути більше одного автомобіля

2. Автомобіль належить одному постійному власнику

3. Номер кузова автомобіля унікальний

4. Орендар може в одну дату брати в оренду тільки 1 автомобіль

5. Орендна плата автомобіля постійна

Номер, назва організації -

власника

Адреса організації -

власника

Модель транспортного засобу

Номер кузова

Орендна плата

Дата початку -

закінчення оренди

Номер, П.І.Б.

орендаря

Адреса орендаря

ТБ23, ПП "Авто"

пров. Світлий 64

ВАЗ-2101

3475637737

700

10.05.2023-10.06.2023

14, Іванов А.В.

вул. Пушкінська 34.

ТБ6, ПП "Автотранс"

пр. Свободи 7

BMW-535

ВАЗ-2101

3485929329

3534564565

4500

6000

11.05.2023-15.10.2023

16.05.2023-17.12.2023

6, Петров С.І.

1, Сидоров В.В.

вул. Сумська 23

вул. Леніна 42

.........

.........

.........

.........

.........

.........

.........

.........

52 of 53

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

52

Приклад. Предметна область В-02 "Друк літератури та розподіл по бібліотеках міста" (складн.1,5)

Варіант1

БП:

1. У Бібліотеці знаходяться безліч Видань.

2.Одне Видання може перебувати в декількох Бібліотеках.

3. В одного Видання може бути більше одного Автора.

4. Деякі Видання можуть бути відсутні в Бібліотеках міста.

5а. Видання видається в 1 Видавництві, у Видавництві багато Видань.

Рисунок -Даний фрагмент документа "Друк літератури і розподіл по бібліотеках міста"

Номер, назва бібліотеки

Адреса бібліотеки

Тип видання

Номер, найменування видання

Код, ПІБ автора

Номер, назва видавництва

Рік видання

Кількість сторінок

1. Ім. Короленка

вул. Короленка 4

Журнал

78. За кермом

 

5. К: За кермом

2021

45

Монографія

112.Вступ до систем баз даних

9.К. Дж. Дейт

77. М: Вид. дім Вільямс

2001

1072

Збірник статей

13.Моделювання систем

4.Яковлєв С.А.

1. М: Вищ. шк.

2005

150

Монографія

6. Моделювання систем

1.Совєтов Б.Я.

4.Яковлєв С.А.

90. К:Фоліо

2010

270

8. НТУ "ХПІ"

вул. Фрунзе 22

Монографія

6. Моделювання систем

1.Совєтов Б.Я.

4. Яковлєв С.А.

90. К:Фоліо

2010

270

.........

.........

.........

.........

.........

.........

.........

.........

53 of 53

ХНУРЕ кафедра Інформатики доц. Яковлева О.В.

53

Приклад. Предметна область В-02 "Друк літератури та розподіл по бібліотеках міста"

(складн.2,5)

БП (Варіант 2):

1.У Бібліотеці знаходяться безліч Видань.

2.Одне Видання може перебувати в декількох Бібліотеках.

3. В одного матеріалу (рукопису) може бути більше одного Автора. Автор може писати більше одного матеріалу (рукопису).

4. Деякі Видання можуть бути відсутні в Бібліотеках міста.

5б. Матеріал (рукопис) може перевидаватися (не частіше ніж 1 раз на рік), може перевидаватися в різних видавництвах.

Рисунок -Даний фрагмент документа "Друк літератури і розподіл по бібліотеках міста"

Номер, назв. бібліотеки

Адреса бібліотеки

Тип видання

Номер, найменування матеріалу (рукопису)

Код, ПІБ автора

Рік рукопису

Рік видання

Номер, назва видавництва

Кількість сторінок у виданні

1. Ім. Короленка

вул. Короленка 4

Журнал

78. За кермом

 

1990

1990

65. К: За кермом

45

Монографія

112.Вступ до систем баз даних

9.К. Дж. Дейт

2001

2001

2004

77. М: Вид. дім Вільямс

77. М: Вид. дім Вільямс

1072

1100

Збірник статей

13.Моделювання систем

4.Яковлєв С.А.

1985

1985

1. М: Вищ. шк.

150

Монографія

6. Моделювання систем

1.Совєтов Б.Я.

4.Яковлєв С.А.

1982

1982

1990

90. К:Фоліо

1. М: Вищ. шк.

270

285

8. НТУ "ХПІ"

вул. Фрунзе 22

Монографія

6. Моделювання систем

1.Совєтов Б.Я.

4.Яковлєв С.А.

1982

1982

 

90. К:Фоліо

 

270

.........

.........

.........

.........

.........

.........

.........

 

.........