Предварительная подготовка
На
основании результатов обследования
объекта для своего варианта задания
подготовить список
имен
сущностей.
Имя
сущности -
существительное в единственном
числе. Существительное может иметь
определение. Примеры имен сущностей:
Студент, Учебная Группа
|
Для
каждой сущности записать:
словесное
определение сущности;
примеры
возможных запросов по отношению к
этой сущности;
несколько
экземпляров сущности, задав их
основные свойства - атрибуты, в
произвольной форме;
Продумать
связи
между сущностями.
На
уровне логической модели наряду
со связью "один ко многим"
допустима связь “многие ко многим”
|
Для
каждой связи подготовить:
словесное
определение связи - какие сущности
связываются, в каком отношении, для
отношения “один ко многим” отметить:
имя
связи, записав глагольную фразу,
отражающую:
для
связи “один ко многим” - одну фразу,
отношение родительской сущности к
дочерней;
для
связи “многие ко многим”- две фразы,
отношения слева направо / справа
налево.

|
Установим
правила ссылочной целостности
для идентифицирующей связи типа
Р (1 или много). В этом случае на
каждый экземпляр родительской
сущности должен ссылаться хотя
бы один экземпляр дочерней.сущности.
Воспользуемся сокращениями ERwin
для указания характеристик связей
на хранимых отображениях:
|
|
|
Сущность
|
Операция
|
D
|
I
|
U
|
<Имя
1> - дочерняя
|
R
|
R
|
R
|
<Имя
2> -родительская
|
C
|
C
|
R
|
|
D - Delete,
удаление записи
I - Insert ,
добавление записи
U - Update,
обновление записи
R - Restric,
ограничение: нельзя удалять/обновлять
экземпляр родительской сущности,
пока имеется хотя бы один ссылающийся
на него экземпляр дочерней
сущности.
С - Cascade,
тотальное удаление/обновление
экземпляров дочерней сущности,
ссылающихся на удаляемый экземпляр
родительской сущности.
N - None,
при удалении экземпляра родительской
сущности ссылающиеся на него
экземпляры дочерней сущности
остаются без изменений, т.е.
ссылаются на отсутствующий
экземпляр и не могут быть
классифицированы.
|
|
|
Порядок выполнения 1-ой части работы
1.
Создание хранимого отображения
"Определения сущностей" - закладка
1
Открыть
диалог
Computer Associates Erwin, включить
опцию
“Create a new model”. В
окне
Create Model/New Model Type выбрать
опцию
Logical/Physical. Открыть
диалог
Stored
Display Settings
, выполнив
►Format ►Stored Display… (вариант:
выполнить
команду
Stored Display… из
контекстного
меню
рабочей
области
Erwin)
В
диалоге Stored
Display
Editor
сделать настройки хранимого отображения
нажав
кнопку Rename,
задать имя отображения “Определение
сущностей” вместо имени по умолчанию
- Display1;
в
закладке General
указать авторов работы;
в
закладке Logical
выбрать отображение сущностей на
уровне определений (рамка Display Level,
Definition)
с иконками сущностей (рамка Entity
Option, опция Entity Icon) и отключить все
дополнительные опции отображения
связей (рамка Relationship Option).
-
С
помощью панели
инструментов конструктора
создать сущности будущей модели:
|
|
Вместо
имен по умолчанию (E/1, E/2, …) набрать
подготовленные имена сущностей.
Выделить
родительские сущности, изменив цвет
шрифта
и
цвет заливки
.
С
помощью контекстного меню сущностей
вызвать диалог Entity
Properties
и описать каждую сущность:
Описав
одну сущность, переключиться на
другую, выбрав ее из распахивающегося
списка Entity и повторить подпункты
пункта 6 для ее описания .
Установить
нотацию IDEFX1
(►Model
►Model
Properties…,
закладка Notation)
и создать связи:
задать
тип связи щелчком по
соответствующей кнопке;
для
каждой связи выбранного типа щелкнуть
сначала по родительской, а затем по
дочерней сущности;
для
связи many-to-many
создать сущность-ассоциацию
(контекстное
меню
связи/диалог
Create Association Entity)
2.
Создание хранимого отображения
"Определения связей" - закладка
2
-
Для
создания и настройки хранимого
отображения вызвать диалог Stored
Display Settings
|
(выполнить
►EDIT ►Stored Display… или вызвать
контекстное меню рабочей области
Erwin и выполнить команду Stored Display…).
Выполнить New
и ввести
название новой закладки “Определение
связей)
|
В
закладке Logical
диалога Stored
Display Settings
задать отображение сущностей на
уровне сущностей (рамка Display Level -
Entity)
с иконками сущностей (рамка Entity Option
- опция Entity Icon) и включить все
дополнительные опции отображения
связей (рамка Relationship Option - опции Verb
Phrase, Cardinality, Referential Integrity).
Изменяя
цвета подписей к линиям связи, выделить
связи 1-го уровня (родительские), связи
2-го уровня и т.д.: вызвать
диалог Default Fonts
& Color из
меню ►Format►Default Fonts &
Colors…
С
помощью редактора связей Relationship
Editor задать свойства связей:
в
контекстном меню любой связи выполнить
команду ►Relationship Properties…
для вызова редактора связей;
чтобы
задать новую связь, нажать кнопку
New…
редактора и в появившемся окне New
Relationship
выбрать из выпадающих списков Parent
и Child имена связываемых сущностей,
установить переключатель в рамке
Type на нужный тип связи и, нажав ставшую
доступной кнопку ОК,
вернуться в редактор связей
в
редакторе связей для каждой связи
из выпадающего списка Relationship:
на
вкладке General
в
окнах
Parent-to-Child и
Child-to-Parent задать
имя
связи;
|
Когда
тип связи "многие ко многим",
задается только имя связи
|
2. Использование Erwin для разработки
модели данных. Логическая модель.
Атрибуты сущностей. Физическая
модель.
|
Цель
:
Создать полную атрибутивную модель,
т.е. модель, содержащую все сущности
в 3-ей нормальной форме со всеми
атрибутами и связями. Выполнить
преобразование логической модели
в физическую.
|
Предварительная подготовка
Для
каждой сущности, созданной в 1-ой
части лабораторной работы:
подготовить
имена атрибутов логического и
физического уровня;
указать
домены типов атрибутов и ограничения
на их значения;
выделить
среди атрибутов или добавить
искусственный первичный ключ;
задать
имя роли для внешних - мигрирующих
ключей дочерних сущностей;
отметить
потенциальные - альтернативные
ключи;
сделать
список инверсионных входов.
Порядок
выполнения 2-ой части работы
Открыть
модель, созданную при выполнении
лабораторной работы №1 - "Сущности
и связи"
Создать
хранимое отображение “Первичные
ключи”(закладка 3):
вызвать
диалог Stored
Display Settingr,
выполнив ►Format
►Stored Display… или ►Stored Display… из
контекстного меню рабочей области
Erwin
нажав
кнопку New…
этого диалога, задать имя нового
отображения;
в
закладке Logical
выполнить настройку отображения:
рамка
Display Level - опция
Primary
Key
рамка
Relationship Option - опция
Verb Phrase
рамка
Entity Option - опции
Rolename/Attribute, Primary Key Designation, Foreign Key
Designation, Show Migrated Attributes, Entity Icon
Ввести
первичные ключи в родительские
сущности. Для их ввода:
Выполнить
команду Attributes
… из контекстного меню любой
сущности для вызова редактора
Attributs
В
выпадающем списке Entity
окна редактора выбрать нужную
родительскую сущность, например,
"Студент"


задать
логическое - Attribute
Name
имя ключа
указать
тип щелчком по соответствующему
домену (в приведенном примере -
String)
закрыть
диалог New
Attribute
нажатием на кнопку OK
В
закладке General
включить опцию Primary
Key
В
закладке Definition
записать, является ли созданный
ключ реальным или автоинкрементным
(из-за отсутствия явных уникальных
атрибутов)
повторить
это для других родительских
сущностей
Задать
имена ролей для мигрирующих ключей:
Выполнить
команду Relationship Properties
из контекстного меню любой связи.
В
появившемся окне редактора связей
выбрать закладку RoleName
и набрать имя роли в поле RoleName.
Проверить
ссылочные правила в закладке RI
Actions
При
выходе из этих полей имя роли будет
присвоено текущему мигрирующему
атрибуту.
Отобразить
полные имена атрибутов (<имя
роли>.
<функциональное
базовое имя>) в хранимом изображении
“Первичные ключи”:
Задать
первичные ключи для дочерних
сущностей (смотри
пункт 3).
Расположить
сущности на экране так, чтобы они
хорошо смотрелись, и изменить, если
нужно, масштаб изображения; выполнить
►File
►Save.
Создать
еще одно хранимое изображение -
“Атрибуты сущностей” (закладка
4) (в контекстном меню Erwin
►Stored
Displa
…y,
кнопка
New…)
Сделать
настройки для этого изображения,
выбрав закладку Logical:

рамка
Display Lever - выбрать
Attribute
рамка
Relationship Option - отключить отображения
всех опций связей
рамка
Entity Option - включить все опции
Описать
все атрибуты всех сущностей,
выполнив команду Attributes
из
контекстного меню любой сущности.
В редакторе атрибутов:
Пока
не кончатся атрибуты текущей
сущности:
создавать
очередной атрибут (кнопка New…)
в
диалоге New
Attribute
задавать логическое (Attribute
Name)
имя атрибута и домен его типа
(щелчок мышью)
в
закладку Definition
заносить подробное определение
атрибута;
в
закладку Note
- ограничения на значения атрибута,
выявленные в процессе обследования.
Сменить
сущность, выбрав следующую из
распахивающегося списка Entity,
и повторить создание атрибутов.
Для
каждой сущности отметить
альтернативные ключи и инверсионные
входы.
Открыть
закладку Key
Group
редактора атрибутов
Для
создания новой группы нажать
кнопку
справа
от Key Group Membership, чтобы вызвать диалог
Key
Group



в
рамке Key Group Type этого диалога с
помощью переключателя указывать
тип группы - альтернативный ключ
или инверсионный вход (в приведенном
примере - альтернативный ключ)
в
рамке Name задавать имя ключа
нажатием
кнопки OK
вернуться из диалога New
Key Group
в Key
Group
При
необходимости добавить атрибуты
из списка атрибутов сущности -
Available Attributes в список атрибутов
созданной группы - Key Group Members.
После
создания всех групп и возврата в
окно Erwin в модели должны быть отражены
все сущности и их атрибуты, а у
атрибутов, вошедших в альтернативные
ключи или инверсионные входы стоять
ссылки на соответствующие группы

В
приведенном рисунке для сущности
"Студент" созданы два
альтернативных ключа "Фамилия,
Имя" (АК1) и "Дата рождения"
(АК2), а также инверсионный вход "Код
группы, дата рождения"(IE1).
Создать
новое хранимое изображение
"Физическая модель", оставив
для него те же настройки, что и для
"Атрибутов сущностей".
Переключиться
на физический уровень.
Выполнить
Forward
Engineer/Generate
предварительно
создав в среде Access
пустую базу данных !!!!
В
окне Access Connection ввести в User Name
“ADMIN”, а в окне Database – путь к только
что созданной пустой базе данных.
Выполнить Connect и просмотреть
созданную базу данных в Access-е.
Требования
к оформлению отчета
Отчет
должен содержать:
Порядок
выполнения работы.
Распечатки
хранимых изображений.
Для
каждого атрибута – физическое и
логическое имена, домен, словесное
описание (Definition), ограничения
(Note), значение по умолчанию.
Информация
должна быть подготовлена вручную
и с помощью созданных в среде ERwin
отчетов. Для этого
Нажать
кнопку
(Report
Browser) на панели инструментов
ERwin.
Завести
новый отчет File/New
ERWin
Report,
дать ему имя, выбрать категорию
и включить соответствующие опции
в отчет. Просмотреть отчет.
|
|
|