Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

PrIS

.pdf
Скачиваний:
45
Добавлен:
07.12.2018
Размер:
7.24 Mб
Скачать

131

Символи ERD, які подають сутності і зв’язки, наведені на рис. 8.1.

Рис. 8.1. Символи ERD в нотації Чена.

Незалежна сутність подає незалежні дані, які завжди присутні в системі. При цьому зв’язки з іншою сутністю можуть як існувати, так і бути відсутніми. Своєю чергою, залежна сутність подає дані, залежні від іншої сутності в системі. Тому вона повинна завжди мати зв’язки з іншою сутністю. Асоціативна сутність подає дані, які асоціюються зв’язками між двома і більше сутностями.

Необмежений зв’язок – це безумовне відношення, тобто відношення, яке завжди існує доти, поки існують екземпляри сутностей, що входять у зв’язок. Обмежений зв’язок – це умовне відношення між сутностями. Суттєвообмежений зв’язок використовується тоді, коли відповідна сутність взаємно-залежна в системі.

Для ідентифікації вимог, відповідно до яких сутність залучається до зв’язку, використовуються типи зв’язків. Практика показала, що достатньо використовувати такі типи зв’язків:

а) 1:1 (один-до-одного): зв’язок цього типу використовується, як правило, на верхніх рівнях ієрархії моделі даних, а на нижніх рівнях зустрічається порівняно рідко;

132

б)1:N (один-до-багатьох): зв’язок цього типу найчастіше використовується;

в) N:M (багато-до-багатьох): зв’язок цього типу зазвичай використовується на ранніх етапах проектування з метою прояснення ситуації.

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

Наведемо приклад ERD для предметної області «Обслуговування банкоматів» (рис. 8.2).

Рис. 8.2. ERD обслуговування банкомату.

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

8.2. Діаграма атрибутів

Деталізація сутності здійснюється з використанням діаграм атрибутів, які розкривають асоційовані з сутністю атрибути. Діаграма атрибутів складається з сутності, що

133

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

Діаграма атрибутів обслуговування банкомату подана на рис. 8.3.

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

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

Рис. 8.3. Діаграма атрибутів обслуговування банкомату.

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

8.3. Діаграма категоризації

134

Для демонстрації декомпозиції сутності на категорії використовуються діаграми категоризації. Така діаграма містить загальну сутність, дві і більше сутностейкатегорій і спеціальний вузол-дискримінатор, який описує способи декомпозиції сутності (рис. 8.4).

Рис. 8.4. Діаграма категоризації.

Існують 4 можливих типи дискримінатора (рис.8.5).

Рис. 8.5. Типи дискримінаторів.

1. Повне і обов'язкове входження E/M (exclusive/mandatory) – сутність має бути однією і лише однією із вказаних категорій. Для прикладу на рис. 8.5 це

135

означає, що адміністративною одиницею є країна, або область, або місто, або адміністративний центр.

2.Повне і необов'язкове входження E/O (exclusive/optional) – сутність може бути однією і лише однією з належних категорій. Це означає, що адміністративною одиницею є країна, або область, або місто (або районний центр).

3.Неповне і обов'язкове входження I/M (inclusive/mandatory) – сутність повинна бути принаймні однією з указаних категорій. Це припускає на додаток до першого типу задавати наступну ситуацію: адміністративна одиниця є одночасно і містом і адміністративним центром.

4.Неповне і необов'язкове входження I/O (inclusive/optional) – сутність може бути принаймні однією з указаних категорій. На додаток до другого типу адміністративна одиниця, крім того, що це місто є і ще районним центром.

8.4.Обмеження діаграм сутність-зв’язок

Розглянемо як простий приклад ситуацію, яка описується двома сутностями: "Співробітник" і "Компанія". Як зв'язок природно використовувати відношення належності співробітника до компанії. Якщо врахувати міркування про те, що в компанії працюють декілька співробітників, і ці співробітники не можуть бути працівниками інших компаній, то така інформація може подаватися графічно у вигляді такої діаграми "сутність-зв'язок" (рис. 8.6). На цьому рисунку ліетра "N" біля зв'язку означає той факт, що в компанії можуть працювати більше ніж один співробітник, при цьому значення N заздалегідь не фіксується. Цифра "1" на

136

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

Рис. 8.6. Діаграма "сутність-зв'язок" для прикладу співробітників деякої компанії.

Трохи інша ситуація спостерігається у разі розгляду сутності "співробітник" і "проект", і зв'язком "бере участь в роботі над проектом" (рис. 8.7). Оскільки, в загальному випадку, один співробітник може брати участь в розробленні декількох проектів, а в розробленні одного проекту можуть брати участь декілька співробітників, то такий зв'язок є багатозначним. Цей факт спеціально задається на діаграмі вказанням літер "N" і "М" біля відповідної сутності, при цьому вибір конкретних літер не є принциповим.

Рис. 8.7. Діаграма "сутність-зв'язок" для прикладу співробітників, що беруть участь в роботі над проектами.

Розглянуті дві діаграми можуть бути об'єднані в одну, на якій буде подана інформація про співробітників компанії та проекти цієї компанії (рис. 8.8). При цьому

137

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

Примітка

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

Обмеженість ERD виявляється під час конкретизації концептуальної моделі в детальніші подання модельованої програмної системи, які окрім статичних зв'язків повинні містити інформацію про поведінку або функціонування окремих її компонентів. Для цих цілей в рамках ССА використовуються діаграми потоків даних.

Рис. 8.8. Діаграма "сутність-зв'язок" для загального прикладу компанії.

 

 

138

 

 

Таблиця 8.1. Об’єкти ERD у різних методологіях.

Незале

Чена

Баркера

SADT

SAG

 

 

 

 

жна

 

 

 

 

сутніст

 

 

 

 

ь

 

 

 

 

Залежн

 

 

 

 

а

 

 

 

 

сутніст

 

 

 

 

ь

 

 

 

 

Зв'язок

 

 

 

 

Арність

 

 

 

 

зв’язків

 

 

 

 

:

 

 

 

 

1:1

 

 

 

 

1:N

 

 

 

 

N:N

 

 

 

 

Можли-

так

вість

 

 

 

 

під-

 

 

 

 

тримки

 

 

 

 

ієрархіч

 

 

 

 

ності

 

 

 

 

зв’язків

 

 

 

 

Необов

 

 

 

 

’язкови

 

 

 

 

 

 

139

 

 

й

 

 

 

 

зв’язок

 

 

 

 

Категор

 

 

 

S

изація

...

...

 

...

...

сутност

 

 

 

 

і

 

 

 

 

Відобра

PK-

i

ження

 

 

первинний

 

ключо-

 

 

FK-

 

вих

 

 

зовнішній.

 

атрибут

 

 

 

 

ів

 

 

 

 

Можли-

так

так

так

вість

 

 

 

 

авто-

 

 

 

 

матичн

 

 

 

 

ої

 

 

 

 

генерац

 

 

 

 

ії схеми

 

 

 

 

8.5. Методологія IDEF1

 

 

Метод IDEF1, розроблений Т.Ремей (T.Ramey), також заснований на підході П.Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі в третій нормальній формі. На сьогодні на основі вдосконалення методології IDEF1 створена її нова версія

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

CASE-засобами (зокрема, ERwin, Design/IDEF) (будуть розглянуті у наступних розділах).

140

Сутність у методології IDEF1X є незалежною від ідентифікаторів або просто незалежною, якщо кожен екземпляр сутності може бути однозначно ідентифікований без визначення його зв’язків з іншою сутністю. Сутність називається залежною від ідентифікаторів або просто залежною, якщо однозначна ідентифікація екземпляра сутності залежить від його зв’язку з іншою сутністю.

Кожній сутності присвоюється унікальна назва і номер, що розділяються похилоюю рискою "/" і розміщується над блоком.

Зв'язок може додатково визначатися за допомогою вказання міри або потужності (кількості екземплярів сутності-нащадка, яка може існувати для кожного екземпляра сутності-батька). У IDEF1X можуть бути виражені наступні типи зв'язків:

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

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

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

кожен екземпляр сутності-батька пов'язаний з деякою фіксованою кількістю екземплярів сутності-нащадка.

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