
- •Лекція 5. Модель “Сутність – зв’язок”
- •5.1. Концепції er-моделі
- •5.1.1. Типи сутностей Типи сутностей - об'єкт чи концепція, що характеризуються на даному підприємстві які мають незалежне існування.
- •Сутність - екземпляр типу сутності, що може бути ідентифікований унікальним образом.
- •Слабкий тип сутності - тип сутності, існування якого, залежить від якогось іншого типу сутності. Сильний тип сутності - тип сутності, існування якого не залежить від якогось іншого типу сутності.
- •Способи представлення сутностей на діаграмі
- •5.1.2. Атрибути Атрибут - властивість типу сутності чи типу зв'язку.
- •Домен атрибута - набір значень, що можуть бути привласнені атрибуту.
- •Простий атрибут - атрибут, що складається з одного компонента з незалежним існуванням.
- •Складений атрибут - атрибут, що складається з декількох компонентів, кожний з який характеризується незалежним існуванням.
- •Однозначний атрибут - атрибут, що містить одне значення для однієї сутності.
- •Багатозначний атрибут - атрибут, що містить кілька значень для однієї сутності.
- •Похідний атрибут - атрибут, що представляє значення, похідне від значення зв'язаного з ним атрибута чи деякої безлічі атрибутів, що належать якомусь (не обов'язково даному) типу сутності.
- •Потенційний ключ - атрибут чи набір атрибутів, що унікально ідентифікує окремі екземпляри типу сутності.
- •Первинний ключ - потенційний ключ, що обраний як первинний ключ.
- •Складений ключ – потенційний ключ, що складається з двох чи більше атрибутів.
- •Представлення атрибутів на діаграмах
- •5.1.3. Типи зв'язків Тип зв'язку - осмислена асоціація між сутностями різних типів.
- •Зв'язок - асоціація між сутностями, що включає по одній сутності з кожного типу, що бере участь у зв'язку сутності.
- •Представлення зв'язків на діаграмах
- •Ступінь зв'язку - кількість сутностей, що охоплені даним зв'язком.
- •Рекурсивний зв'язок - зв'язок, у якому ті самі сутності беруть участь кілька разів і в різних ролях.
- •5.1.4. Атрибути зв'язків
- •5.2. Структурні обмеження
- •5.2.1. Показник кардинальності Показник кардинальності описує кількість можливих зв'язків для кожної із сутностей учасниць.
- •Зв'язку „один до одного"
- •З в'язок „один до багатьох"
- •Зв'язку "багато до багатьох"
- •5.2.2. Ступінь участі Ступінь участі визначає, чи залежить існування деякої сутності від участі в зв'язку деякої іншої сутності.
- •5.3. Проблеми er-моделювання
- •5.3.1. Пастки розгалуження Пастка розгалуження має місце в тому випадку, коли модель відображає зв'язок між типами сутностей, але шлях між окремими сутностями цього типу визначений неоднозначно.
- •5.3.2. Пастки розриву Пастка розриву з'являється в тому випадку, коли в моделі передбачається наявність зв'язку між типами сутностей, але не існує шляху між окремими сутностями цих типів.
- •5.4.1. Суперкласи і підкласи типів сутностей
- •Суперклас - тип сутності, що включає різні підкласи, які необхідно представити в моделі даних. Підклас - тип сутності, що виконує окрему роль, а також є членом суперкласу.
- •5.4.2. Спадкування атрибутів
- •5.4.3. Спеціалізація Спеціалізація - процес збільшення розходжень між окремими членами типу сутності за рахунок виділення їхніх відмінних характеристик.
- •5.4.4. Генералізація Генералізація - процес зведення розходжень між сутностями до мінімуму шляхом виділення їхніх загальних характеристик.
- •5 .4.5. Обмеження, що накладаються на процедури спеціалізації і генералізації
- •5.4.6. Категоризація Категоризація - моделювання одного підкласу зі зв'язком, що охоплює кілька різних суперкласів.
- •5.5. Створення eer-моделі для представлення користувача Manager з навчального проекту DreamHome
- •5.5.1. Специфікації вимог для представлення користувача Manager
- •5.5.2. Створення eer-моделі
- •Визначення типів сутностей
- •Визначення типів зв'язків
- •Визначення показника кардинальності і ступеня участі сторін для типів зв'язків
- •Визначення атрибутів і зв'язування їх з типами сутностей і зв'язків
- •Визначення атрибутів, що є потенційними і первинними ключами
- •Чи спеціалізація генералізація типів сутностей
- •Категоризація типів сутностей
- •Створення розширеної діаграми „сутність-зв’язок"
- •Питання
- •Вправи Навчальний проект University Accommodation Office
5.5. Створення eer-моделі для представлення користувача Manager з навчального проекту DreamHome
У цьому розділі буде продемонстрований процес створення розширеної моделі "сутність-зв'язок", чи EER-моделі, для представлення користувача Manager з навчального проекту DreamHome. Опис цього навчального проекту приводиться в розділі 1.7.
Етапи збору вимог і аналізу (із загального життєвого циклу систем з базами даних) були виконані в декількох відділеннях компанії DreamHome. Ці дії включали опитування співробітників-менеджерів і ознайомлення з усією документацією, що використовується чи створюється ними при виконанні своїх щоденних службових обов'язків. Результатом виконання цієї фази з'явилося створення специфікацій вимог для представлення користувача Manager даної компанії, що описують інформацію, яку необхідно зберігати в базі даних проекту DreamHome. Слід зазначити, що під терміном "представлення менеджера" розуміється представлення, що загалом було визначено співробітниками компанії, що складаються на посаді менеджера.
5.5.1. Специфікації вимог для представлення користувача Manager
1. Компанія DreamHome має відділення, розташовані в різних містах країни. Кожне відділення має власний штат співробітників, у число яких входить також менеджер, що керує роботою даного відділення. Інформація, що описує кожне відділення компанії, включає унікальний номер відділення, його адресу (вулицю, район, місто, поштовий індекс), номер телефону, номер факсу, ім'я співробітника, що у даний момент керує роботою цього відділення.
Крім цього, про кожного менеджера зберігається і деяка додаткова інформація: дата вступу на посаду керівника даного відділення копанні, дозвіл на компенсацію транспортних витрат, щомісячний розмір премії, що залежить від досягнутих результатів здачі в оренду об'єктів нерухомості.
2. Інформація, що зберігається про кожного співробітника компанії, включає: його особистий номер, ім'я і прізвище, адресу, номер телефону, стать, дату народження, номер соціального страхування (NIN), займану посаду, зарплату за рік і дату зарахування в штат компанії DreamHome. Особистий номер кожного співробітника є унікальним для усіх відділень компанії.
Крім того, якщо це можливо, для кожного співробітника зберігається інформація про одного з його родичів (спадкоємців): ім'я, рівень родинного зв'язку з цим співробітником, адреса і номер телефону.
3. Співробітники, що займають посаду інспектора (Supervisor), відповідають за щоденну діяльність деякої групи працівників компанії. Не всі працівники компанії підлеглі якому-небудь з інспекторів.
4. Кожне відділення компанії працює з деякою безліччю об'єктів нерухомості, що здаються в оренду. Про кожен такий об'єкт зберігається наступна інформація: номер об'єкта, його адреса (вулиця, район, місто, поштовий індекс), тип даного об'єкта нерухомості, кількість кімнат, установлена місячна орендна плата, а також особистий номер власника цього об'єкта, його ім'я і прізвище, адреса і номер телефону (як для приватних власників, так і для фірм-власників). Номер об'єкта є унікальним для усіх відділень компанії DreamHome. За кожним об'єктом закріплений співробітник, відповідальний за роботу з ним.
5. Додатково зберігається інформація про власників об'єктів нерухомості. Існує два типи власників: фізичні особи і фірми-власники (юридичні особи). Про приватних осіб зберігається така інформація, як особистий номер власника, його ім'я і прізвище, адреса і номер телефону, тоді як про юридичних осіб - особистий номер, привласнений фірмі-власнику, назва фірми, тип її діяльності, адреса, номер телефону й ім'я контактної особи. Особистий номер власника є унікальним для кожної приватної чи юридичної особи, причому в межах усіх відділень компанії DreamHome.
6. Клієнтів, зацікавлених в огляді й оренді об'єктів нерухомості, у компанії прийнято називати орендарями. Потенційний орендар зв'язується по телефону з деяким відділенням компанії, у якому йому можуть запропонувати оглянути різні об'єкти нерухомості. Інформація, що зберігається по кожнім проведеному огляді об'єкта, включає ім'я й адреса орендаря, номер і адреса оглянутого об'єкта нерухомості, дату огляду, а також будь-які коментарі орендаря з приводу оглянутого об'єкта. Орендар може оглядати будь-яку кількість об'єктів нерухомості.
7. Про кожного орендаря зберігається наступна інформація; особистий номер орендаря, ім'я і прізвище, адреса, номер телефону, кращий тип об'єкта нерухомості, а також максимально припустима для нього орендна плата. Номер орендаря є унікальним для усіх відділень компанії DreamHome.
8. При здачі деякого об'єкта нерухомості в оренду орендар укладає з компанією договір про оренду обраного їм об'єкта. Докладна інформація про договір на оренду включає: номер орендної угоди, особистий номер орендаря, його ім'я й адреса, номер орендованого об'єкта нерухомості і його адреса, установлену щомісячну орендну плату, а також дати початку і закінчення терміну дії даного договору на оренду.
9. У разі потреби зведення про об'єкти, що здаються в оренду, нерухомості можуть розміщатися в рекламних оголошеннях, які друкуються у місцевих і центральних газетах. По кожному рекламному оголошенню зберігається наступна інформація: номер рекламованого об'єкта нерухомості, його адреса і тип, дата публікації оголошення, назва газети і вартість публікації оголошення. Про кожну газету в компанії зберігаються такі зведення, як назва газети, адреса редакції, номер телефону, номер факсу, а також ім'я контактної особи.