Друга фаза аналізу предметної області полягає у виборі інформаційних об'єктів, завданні необхідних властивостей для кожного об'єкта, виявленні зв'язків між об'єктами, визначенні обмежень, що накладаються на інформаційні об’єкти, типи зв'язків між ним, характеристики інформаційних об'єктів.
При виборі інформаційних об’єктів необхідно відповісти на низку питань:
1. На які таблиці можна розбити дані, які повинні зберігатися в БД?
2. Яке ім'я можна привласнити кожній таблиці?
3. Які найбільш цікаві характеристики (з точки зору користувача) можна виділити?
4. Які імена можна привласнити обраним характеристикам?
В нашому випадку передбачається завести наступні таблиці (рис. 9.22):
Школа
Клас
Предмети
Учні
Учителі
Оцінки
Номер
Клас
Предмет
Клас
Прізвище
Клас
Телефон
Зміна
Прізвище
Ім'я По батькові
Предмет
Директор
Ім'я
Предмет
Прізвище
Ім'я
Дата
Оцінка
Рис. 9.22. Таблиця БД
Виділимо зв'язки між інформаційними об'єктами (рис.9.23)
Рис. 9.23 Встановлення зв’язків між об’єктами
В ході цього процесу необхідно відповісти на наступні питання:
1. Які типи зв'язків між інформаційними об'єктами?
2. Яке ім'я можна привласнити кожному типу зв'язків?
3. Які можливі типи зв'язків, котрі можуть бути використані згодом?
Спроба задати обмеження на об’єкти, їх характеристики і зв'язки приводить до необхідності відповіді на наступні питання:
1. Яка область значений для числових характеристик?
2. Які функціональні залежності між характеристиками одного інформаційного об'єкта?
3. Який тип відображення відповідає кожному типу зв’язків?
При проектуванні БД існують взаємозв'язки між інформаційними об'єктами трьох типів: „один до одного”, „один до багатьох”, „багато до багатьох” (рис.9.24).
Наприклад:
Учень
Один до одного
Особиста справа
Клас
Один до багатьох
Учень
Учень
Багато до багатьох
Викладач
Рис. 9.24. Типи зв’язків між інформаційними об’єктами
9.21. Побудова концептуальної моделі
В простих випадках, для побудови концептуальної схеми використовують традиційні методи агрегації і узагальнення. При агрегації поєднуються інформаційні об’єкти (елементи даних) в один у відповідності з семантичними зв'язками між об'єктами. Наприклад, урок історії в 10-А класі проводиться в кабінеті №7, початок в 9-30. Методом агрегації створюємо інформаційний об'єкт (сутність) РОЗКЛАД з наступними атрибутами: „клас”, „предмет”, „кабінет”, „час”. При узагальненні інформаційні об’єкти (елементи даних) поєднуються в родовий об’єкт (рис.9.25):
Російська мова
Література
Філологія
Іноземні мови
Рис. 9.25. Приклад родового об’єкту
Вибір моделі диктується перед усім характером предметної області і вимогами до БД. Іншою немаловажною обставиною є незалежність концептуальної моделі від СУБД, яка повинна бути обрана після побудови концептуальної схеми.
Моделі „сутність-зв'язок”, дають можливість представити структуру і обмеження реального світу, а потім трансформувати їх у відповідності з можливостями СУБД.
Під сутністю розуміють основний зміст того явища, процесу або об’єкта, за яким збирають інформацію для БД. В якості сутності можуть виступати місце, предмет, особа, явище тощо. При цьому розрізняють тип сутності і екземпляр сутності.
Під типом сутності, зазвичай розуміють набір однорідних об’єктів, виступаючих як ціле.
Поняття „екземпляр сутності” відноситься до конкретного предмету. Наприклад:
Тип сутності – учень.
Екземпляр сутності – Хрущик, Прищик, Непийквас та ін.
В нашому прикладі Школа, Клас, Предмети, Учні, Учителі, Оцінки – сутності. Проаналізуємо зв'язки між сутностями (рис. 9.26).
Назва зв'язку
Між сутностями
Вчиться
Учень
Клас
Вивчає
Учень
Предмет
Має
Школа
Клас
Викладає
Учитель
Предмет
Працює
Учитель
предмет
Рис. 9.26. Аналіз зв’язків між сутностями
Тепер можна перейти до проектування інформаційної (концептуальної) схеми БД (атрибути сутностей на діаграмі не показані).
9.22. Логічне проектування
Логічне проектування представляє собою необхідний етап при створенні БД. Основною задачею логічного проектування є розробка логічної схеми, орієнтованої на обрану систему управління базами даних. Процес логічного проектування складається з наступних етапів:
1. Вибір конкретної СУБД;
2. Відображення концептуальної схеми на логічну схему (рис.9.27);