Факультет економіки та менеджменту
Кафедра економічної кібернетики
Курсова робота
з дисципліни «Проектування баз даних»
на тему: «Облік перельотів пасажирів авіакомпанії»
2009
ЗМІСТ
Завдання
Вступ
1. Специфікація вимог для кожного з двох користувачів
2. Концептуальне проектування бази даних (кроки 1.1 - 1.7
3. Логічне проектування бази даних (кроки 2.1 - 2.6, 3.1 - 3.4)
Висновок
Список літературних джерел
Додатки
Вступ
Історія досліджень систем баз даних - це за своєю суттю історія розвитку програмного забезпечення, яке на сьогоднішній день досягло виняткової потужності та продуктивності, що зробило великий вплив на економіку. Досягнення в дослідженнях баз даних стало основою фундаментальних розробок комунікаційних систем, транспорту та логістики, фінансового менеджменту, систем із базами, а також великої кількості програм у цивільних та військових установах. Вони також стали основою значного прогресу в провідних галузях науки - від інформатики до медицини.
Можна стверджувати, що поява баз даних стало найвагомішим досягненням в галузі програмного забезпечення. Бази даних є основою інформаційних систем, і це докорінно змінило характер роботи багатьох організацій та установ.
Запропонована у даних вказівках методологія роботи з реляційними Системами Управління Базами Даних (далі - СУБД), які домінують у наш час, успішно пройшла перевірку часом як у практичному, так і в науковому середовищі. Проектування баз даних складається з трьох фаз: концептуальної, логічної та фізичної. Перша фаза передбачає створення концептуальної моделі даних, яка не залежить від будь-яких фізичних характеристик засобів реалізації. У другій фазі концептуальна модель піддається доробці за допомогою видалення елементів, які не можуть бути реалізовані в реляційних системах. У третій фазі логічна модель даних перетворюється у фізичний проект, який призначено для реалізації у конкретній цільовій СУБД.
Кожну з фаз наведеної методології представлено у вигляді послідовності етапів. Недосвідчений проектувальник буде виконувати ці етапи у наведеній послідовності, дотримуючись вказаного порядку. Більш досвідчений розробник не буде жорстко додержуватись даної методології - він скоріше буде використовувати її як деяку основу або контрольний перелік необхідних дій.
Тема даної курсової роботи -- проектування бази даних авіакомпанії. Кожна авіакомпанія в будь-якій країні має на меті прискорювати процеси своєї діяльності, що прямо залежить з його швидкістю і якістю обслуговування, а отже і з прибутковістю. Виходячи з цього виникає потреба задоволення цієї вимоги, але це веде до того, що потрібно контролювати здійснення перельотів та продаж квитків, і тому найкращим виходом з цієї ситуації є використання баз даних. Мета цієї курсової роботи створити базу даних авіакомпанії, якою б користувалися директор та касир з продажу авіаквитків.
1. Специфікація вимог до даних для користувача «Касир з продажу авіаквитків»
Збір та аналіз вимог користувача «Касир з продажу авіаквитків» здійснювався в офісі відділення авіакомпанії. Було проведено опитування співробітників, які працюють на посадах касирів у авіакомпанії. Також була проаналізована вся документація, яка використовувалася даною групою співробітників. На основі цього аналізу була підготовлена специфікація вимог до інформації, що буде вміщена в створювану базу даних, а також були визначені всі трансакції, необхідні касирам для успішного виконання їхніх службових обовязків.
Вимоги до даних для користувача «Касир з продажу авіаквитків»:
1. У кожному відділенні авіакомпанії є персонал, що відповідає за реалізацію та реєстрацію авіаквитків - касири, нагляд та контроль за касирами здійснює директор авіакомпанії.
2. Інформація, що описує кожне відділення компанії включає унікальний номер відділення, його адресу (місто, район, вулицю, поштовий код), номер телефону, номер факсу та адресу електронної пошти.
3. Дані про авіарейси (майбутні, та вже здійснені) можна отримати у будь-якому відділенні авіакомпанії. Дані про авіарейс мають бути наступні: унікальний номер авіарейсу, напрям перельоту, авіа переліт у якому числиться даний авіарейс.
4. Розклад авіа перельотів містить у собі дані про авіарейси, літаки та таблицю продажу авіаквитків на кожен авіа переліт, що підпорядкована їй.
5. У кожному літаку має бути персонал, що відповідає за пасажирів, їх безпечне та комфортне транспортування, тобто це є екіпаж літака.
6. Що стосується авіаквитків, то всі вони розподілені по класам і мають свою вартість.
7. Пасажири, тобто клієнти авіакомпанії фіксуються у базі даних та мають бути про них такі дані: унікальний номер клієнта, повне імя, стать, усі паспортні дані; крім того має бути зазначена мета здійснення перельоту клієнта за кордон.
8. Має бути створена таблиця продажу авіаквитків, рядки якої інформують про: унікальний номер продажу, працівника, який видав авіаквиток, пасажира, що його отримав, авіарейс, до якого належить авіаквиток.
9. До обовязків персоналу, що займається продажом авіаквитків та їх реєстрацією входять наступні:
- «Бронювати місця» у замовлених рейсах та видавати квитки клієнтам у разі доступності вільних місць у рейсі.
- Заносити дані про клієнтів та їх квитки у базу даних, після чого видавати їх майбутнім пасажирам.
Вимоги до транзакцій для користувача «Касир з продажу авіаквитків»:
1) Складання списку клієнтів, що отримали квитки на певний авіарейс у певному класі;
2) Продаж та бронювання квитків;
3) Надання інформації про напрями кожного авіаперельоту.
Вимоги до даних для користувача «Директор авіакомпанії»:
1. Директор авіакомпанії здійснює контроль над всіма відділеннями авіакомпанії, кожне з яких налічує певну кількість касирів.
2. Інформація, що описує кожне відділення компанії включає унікальний номер відділення, його адресу (місто, район, вулицю, поштовий код), номер телефону, номер факсу та адресу електронної пошти.
3. Інформація, що описує кожного співробітника авіакомпанії включає особистий унікальний табельний номер, повне імя, стать, паспортні дані, номер телефону, займану посаду, дату прийняття на роботу, заробітну плату, номер відділення, в якому він працює. Особистий номер працівника має бути унікальним у межах всієї компанії.
4. Дані про авіа перельоти, та всі інші дані, які є дочірніми.
Вимоги до транзакцій для користувача «Директор авіакомпанії»:
1) Контроль всіх співробітників компанії та перегляд даних про них;
2) Перегляд всіх членів екіпажу в розрізі кожного авіарейсу;
3) Перегляд списку проданих авіаквитків в розрізі кожного авіа перельоту.
2. Концептуальне проектування бази даних (кроки 1.1 - 1.7)
Етап 1.1. Визначити типи сутностей.
Основними типами сутностей, що згадуються у специфікаціях користувачів є наступні: відділення, працівник, директор, касир, член екіпажу, літак, рейс, напрям, авіаквиток, клас, клієнти.
Тип сутності |
Тип звязку |
Тип сутності |
|
Відділення |
МаєЗнаходиться під керівництвом |
ПрацівникДиректор |
|
Працівник |
Належить до |
Відділення |
|
Директор |
Керує |
Відділення |
|
Касир |
Фіксується у |
Таблиця продажу авіаквитків |
|
Екіпаж |
Перебуває у |
Літак |
|
Клієнт |
Одержує |
Авіаквиток |
|
Авіаквиток |
Фіксується уНалежить |
Таблиця продажу авіаквитківКлієнт |
|
Клас |
Належить до |
Таблиця продажу авіаквитків |
|
Напрям |
Визначає |
Рейс |
|
Рейс |
Здійснюється у |
Напрям |
|
Рейс |
Фіксується у |
Розклад авіа перельотів |
|
Таблиця продажу авіаквитків |
ПідпорядкованаМістить дані проМістить дані проМістить дані про |
Розклад авіа перельотівКасирАвіаквитокКлас |
|
Літак |
Фіксується уМістить у собі |
Розклад авіа перельотівЕкіпаж |
|
Розклад авіа перельотів |
Містить дані зМістить дані проМістить дані про |
Таблиця продажу авіаквитківЛітакРейс |
|
Тип сутності |
Атрибут |
|
Відділення |
Номер (Номер відділення)Адреса (Місто, вулиця, район, поштовий індекс)Телефон (Номер телефону)Факс (Факс відділення)Поштовий код (Поштовий код відділення)Електронна адреса (Email) |
|
Працівник |
Номер (Табельний номер)Номер відділенняПовне імя (Прізвище, імя, по-батькові)СтатьПаспортні дані (Серія, номер, ким виданий, де виданий …)ПосадаТелефон (Номер телефону)Посада (Займана посада)Зарплата (Заробітна плата) |
|
Клієнт |
Номер (Табельний номер)Повне імя (Прізвище, імя, по-батькові)СтатьПаспортні дані (Серія, номер, ким виданий, де виданий …)Мета перельоту |
|
Авіаквиток |
НомерНомер клієнта |
|
Літак |
НомерНазва |
|
Клас |
НомерНазва |
|
Напрям |
НомерПункт відправленняПункт прибуття |
|
Рейс |
НомерНомер напрямуНазва |
|
Таблиця продажу авіаквитків |
Номер (Номер запису у таблиці)Номер розкладуНомер працівникаНомер авіаквиткаНомер класу |
|
Розклад авіа перельотів |
Номер (Номер запису у таблиці)Номер літакаНомер рейсу |
|
Сутність |
Первинний ключ |
Альтернативний ключ |
|
Відділення |
Номер |
Телефон |
|
Працівник |
Табельний Номер |
Паспортні дані |
|
Клієнт |
Номер |
Паспортні дані |
|
Авіаквиток |
Номер |
||
Літак |
Номер |
||
Клас |
Номер |
||
Напрям |
Номер |
||
Рейс |
Номер |
||
Таблиця продажу авіаквитків |
Номер |
||
Розклад авіа перельотів |
Номер |
||
Як показано в таблиці 1.2, всі атрибути сутності Працівник, уключаючи і первинний ключ, присутні також у сутностях Директор, Секретар та Екіпаж. Однак кожна з цих сутностей бере участь у різних звязках, наприклад у таких, як Директор керує відділенням і Екіпаж перебуває у літаку. На підставі цих зведень ми приймаємо рішення провести генералізацію сутностей Директор, Касир і Екіпаж. Вони будуть представлені як підкласи суперкласу Працівник. Звязки, що суперклас "підтримує" зі своїми підкласами, є частковими і непересічними, оскільки той самий працівник не може бути одночасно й директором, і касиром і членом екіпажу.
Рис. 12. Суперклас Працівник
3. Логічне проектування бази даних (кроки 2.1 - 2.6, 3.1 - 3.4)
Етап 2. Побудувати і перевірити локальну логічну модель даних на основі представлення про предметну область кожного з типів користувачів.
Етап 2.1. Перетворити локальну концептуальну модель даних у локальну логічну модель.
На цьому етапі слід перетворити концептуальну модель даних із метою видалення з неї всіх структур, реалізація яких у СУБД реляційного типу є складною. Бажаний результат може бути досягнутий за допомогою виконання таких дій, як:
1. Видалення звязків типу M:N.
2. Видалення складних звязків.
3. Видалення рекурсивних звязків.
4. Видалення звязків, що мають атрибути.
5. Видалення множинних атрибутів.
6. Повторний огляд звязків типу 1:1.
7. Видалення надлишкових звязків.
Видалення звязків типу M:N
На ER-діаграмі звязки такого типу відсутні.
Видалення складних звязків
На ER-діаграмі відсутні будь які складні (не бінарні звязки). Усі звязки в концептуальній моделі є бінарними, тобто будь-який звязок існує тільки між двома сутностями.
Видалення рекурсивних звязків
Рекурсивних звязків у концептуальній моделі не було виявлено.
Етап 2.6. Визначити вимоги підтримки цілісності даних.
На цьому етапі ми визначимо ті вимоги підтримки цілісності даних, які необхідно реалізувати в локальній логічній моделі даних користувача Директор. Їхнє призначення полягає в підтримці постійної внутрішньої погодженості інформації, організованої у вигляді бази даних. На цьому етапі наше завдання полягає в тому, щоб установити, які саме вимоги підтримки цілісності даних необхідні, а питання методів їх реалізації будуть вирішуватися пізніше. Ми розглянемо пять типів вимог підтримки цілісності:
· обовязкові дані;
· обмеження для доменів атрибутів;
· цілісність сутностей;
· посилальна цілісність;
· вимоги даного підприємства.
Докладні зведення про атрибути, що входять у локальну модель даних користувача Директор, були наведені при виконанні етапу 1.3 і представлені в додатку В до концептуального проектування БД.
Тип сутності (представлення Директор) |
Первинний ключ |
Тип сутності (представлення Касир) |
Первинний ключ |
|
Відділення |
Номер_Відділення |
Відділення |
Номер_Відділення |
|
Працівник |
Номер_Працівника |
Працівник |
Номер_Працівника |
|
Табл. продажу авіаквитків |
Номер_Запису |
Табл. продажу авіаквитків |
Номер_Запису |
|
Авіаквиток |
Номер_Авіаквитка |
Авіаквиток |
Номер_Авіаквитка |
|
Клієнт |
Номер_Клієнта |
Клієнт |
Номер_Клієнта |
|
Клас |
Номер_Класу |
Клас |
Номер_Класу |
|
Розклад авіа перельотів |
Номер_Запису |
Розклад авіа перельотів |
Номер_Запису |
|
Рейс |
Номер_Рейсу |
Рейс |
Номер_Рейсу |
|
Напрям |
Номер_Напряму |
Напрям |
Номер_Напряму |
|
Сутності(представлення Директор) |
Тип звязку |
Тип сутності (представлення Директор) |
Сутності (представлення Касир) |
Тип звязку |
Тип сутності (представлення Касир) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Відділення |
МаєЗнаходиться під керівництвом |
ПрацівникДиректор |
Відділення |
МаєЗнаходиться під керівництвом |
ПрацівникДиректор |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Працівник |
Належить до |
Відділення |
Працівник |
Належить до |
Відділення |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Директор |
Керує |
Відділення |
Директор |
Керує |
Відділення |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Касир |
Фіксується у |
Таблиця продажу авіаквитків |
Касир |
Фіксується у |
Таблиця продажу авіаквитків |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Екіпаж |
Перебуває у |
Літак |
Екіпаж |
Перебуває у |
Літак |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Клієнт |
Одержує |
Авіаквиток |
Клієнт |
Одержує |
Авіаквиток |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Авіаквиток |
Фіксується уНалежить |
Таблиця продажу авіаквитківКлієнт |
Авіаквиток |
Фіксується уНалежить |
Таблиця продажу авіаквитківКлієнт |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Клас |
Належить до |
Таблиця продажу авіаквитків |
Клас |
Належить до |
Таблиця продажу авіаквитків |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Напрям |
Визначає |
Рейс |
Напрям |
Визначає |
Рейс |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Рейс |
Здійснюється у |
Напрям |
Рейс |
Здійснюється у |
Напрям |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Рейс |
Фіксується у |
Розклад авіа перельотів |
Рейс |
Фіксується у |
Розклад авіа перельотів |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Таблиця продажу авіаквитків |
ПідпорядкованаМістить дані проМістить дані проМістить дані про |
Розклад авіа перельотівКасирАвіаквитокКлас |
Таблиця продажу авіаквитків |
ПідпорядкованаМістить дані проМістить дані проМістить дані про |
Розклад авіа перельотівКасирАвіаквитокКлас |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Літак |
Фіксується уМістить у собі |
Розклад авіа перельотівЕкіпаж |
Літак |
Фіксується уМістить у собі |
Розклад авіа п ерельотівЕкіпаж
Це попереднє порівняння імен звязків у кожному із представлень користувачів також допомагає уточнити ділянки, спільні для обох представлень. Однак із цього зовсім не випливає що можна покладатися на те, що сутності або звязок з тими ж іменами відіграють однакову роль у кожному із представлень. І все-ж таки, порівняння імен сутностей і звязків можна вважати дуже зручною вихідною точкою пошуку ідентичних ділянок у представленнях, що зливаються, якщо, звичайно, не забувати, про можливі помилки.Злиття загальних сутностей з окремих локальних моделейНа даному етапі виконується перевірка імен і вмісту кожної сутності в обох представленнях. Зокрема, для ідентифікації еквівалентних сутностей з різними іменами варто проаналізувати їхні первинні ключі. Виконання даного етапу включає наступні дії:· злиття сутностей з однаковими іменами й однаковими первинними ключами;· злиття сутностей з однаковими іменами, що мають різні первинні ключі;· злиття сутностей з різними іменами, що мають однакові або різні первинні ключі.Злиття сутностей з однаковими іменами й однаковими первинними ключами.Сутності, що мають в обох представленнях той самий первинний ключ, як правило, представляють ту саму концепцію реального світу. Ідентифікація й обєднання подібних пар являє собою відносно нескладну задачу.Злиття сутностей з однаковими іменами, що мають різні первинні ключі.Такі сутності відсутні.Злиття сутностей з різними іменами, що мають однакові або різні первинні ключі .Такі сутності відсутні.Включення (без злиття) сутностей, унікальних для кожного локального представлення.Глобальне представленняВІДДІЛЕННЯ (Номер_Відділення, Телефон, Факс, Поштовий_Код, E-mail).Первинний ключ - Номер_Відділення.ЛІТАК (Номер_Літака, Назва).Первинний ключ - Номер_Літака.Злиття загальних звязків з окремих локальних моделейНа цьому етапі виконується аналіз імен і призначення всіх звязків, що є наявними в обох локальних представленнях. Перш ніж приступати до злиття звязків, дуже важливо усунути будь-які конфлікти, що стосуються їх кардинальності і ступеня участі сторін. Імена звязків, що наявні в обох локальних представленнях, утримуються в таблиці. Обовязковою задачею, розвязуваної на даному етапі, є злиття звязків, що мають однакові імена і подібне призначення, а також злиття звязків, що мають різні імена, але ідентичне призначення. Але в локальних логічних моделях обох представлень такі звязки не були виявлені.Включення (без злиття) звязків, унікальних для кожного локального представленняУ таблиці можна виділити звязки, що є унікальними для кожного з представлень. Для представлення користувача Директор виявлені унікальні звязки: Директор керує Відділенням, Екіпаж перебуває у Літаку, Літак міститься у Розкладі авіа перельотів. Ці звязки повинні бути перенесені в глобальну модель даних без яких-небудь змін.Етап 3.2.Перевірити глобальну логічну модель.Хоча локальні логічні моделі даних представлень диспетчер та головний інженер були перевірені ще до виконання процедури їх злиття в глобальну логічну модель даних, існує імовірність того, що при виконанні цієї процедури в глобальну модель даних були внесені нові помилки. Зокрема, дуже важливо перевірити створену глобальну логічну модель даних на відповідність вимогам нормалізації і проконтролювати можливість виконання всіх необхідних транзакцій.Перевірка на наявність пропущених сутностей і звязківПеревірка на наявність пропущених сутностей і звязків, що існують між елементами представлень користувачів, що зливаються, є однією з найважливіших задач при створенні глобальної моделі даних. Однак часто ця задача є дуже складною. Сутності і звязки можуть залишитися за межами локальних представлень у тих випадках, коли має місце невизначеність із приводу того, хто відповідає за деякий вид діяльності. Кожний з користувачів може припускати, що відповідальність за виконання деякого завдання покладається на іншого користувача, і з цієї причини дані і транзакції, необхідні для виконання цього завдання, будуть відсутні в його локальному представленні. Найчастіше подібні проблеми мають місце в інтерфейсах між різними типами представлень.Перевірка коректності зовнішніх ключівНа цьому етапі виконується перевірка того, чи всі дочірні сутності містять необхідні їм зовнішні ключі. Особливу обережність варто виявляти щодо тих сутностей і їхніх звязків, що були безпосередньо втягнуті в процес злиття представлень користувачів.Перевірка дотримання обмежень цілісностіУ глобальній моделі необхідно ще раз перевірити усі вимоги, необхідні для підтримки цілісності даних, і переконатися, що будь-які можливі конфлікти і протиріччя між локальними моделями даних були проаналізовані й усунуті.Етап 3.3.Перевірити можливості розширення моделі в майбутньому.Дуже важливо, щоб створена глобальна логічна модель даних допускала можливість її розширення в майбутньому при зміні вимог користувачів. Наприклад, директор авіакомпанії може прийняти рішення внести зміни в методи обліку авіа перельотів чи методи обліку продажу квитків клієнтам. Існуюче глобальне представлення компанії повинне допускає внесення необхідних доповнень, що відбивають подібні зміни в діяльності фірми.Етап 3.4.Створити остаточний варіант діаграми сутність-звязок.Остаточна версія логічного глобального представлення показана на рис. 18.ВИСНОВОКВ даній курсовій роботі розглянута теоритичне моделюваня бази даних авіакомпанії для користувачів директор та касир з продажу авіаквитків. Курсова робота складається з трьох основних частин, в яких поетапно розглядається і зображується схематично основні звязки директор, касир та загальна схема їх відношень. Дані, основні визначення та поняття, застосована методологія концептуального проектування. Побудована локальна концептуальна модель даних для представлення користувача «Директор», визначені основні типи сутностей, звязки та атрибути, які звязані з ними. Створена діаграма «сутність-звязок», яка графічно демонструє вище зазначені звязки. На другому етапі розглянуто логічне проектування бази даних. Третій етап присвячено створенню і перевірці глобальної логічної моделі даних.Розробка даної курсової роботи дала мені можливість більш детально уявити роботу авіакомпанії, набути та поглибити знання з даного предмету.СПИСОК ЛІТЕРАТУРНИХ ДЖЕРЕЛ1. Дейт К.Дж. Введение в системы баз данных. 6-е издание. Диалектика. Киев - Москва. 1998 г. 784 с.2. Хансен Г., Хансен Дж. Базы данных: разработка и управление. Бином. Москва. 1999 г. Пер. с англ. 700 с.3. Коннолли Т., Бегг К., Страчан А. Базы данных: проектирование, реализация и сопровождение. Теория и практика. 2-е издание. Вильямс. Москва-Санкт-Петербург-Киев. 2000 г. 1111 с.4. Кириллов В.В. Основы проектирования реляционных баз данных. Учебное пособие. Санкт-Петербургский Государственный институт точной механики и оптики (технический университет). Кафедра вычислительной техники. - http://www.cs.ifmo.ru5. С.Д. Кузнецов Основы современных баз данных. Информационно-аналитические материалы. - http://www.citmgu.ru/Додаток АВідомості про типи сутностей
Додаток БЗведення про типи звязків
Додаток ВЗведення про атрибути
Додаток ГЗведення про домени атрибутів поміщених у документацію
Додаток ДОпис у вигляді мови DDL для кожного відношення для представлення користувачаДиректорВІДДІЛЕННЯ (Номер_Відділення, Телефон, Факс, Поштовий_Код, E-mail).Первинний ключ - Номер_Відділення.ПРАЦІВНИК (Номер_Працівника, Імя, Прізвище, По-батькові, Серія_Паспорту, Номер_Паспорту, Дата_Народження, Місце_Проживання, Телефон, Стать, ЗарПлата, Посада).Первинний ключ - Номер_Працівника.КЛІЄНТ (Номер_Клієнта, Імя, Прізвище, По-батькові, Серія_Паспорту, Номер_Паспорту, Дата_Народження, Місце_Проживання, Стать, Мета_Перельоту).Первинний ключ - Номер_Клієнта.ЛІТАК (Номер_Літака, Назва).Первинний ключ - Номер_Літака.АВІАКВИТОК (Номер_Авіаквитку, Номер_Клієнта).Первинний ключ - Номер_Авіаквитку.Зовнішній ключ - Номер_ Клієнта посилання Клієнт (Номер_Клієнта) при видаленні NO ACTION при зміні CASCADE.РЕЙС (Номер_Рейсу, Номер_Напряму).Первинний ключ - Номер_Рейсу.Зовнішній ключ - Номер_Напряму посилання Напрям (Номер_Напряму) при видаленні CASCADE при зміні CASCADE.КЛАС (Номер_Класу, Назва).Первинний ключ - Номер_Класу.НАПРЯМ (Номер_Напряму, Пункт_Відправлення, Пункт_Прибуття).Первинний ключ - Номер_Напряму.ТАБЛИЦЯ ПРОДАЖУ АВІАКВИТКІВ (Номер_Запису, Номер_Працівника, Номер_Авіаквитку, Номер_Класу, Номер_Розкладу_Авіаперельотів).Первинний ключ - Номер_ЗаписуЗовнішній ключ - Працівник (Номер_Працівника) посилання Працівник (Номер_Працівника) при видаленні NO ACTION при зміні CASCADE.Зовнішній ключ - Авіаквиток (Номер_Авіаквитку) посилання Авіаквиток (Номер_Авіаквитку) при видаленні NO ACTION при зміні CASCADE.Зовнішній ключ - Номер_Класу посилання Клас (Номер_Класу) при видаленні NO ACTION при зміні CASCADE.Зовнішній ключ - Номер_Розкладу_Авіаперельотів посилання РОЗКЛАД АВІА ПЕРЕЛЬОТІВ(Номер_Розкладу_Авіаперельотів) при видаленні NO ACTION при зміні CASCADE.РОЗКЛАД АВІА ПЕРЕЛЬОТІВ (Номер_Запису, Номер_Літака, Номер_Рейсу)Первинний ключ - Номер_Запису.Зовнішній ключ - Номер_Літака посилання Літак (Номер_Літака) при видаленні NO ACTION при зміні CASCADE.Зовнішній ключ - Номер_Рейсу посилання Рейс (Номер_Рейсу) при видаленні NO ACTION при зміні CASCADE.Додаток ЕБізнес-правила для представлення користувача Директор:1. Кожен літак має налічувати не більше ніж 6 членів екіпажу.2. Заробітна плата кожного працівника повинна бути не менше встановленого державою мінімуму.3. Кожен авіа переліт повинен налічувати не більше 90 клієнтів (пасажирів).4. У кожному напрямі має бути передбачено мінімум 5 рейсів.Додаток ЄУмовні позначення на ER-діаграмах_________ |
! | Как писать дипломную работу Инструкция и советы по написанию качественной дипломной работы. |
! | Структура дипломной работы Сколько глав должно быть в работе, что должен содержать каждый из разделов. |
! | Оформление дипломных работ Требования к оформлению дипломных работ по ГОСТ. Основные методические указания. |
! | Источники для написания Что можно использовать в качестве источника для дипломной работы, а от чего лучше отказаться. |
! | Скачивание бесплатных работ Подводные камни и проблемы возникающие при сдаче бесплатно скачанной и не переработанной работы. |
! | Особенности дипломных проектов Чем отличается дипломный проект от дипломной работы. Описание особенностей. |
→ | по экономике Для студентов экономических специальностей. |
→ | по праву Для студентов юридических специальностей. |
→ | по педагогике Для студентов педагогических специальностей. |
→ | по психологии Для студентов специальностей связанных с психологией. |
→ | технических дипломов Для студентов технических специальностей. |
→ | выпускная работа бакалавра Требование к выпускной работе бакалавра. Как правило сдается на 4 курсе института. |
→ | магистерская диссертация Требования к магистерским диссертациям. Как правило сдается на 5,6 курсе обучения. |
Дипломная работа | Формирование устных вычислительных навыков пятиклассников при изучении темы "Десятичные дроби" |
Дипломная работа | Технологии работы социального педагога с многодетной семьей |
Дипломная работа | Человеко-машинный интерфейс, разработка эргономичного интерфейса |
Дипломная работа | Организация туристско-экскурсионной деятельности на т/к "Русский стиль" Солонешенского района Алтайского края |
Дипломная работа | Разработка мероприятий по повышению эффективности коммерческой деятельности предприятия |
Дипломная работа | Совершенствование системы аттестации персонала предприятия на примере офиса продаж ОАО "МТС" |
Дипломная работа | Разработка системы менеджмента качества на предприятии |
Дипломная работа | Организация учета и контроля на предприятиях жилищно-коммунального хозяйства |
Дипломная работа | ЭКСПРЕСС-АНАЛИЗ ФИНАНСОВОГО СОСТОЯНИЯ ООО «АКТ «ФАРТОВ» |
Дипломная работа | Психическая коммуникация |