Діаграми «сутність-зв'язок» - самовчитель uml

Дана нотація була запропонована П. Ченом (P. Chen) в його відомій праці 1976 года [17] і отримала подальший розвиток в роботах Р. Баркера [16] (R. Barker). Діаграми «сутність-зв'язок» (ERD) призначені для графічного представлення моделей даних розробляється програмної системи і пропонують деякий набір стандартних позначень для визначення даних і відносин між ними. За допомогою цього виду діаграм можна описати окремі компоненти концептуальної моделі даних і сукупність взаємозв'язків між ними, що мають важливе значення для розроблюваної системи.

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

Прикладами сутностей можуть бути: банк, клієнт банку, рахунок клієнта, аеропорт, пасажир, рейс, комп'ютер, термінал, автомобіль, водій. Кожна з сутностей може розглядатися з різним ступенем деталізації і на різному рівні абстракції, що визначається конкретною постановкою завдання. Для графічного представлення сутностей використовуються спеціальні позначення (рис. 2.8).

Мал. 2.8. Графічні зображення для позначення сутностей

Зв'язок (relationship) визначається як відношення або деяка асоціація між окремими сутностями. Прикладами зв'язків можуть бути родинні стосунки типу «батько-син» або виробничі відносини типу «начальник-підлеглий». Інший тип зв'язків задається відносинами «мати у власності» або «мати властивість». Різні типи зв'язків графічно зображаються у формі ромба з відповідним ім'ям зв'язку з цим (рис. 2.9).

Мал. 2.9. Графічні зображення для позначення зв'язків

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

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

Мал. 2.10. Діаграма «сутність-зв'язок» для прикладу співробітників деякої компанії

Дещо інша ситуація складається в разі розгляду сутностей «співробітник» і «проект», і зв'язку «бере участь в роботі над проектом» (рис. 2.11). Оскільки в загальному випадку один співробітник може брати участь в розробці декількох проектів, а в розробці одного проекту можуть брати участь кілька співробітників, то даний зв'язок є багатозначною. Даний факт спеціально відбивається на діаграмі зазначенням букв "N" і "М" близько відповідних сутностей, при цьому вибір конкретних букв не є принциповим.

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

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

Діаграми «сутність-зв'язок» - самовчитель uml

Мал. 2.12. Діаграма «сутність-зв'язок» для загального прикладу компанії

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

Схожі статті