Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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

Поиск

На основі проведеного аналізу предметної області була побудована концептуальна модель з використанням мови ER–моделювання. Концептуальна модель наведена на рис.6. Дамо декілька зауважень:

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

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

· І, по-третє, наша концептуальна модель не містить інших складових, а саме, докладний і строгий опис сховищ даних, та детальний опис потоків даних. Це не було зроблено, так як опис цих складових концептуальної моделі виходить за рамки курсової роботи.

 

ЛОГІЧНЕ ТА ФІЗИЧНЕ ПРОЕКТУВАННЯ БАЗИ ДАНИХ

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

Логічне проектування — це розробка логічної структури системи баз даних без прив'язки до конкретної СУБД, структур збереження, методам доступу і т.д..

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

Логічне проектування

У якості логічній моделі бази даних була обрана реляційна модель, оскільки саме реляційна модель використовується у більшості розвинених СУБД.

Для перетворення концептуальної моделі, представленої у вигляді мови

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

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

2) Перетворення атрибутів у стовпці. Кожний атрибут перетвориться в стовпець. Ім’я атрибуту представляється у вигляді семантично осмисленого імені у латинському алфавіті. У цей момент уточнюється формат представлення значень стовпця. Факультативні атрибути стають NULL-стовпцями. Обов'язкові атрибути стають NOT NULL-стовпцями.

3) Подання унікальних ідентифікаторів ключами таблиць. Складові унікального ідентифікатора сутності стають первинним ключем таблиці. Нагадаємо, що сутність може мати більш ніж один унікальний ідентифікатор Тому вибирається той, котрий використовується найбільше часто. Всі інші унікальні ідентифікатори приймають обмеження цілісності UNIQUE NOT та NOT NULL.

 

Рисунок 6 Концептуальна ER-модель вступу до ВУЗу

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

4) Перетворення зв'язків багато-до-одного й один-до-одного в зовнішні ключі. Зв'язки типу багато-до-одного й один-до-одного породжують зовнішні ключі. Інакше кажучи, необхідно взяти унікальні ідентифікатори кожної сутності, розташованої в закінчення зв'язку зі ступенем один, і ввести його у відношення, розташоване з боку зв'язку "багато" як стовпці. Факультативним зв'язкам відповідають NULL-стовпці. Обов'язковим зв'язкам відповідають NOT NULL-стовпці.

5) Введення спеціальних первинних ключів. Для більш адекватного відображення логічного проекту бази даних у фізичний, вводимо у всі таблиці один спеціальний стовпець з обмеженням цілісності первинного ключа. Всі ті стовпці, які мають властивість первинного ключа згідно з концептуальною моделлю, набувають обмеження цілісності UNIQUE та NOT NULL.

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

Таблиця 1 Відношення сутності ВУЗ(UNIVERSITY)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
Uniq ціле число   Унікальний ID Первинний ключ
ShName строка   Скорочена назва ВУЗу Факультативний
LName строка   Повна назва ВУЗу Обов’язковий, унікальний
Addr строка   Адреса ВУЗу Факультативний
Rector строка   П.І.Б. ректора Обов’язковий, унікальний

Таблиця 2 Відношення сутності ІНСТИТУТ (INSTITUTE)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
Iniq ціле число   Унікальний ID Первинний ключ
ShName строка   Скорочена назва Факультативний.
LName строка   Повна назва Обов’язковий, унікальний
Director строка   П.І.Б. директора Обов’язковий, унікальний
Uniq ціле число   Зв’язок з ВУЗом Зовнішній ключ, що посилається на первин­ний ключ відношення UNIVERSITY. Обов’язковий

Таблиця 3 Відношення сутностіФАКУЛЬТЕТ ( FACULTY)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
Funiq ціле число   Унікальний ID Первинний ключ
ShName строка   Скорочена назва Факультативний.
LName строка   Повна назва Обов’язковий, унікальний
Dekan строка   П.І.Б. декана Обов’язковий, унікальний
Uniq ціле число   Зв’язок з ВУЗом Зовнішній ключ, що посилається на первин­ний ключ відношення UNIVERSITY. Факультативний
Iniq ціле число   Зв’язок з інститутом Зовнішній ключ, що посилається на первин­ний ключ відношення INSTITUTE,. Факультативний
FKType строка   Ознака, кому належить факультет: ВУЗу або інституту Приймає значення: „U”, якщо факультет належить UNIVERSI­TY, або “I”, якщо факультет належить INSTITUTE

 

Таблиця 4 Відношення сутності КАФЕДРА (DEPARTMENT)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
Duniq ціле число   Унікальний ID Первинний ключ
ShName строка   Скорочена назва Факультативний.
LName строка   Повна назва Обов’язковий, унікальний
Mgr строка   П.І.Б завідувача Обов’язковий, факультативний
Funiq ціле число   Зв’язок з факультетом Зовнішній ключ, що посилається на первин­ний ключ відношення FACULTY. Обов’язковий

Таблиця 5Відношення сутності СПЕЦІАЛЬНІСТЬ ( specialty)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
SpecUniq строка   Унікальний ID. Скорочена назва СПЕЦІАЛЬНОСТІ в числовому вигляді (наприклад: 6.050101) Первинний ключ
LName строка   Повна назва СПЕЦІАЛЬНОСТІ (наприклад: Програмна інженерія) Обов’язковий, унікальний
LangLearn строка   Мова навчання (наприклад, українська, російська, англійська) Факультативний
NumStud ціле число   Кількість студентів на спеціальності Факультативний
Duniq ціле число   Зв’язок з кафедрою Зовнішній ключ, що посилається на первин­ний ключ відношення DEPARTMENT. Обов’язковий

 

Таблиця 6Відношення сутності ЗАЯВА ( statement)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
StatUniq   строка   Унікальний ID. Номер заяви в числовому вигляді Первинний ключ
DataStat дата   Дата подання заяви Обов’язковий
FormStudy строка   Форма навчання Обов’язковий(денна – “D”, заочна – “Z”, дистанційна – “DYST”)
SpecUniq строка   Зв’язок зі спеціальністю Зовнішній ключ, що посилається на первин­ний ключ відношення specialty. Обов’язковий
MemUniq ціле число   Зв’язок з членом комісії Зовнішній ключ, що посилається на первин­ний ключ відношення mEMBER_COMMISSION. Обов’язковий
MatrUniq ціле число   Зв’язок зі вступником Зовнішній ключ, що посилається на первин­ний ключ відношення matriculant. Обов’язковий

 

Таблиця 7 Відношення сутності ЧЛЕН КОМІСІЇ ( mEMBER_COMMISSION)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
MemUniq ціле число   Унікальний ID. Ідентифікаційний код Первинний ключ
LName Строка   Прізвище Обов’язковий
Name строка   Ім’я Обов’язковий
PatroName строка   По батькові Обов’язковий
Addr строка   Адреса проживання Обов’язковий
Birthday дата   Дата народження Обов’язковий
Year ціле число   Рік вступу у ВУЗ Обов’язковий
Sex строка   Стать Обов’язковий. „M” – чоловіча, „W” – жіноча.
Passport строка   Серія та номер паспорту Обов’язковий, унікальний
Tel строка   Контактний телефон Обов’язковий, унікальний
PostMem строка   Посада у ВУЗі Обов’язковий. „Assistant” – асистент, „ docent” – доцент, „Dr” – доктор наук, „director” – директор інституту, „dekan” – декан факультету.
StatUniq   строка   Зв’язок із заявою Зовнішній ключ, що посилається на первин­ний ключ відношення statement. Обов’язковий
InterUniq ціле число   Зв’язок зі співбесідою Зовнішній ключ, що посилається на первин­ний ключ відношенняINTERVIEW. Обов’язковий

 

Таблиця 8 Відношення сутності ВСТУПНИК ( matriculant)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
MatrUniq ціле число   Унікальний ID. Ідентифікаційний код Первинний ключ
LName Строка   Прізвище Обов’язковий
Name Строка   Ім’я Обов’язковий
PatroName Строка   По батькові Обов’язковий
Addr Строка   Адреса проживання Обов’язковий
Birthday Дата   Дата народження Обов’язковий
Year ціле число   Рік вступу у ВУЗ Обов’язковий
Sex Строка   Стать Обов’язковий. „M” – чоловіча, „W” – жіноча.
Passport Строка   Серія та номер паспорту Обов’язковий, унікальний
Tel Строка   Контактний телефон Обов’язковий, унікальний
Hostel Строка   Потреба в гуртожитку Обов’язковий. „Yes” – так, „No” – ні.
StatUniq   Строка   Зв’язок із заявою Зовнішній ключ, що посилається на первин­ний ключ відношення statement. Обов’язковий
NumbSchCert ціле число   Зв'язок із атестатом Зовнішній ключ, що посилається на первин­ний ключ відношення SCHOOL_CERTIFICATE. Обов’язковий
CertNum ціле число   Зв’язок з сертифікатом ЗНО Зовнішній ключ, що посилається на первин­ний ключ відношення certificate. Обов’язковий
FinUniq ціле число   Зв’язок з видом фінансування Зовнішній ключ, що посилається на первин­ний ключ відношення FINANCE_TYPE. Обов’язковий
InterUniq ціле число   Зв’язок зі співбесідою Зовнішній ключ, що посилається на первин­ний ключ відношення INTERVIEW. Обов’язковий

Таблиця 9 Відношення сутності СЕРТИФІКАТ ЗНО ( certificate )

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
CertNum ціле число   Унікальний ID. Номер сертифікатa Первинний ключ
Year ціле число   Рік видання Обов’язковий
ValidYear Ціле число   Рік закінчення дії Обов’язковий
MatrUniq ціле число   Зв’язок з вступником Зовнішній ключ, що посилається на первин­ний ключ відношення MATRICULANT. Обов’язковий
Subject ціле число   Зв’язок з дисципліною Зовнішній ключ, що посилається на первин­ний ключ відношення SUBJECT. Обов’язковий

 

Таблиця 10 Відношення сутності АТЕСТАТ ( SCHOOL _CERTIFICATE )

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
NumbSchCert ціле число   Унікальний ID. Номер атестата Первинний ключ
Year ціле число   Рік закінчення навчання Обов’язковий
SchName строка   Повна назва закладу освіти Обов’язковий
Director строка   Директор закладу освіти Обов’язковий
DataIssue дата   Дата видання Обов’язковий
Medal строка   Наявність відзнаки Обов’язковий. „Y” – є, „N” – немає.
MatrUniq ціле число   Зв’язок з вступником Зовнішній ключ, що посилається на первин­ний ключ відношення MATRICULANT. Обов’язковий
Subject строка   Зв’язок з дисципліною Зовнішній ключ, що посилається на первин­ний ключ відношення SUBJECTS. Обов’язковий

Таблиця 11 Відношення сутності ДИСЦИПЛІНА (SUBJECT)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
Subject строка   Назва предмету Обов’язковий. Унікальний
ValueNum ціле число   Бал предмету цифрами Обов’язковий. ValueNum від 0 до 200
ValueStr строка   Бал предмету літерами Обов’язковий
CertNum ціле число   Зв’язок з сертифікатом Зовнішній ключ, що посилається на первин­ний ключ відношення CERTIFICATE. Обов’язковий
NumbSchCert ціле число   Зв'язок з атестатом Зовнішній ключ, що посилається на первин­ний ключ відношення SCHOOL _CERTIFICATE. Обов’язковий
Обмеження цілісності таблиці: Сукупність стовпців (Subject, CertNum) має обмеження унікальності та обов’язковості оскільки в одному сертифікаті не може бути двох і більше предметів з однаковою назвою.

 

Таблиця 12 Відношення сутності ВИД ФІНАНСУВАННЯ (FINANCE_TYPE)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
FinUniq ціле число   Унікальний ID. Номер фінансування Первинний ключ
FinType строка   Вид фінансування Обов’язковий. „Budget” – бюджет, „Contract” – контракт.
MatrUniq ціле число   Зв’язок з вступником Зовнішній ключ, що посилається на первин­ний ключ відношення MATRICULANT. Обов’язковий

Таблиця 13 Відношення сутності СПІВБЕСІДА (INTERVIEW)

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
InterUniq ціле число   Унікальний ID. Номер співбесіди Первинний ключ
InterData дата   Дата проведення Обов’язковий.
ResultInter строка   Результат співбесіди Обов’язковий. „Y” – пройшов, „N” – не пройшов.
MatrUniq ціле число   Зв’язок з вступником Зовнішній ключ, що посилається на первин­ний ключ відношення MATRICULANT. Обов’язковий
MemUniq ціле число   Зв'язок з членом комісії Зовнішній ключ, що посилається на первин­ний ключ відношення mEMBER_COMMISSION. Обов’язковий

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

База даних спроектована для її збереження у СКБД Oracle, яка підтримує реляційну модель даних і є об’єкто-реляційною СКБД. Ця СКБД має дуже розвинені можливості по створенню та супроводу баз даних, оскільки володіє найбільш розвиненою системою типів даних, можливостями індексування полів, що дозволяє одержувати доступ до даних за мінімальний час, а також функціями по забезпеченню підтримки цілісності даних між реляційними таблицями, що дозволяє розробнику мінімізувати тимчасові витрати на створення бази даних, а кінцевому користувачеві витрати на підтримку цілісності збережених даних і одержання даних з бази даних. Робота з базою даних підтримується за допомогою реляційної мови запитів SQL.

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



Поделиться:


Последнее изменение этой страницы: 2016-08-25; просмотров: 181; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.171.71 (0.011 с.)