Характеристика та призначення CASE-засобу Erwin
За допомогою CASE-засобу ERwin можна автоматизувати проектування БД і генерацію її опису мовою вибраної СКБД {Oracle, Sybase, MS SQL Server та ін.), а також виконати реінжи-ніринг бази даних. В ERwin існує два рівні представлення і моделювання БД: логічний і фізичний. На логічному рівні проектується інформаційна модель предметної області, тобто концептуальна (інфологічна) модель. На фізичному рівні проектується модель з урахуванням специфіки та особливостей вибраної СКБД, тобто фізична (даталогічна) модель. Розділення процесу проектування на логічну та фізичну моделі дозволяє вирішити проблему ідентифікації об'єктів На логічному рівні об'єктам можна присвоїти імена, які зрозуміліші спеціалістам ПО, а на фізичному —- побудувати імена за тими правилами, які вимагає вибрана СКБД. Тобто у кожного імені може бути свій псевдонім. У середовищі ERwin можна виконувати пряме (Forward Engineering) та зворотне (Reverse Engineering) проектування. Пряме проектування полягає в тому, що на основі логічної моделі, яка проектується в діалоговому режимі, ERwin автоматично генерує фізичну модель для вибраної СКБД. При зворотному проектуванні на основі фізичної моделі ERwin може згенерувати системний каталог СКБД і відповідний SQL-скрипт. У той же час згідно з системним каталогом і SQL-скриптом ERwin може відтворити логічну модель БД і потім на її основі згенерувати фізичну модель з використанням іншої СКБД. Діаграма ERwin складається з трьох основних блоків: сутностей (об'єктів), атрибутів і зв'язків. В меню ERwin існують такі режими відображення:
» режим «сутності» використовується для відображення сутностей у вигляді прямокутників. Усередині прямокутника відтворюється ім'я сутності (для логічної моделі) або ім'я таблиці (для фізичної моделі);
* режим «визначення сутності» слугує для створення презен-таційних діаграм;
* режим «атрибути» використовується для занесення характеристик сутностей, якими є атрибути. В цьому режимі прямокут-ник-сутність розділяється лінією на дві частини: у верхній відображаються атрибути первинного ключа, у нижній — неключовіатрибути;
* режим «первинні ключі» показує лише атрибути, що входятьдо складу первинного ключа;
* режим «піктограми». Для презентаційних цілей кожній таблиці може бути призначена відповідна піктограма (bitmap);
* режим «показ дієслівної фрази» відображає на дугах зв'язків дієслова, які зв'язують сутності між собою (для логічного рівня) чи імена зовнішніх ключів (для фізичного рівня).
37.Характеристика типів зв’язків в Erwin.
В ERwin зв'язки можуть характеризуватися таким чином: ідентифікуючий зв'язок встановлюється між незалежною батьківською сутністю та залежною дочірньою сутністю. Остання при ідентифікуючому зв'язку є завжди залежною При встановленні ідентифікуючого зв'язку атрибути первинного ключа батьківської сутності автоматично переносяться до складу первинних атрибутів дочірньої сутності. В дочірній сутності первинні ключі батьківської сутності позначаються як вторинні літерами (FK). При генерації фізичної моделі атрибути первинного ключа отримають ознаку NOT NULL.
При встановленні неідентифікуючого зв'язку дочірня сутність залишається незалежною.
Неідентифікуючим є зв'язок, коли екземпляр дочірньої сутності ідентифікується інакше, ніж через зв'язок з батьківською сутністю. Атрибути, які складають первинний ключ батьківської сутності, при цьому мігрують до складу неключових атрибутів дочірньої сутності. Неідентифікуючий зв'язок використовується для зв'язування незалежних сутностей. У разі обов'язкового зв'язку {Not Null) при генерації БД атрибут зовнішнього ключа отримає ознаку NOT NULL, незважаючи на те, що зовнішній ключ не ввійде до первинного ключа дочірньої сутності. У разі необов'язкового зв'язку (Nulls Allowed) зовнішній ключ може набувати значення Null.
Категоріальним зв'язком об'єднуються сутності, що належать до однієї категорії. Деякі сутності визначають цілу категорію об'єктів одного типу. У такому разі створюється сутність для визначення категорії і для кожного елемента категорії, Зв'язок, що об'єднує такі сутності, називається категоріальним. Батьківська сутність категорії називається супертипом, дочірня — підтипом. ). Залежно від того, чи всі можливі сутності-підтипи включені до моделі, категорія може бути повною чи неповною.
Повний категоріальний зв'язок (повна категорія) — це такий зв'язок, коли кожному екземпляру сутності-супертипу обов'язково відповідає певний екземпляр сутності-підтипу.
Неповний категоріальний зв'язок (неповна категорія) — це такий зв'язок, коли певним екземплярам сутності-супертипу немає відповідних сутностей-підтипів
Таким чином, зв'язок визначає сутність як залежну або незалежну. Розрізняють кілька типів залежних сутностей.
* Характеристична— залежна дочірня сутність, яка зв'язана лише з однією батьківською сутністю і за змістом зберігає інформацію про характеристики батьківської сутності.
• Асоціативна — залежна дочірня сутність, яка зв'язана з кількома батьківськими сутностями.
• Іменна — окремий випадок асоціативної сутності, яка не має своїх власних атрибутів, а лише атрибути батьківських сутностей, що мігрували як зовнішні ключі.
Потужність зв'язку — це відношення кількості екземплярів батьківської сутності до відповідної кількості екземплярів дочірньої сутності.