Етапи проектування бази даних. Побудова концептуальної моделі предметної області

Лекція № 11 (2 години)

Тема «Етапи проектування бази даних. Побудова концептуальної моделі предметної області»

Мета: знати 3 етапи, які використовуються при проектуванні бази даних та навчитися створювати високорівневу концептуальну модель даних «Сутність – зв'язок» .

Література

«Бази даних. Проектування, реалізація та супровід. Теорія та практика» -Т. Конолі, К. Бегг, А. Строчан Москва, СПб., Київ. 2000 р.

«Бази даних: основи, проектування, використання» - Малихіна М. П. СПб. 2004р.

«Організація баз даних та знань» - Пасічник В. В., Резніченко В. А., Київ, 2006 р.

«Системы баз данных. Полный курс» - Г. Гарсия Молина, Москва: Вильямс, 2003р.

«Бази даних. Моделі, розробка, реалізація» - Карпов Т., СПб. 2001 р.

Хід заняття

І. Організаційний момент

а) готовність групи до заняття;

б) перевірка присутніх.

ІІ. Актуалізація опорних знань студентів

а) повідомлення теми та мети заняття;

б) повідомлення девізу, під яким будете працювати;

в) відповіді на запитання.

ІІІ. Виклад нового матеріалу

План

  1. Етапи проектування БД.
  2. Концептуальна модель даних або модель «Сутність – зв'язок».
  3. Побудова ER-діаграм.

ІV. Узагальнення та систематизація знань.

V. Підведення підсумків заняття.

VІ. Домашнє завдання: вивчити матеріал лекції, знати відповіді на такі питання лекції:

Які етапи виділяють в процесі проектування БД?

Яке призначення мають етапи проектування БД?

Для чого призначена модель «Сутність – зв’язок»?

Що є головними поняттями моделі «Сутність-зв’язок»?

Що таке «сутність»? Навести приклади сутностей.

Які існують типи сутностей? Як вони зображуються на діаграмах?

Що таке «атрибут»? Навести приклади атрибутів.

Які існують типи атрибутів? Як вони зображуються на діаграмах?

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

Для чого потрібні зв’язки між сутностями? Навести приклади зв’язків.

Як зображуються на діаграмах зв’язки?

Кількість сутностей,охоплених зв’язком – це .....? Продовжити визначення.

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

В процесі проектування БД часто виділяють три етапи.

Етап 1. Побудова концептуальної моделі предметної області

В рамках цього этапу досліджується предметна область – частина реального світу, для якої створюється БД. Вивчаються інформаційні потреби користувачів, виявляються інформаційні об’єкти та зв’язки між ними. Виходячи з отриманої інформації будується концептуальна модель предметної області, незалежна від моделі даних та програмих засобів (включаючи СКБД).

Етап 2. Логічне проектування – перетворення створенної концептуальної моделі в концептуальну схему, яка реалізується конкретною СКБД

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

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

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

Розглянемо більш детально кожен з етапів.

Побудова концептуальної моделі предметної області

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

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

Розглянемо деякі засоби концептуального моделювання.

ER-модель

ER-модель (Entity-Relationship – сутність - зв'язок) була запропонована П. Ченом в 1976 р. Інформація про зміст предметної області в межах моделі зображується в структурованому графічному вигляді (ER-діаграма).

ER-модель (Entity Relationship model) або модель «Сутність – зв’язок» – це високорівнева концептуальна модель даних, яка була розроблена з метою спрощування задач проектування баз даних. Ця модель даних являє собою набір концепцій, які описують структуру бази даних та пов’язані з нею транзакції оновлення та вилучення даних.

Для ER-моделі не існує єдиної стандартизованої системи позначень, тому характеристики ER-діаграм можуть дещо відрізнятися.

Головними поняттями моделі «Сутність - зв’язок» вважаються сутності, атрибути та зв’язки.

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

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

Під екземпляром сутності розуміється конкретний об’єкт.

На ER-діаграмі сутність зображується прямокутником, в якому вказане його ім’я.

Типи сутностей можна класифікувати як сильні та слабкі.

Слабкий тип сутності - тип сутності, існування якого залежить від якого-небудь іншого типу сутності.

Сильний тип сутності - тип сутності, існування якого не залежить від якого-небудь іншого типу сутності.

Наприклад, сутність «Родичі» є сутністю слабкого типу, яка надає відомості про родичів співробітника. Сутність «Родичі» не може існувати в цій моделі без наявності сутності «Співробітники».

Прикладами сильних сутностей є сутності «Співробітники» та «Відділення».

Слабкі типи сутностей іноді називають дочірніми (child), залежними (dependent) або підпорядкованими (subordinate), а сильні типи сутностей - батьківськими (parent), сутностями-володорями (owner) або домінантними сутностями (dominant).

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

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

Атрибути, які однозначно ідентифікують сутність, називаються ключовими атрибутами.

Ключові атрибути на ER-діаграмі підкреслюються.

В деяких ситуаціях з декількох простих атрибутів може бути сформований складений.

Атрибути поділяються на прості та складові.

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

Прості атрибути не можуть бути розподілені на більш дрібні компоненти. Прикладами є атрибути статі («Ч» або «Ж») або «ЗП співробітника».

Прості атрибути іноді називають атомарними.

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

Деякі атрибути можуть бути розподілені на більш дрібні компоненти, які характеризуються незалежним існуванням. Наприклад, атрибут «Адреса» сутності «Відділення» зі значенням «Одеса, вул. Гер. Сталинграда 14, Суворівський, 65120, 568247» може бути розподілений на окремі атрибути «Місто» зі значенням «Одеса», «Вулиця» - зі значенням «Гер. Сталинграда 14», «Район» - зі значенням «Суворівський», «Поштовий індекс» - зі значенням «65120» та «Телефон» – зі значенням «568247».

На рисунку зображені атрибути, які пов’язані з сутностями «Співробітники» та «Відділення».

Сутність «Співробітники»

Якщо атрибут є складовим, його атрибути-компоненти зображуються у вигляді еліпсів, які приєднюються до нього (атрибут «Ім’я» сутності «Співробітники» є складовим атрибутом, який складається з атрибутів «Прізвище», «Ім’я», «По-батькові»).

Ім’я атрибуту, який є первинним ключем цього типу сутності, підкреслюється.

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

На рисунку взаємозв’язок між сутностями «Відділення» та «Співробітники» зображений за допомогою зв’язка «Приписаний до», а між сутностями «Родичі» та «Співробітники» - за допомогою зв’язка «Відноситься до», який зображений у вигляді ромбу з подвійним контуром та вказує на те, що він встановлений між слабкою (сутність «Родичі») та сильною (сутність «Співробітники») сутностями.

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

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

Ступінь зв’язка – кількість сутностей, які охоплені цим зв’язком.

Охоплені деяким зв’язком сутності мають назву участники цього зв’язка.

Кількість учасників деякого зв’язка має назву ступінь цього зв’язку. Тобто, ступінь зв’язка вказує на кількість типів сутностей, охоплених цим зв’язком.

Зв’язок зі ступнем 2 називається бінарним, зі ступенем 3 – тернарним, зі ступенем 4 – кватернарним.

Попередній приклад є прикладом тернарного зв’язка (приймають участь 3 типи сутності: «Співробітники», «Відділення» та «Родичі»).

Етапи проектування бази даних. Побудова концептуальної моделі предметної області