Программа ERwin предназначена для построения ИЛМ с использованием методологии IDEF1X и автоматической генерации соответствующей ДЛМ с учетом особенностей выбранной СУБД. Результатом генерации ДЛМ является схема БД, представленная на языке SQL, и созданные таблицы, входящие в БД. ERwin может генерировать ДЛМ для более чем 20 реляционных и нереляционных СУБД.
Для обозначения моделей данных ERwin использует терминологию, отличную от рассмотренной в лекциях: ИЛМ именуется логической (Logical) моделью, а ДЛМ — физической (Physical) моделью.
Создание БД с помощью ERwin начинается с построения логической модели. После описания логической модели проектировщик выбирает необходимую СУБД, и ERwin автоматически создает соответствующую физическую модель. На основе физической модели ERwin может сгенерировать схему БД на языке SQL и сформировать таблицы, образующие БД.
Этот процесс называется прямым проектированием (Forward Egineering) и обеспечивает масштабируемость: создав одну логическую модель, можно сгенерировать физические модели для любой СУБД, поддерживаемой программой ERwin.
С другой стороны, ERwin способен для существующей БД воссоздать физическую и логическую модели, т.е. обеспечить обратное проектирование (Reverse Engineering). На основе полученной логической модели можно сгенерировать физическую модель для другой СУБД и затем сформировать новую БД. Следовательно, ERwin позволяет решить задачу по переносу структуры БД с одной СУБД на другую.
Задание 1.Запустить программу ERwin из Windows NT командой Пуск |Программы | PLATINUM ERwin | PLATINUM ERwin.
Пояснения.После запуска программы ERwin появляется окно программы со строкой главного меню, панелью инструментов и рабочей областью, в которой находится палитра инструментов с кнопками.
Вид палитры инструментов (ERwin Toolbox) зависит от выбора логической или физической модели, который осуществляется с помощью списка, расположенного в правой части панели инструментов:
Для логической модели палитра инструментов имеет следующие кнопки:
— указатель элемента модели. Элементами модели являются сущности и связи;
— добавление сущности;
— добавление категориальной связи (используется для описания обобщенных объектов (сущностей);
— добавление текстового блока в модель;
— перемещение атрибутов внутри сущностей или между сущностями (способомdrag
— добавление идентифицирующей связи;
— добавление связиM:N;
— добавление неидентифицирующей связи.
3. Использование программы eRwin
Рассмотрим в качестве предметной области предприятие, в структуре которого имеются отделы, и спроектируем БД для хранения сведений о служащих, работающих в отделах, и детях, имеющихся у служащих. Описание сущностей и связей между ними представлено ниже:
На ER-диаграмме атрибут ChiName (Имя ребенка) подчеркнут штриховой линией, чтобы указать на то, что по имени можно идентифицировать ребенка, только «подчинив» его служащему-родителю, т.е. ребенок является зависимой сущностью по отношению к служащему. (Сделать сущность РЕБЕНОК независимой можно, если пронумеровать всех детей и использовать их номера для однозначной идентификации.)
Для использования программы ERwin связь объектов, показанную на ER-диаграмме, необходимо представить в соответствии с методологией IDEF1X (см. табл.1) так, как показано на рис.1.
Полученная диаграмма описывается средствами ERwin и помещается в файл с расширением ER1. После выбора СУБД программа ERwin формирует физическую модель БД как совокупность взаимосвязанных таблиц. Для последующего использования БД удобнее, чтобы имена таблиц и атрибутов записывались латинскими буквами, поскольку не все СУБД допускают работу с кириллицей. В табл.2 приведено соответствие между именами логической и физической моделей и указаны типы атрибутов.
ОТДЕЛ
Номер отдела Р
Табельный номер Р
Рис.1. Логическая модель.
Задание 2.Описать сущности, входящие в логическую модель, показанную на рис.1.
Порядок выполнения задания 2.
- На панели инструментов задать режим создания логической модели (Logical).
- Перейти к созданию новой модели, выбрав в главном меню команду File | New. В диалоговом окне ERwin Template Selection выбрать шаблон Blank Diagramи нажать кнопку ОК.
- На палитре инструментов нажать кнопку
- В рабочем поле диаграммы щелчком мыши разместить три сущности и после этого нажать кнопку
на палитре инструментов.
- Курсором мыши указать на первую сущность в рабочем поле диаграммы, щелкнуть правой кнопкой мыши и выбрать из локального меню команду Entity Editor, чтобы появилось одноименное диалоговое окно.
- В области Name набрать имя сущности Department, которое будет использоваться в модели.
- На закладке Definition в одноименной области набрать определение сущности (Отдел предприятия) и нажать кнопку ОК.
- Щелкнуть правой кнопкой на сущности Department и выбрать из локального меню команду Attribute Editor для описания атрибутов сущности.
- В одноименном диалоговом окне нажать кнопку New и в появившемся диалоговом окне New Attribute указать имя атрибута, имя соответствующего столбца в таблице БД и тип данных, хранящихся в столбце (домен): в области Attribute Name набрать Номер отдела, в области Column Name — DepId, в области Domain щелчком мыши выбрать числовой тип Number.
- Нажать кнопку ОК для возврата в диалоговое окно Attribute Editor и на закладке General щелчком мыши установить признак Primary Key, чтобы отметить описанный атрибут как входящий в ключ сущности.
- Описать атрибут Название отделасогласно табл.2, повторив пункты 9-10, но не включая этот атрибут в состав ключа сущности.
- Нажать кнопку ОК в диалоговом окне Attribute Editor.
- Чтобы имена атрибутов изображались кириллицей, нужно щелкнуть правой кнопкой мыши на сущности Department, выбрать из локального меню команду Object Font/Color, на закладке Text выделить мышью имена атрибутов и выбрать подходящий шрифт (например, PEW Report или Consultant). После изменения шрифта у всех имен нажать кнопку ОК.
- Описать сущности СЛУЖАЩИЙ и РЕБЕНОК согласно табл.2, выполнив действия, указанные в пунктах 5-13, применительно к этим сущностям.
Примечание.Согласно принятым в IDEF1X соглашениям имя атрибута должно быть уникально в рамках модели. При попытке использовать уже описанное имя атрибута (например, Дата рожденияв сущности РЕБЕНОК) ERwin формирует уникальное имя (Дата рождения/2). Отменить контроль уникальности имен атрибутов можно командой главного меню Option | Unique Name | Allow. Задание 3.Задать связи между сущностями. Порядок выполнения задания 3.
- Соединить сущность ОТДЕЛ и СЛУЖАЩИЙ неидентифицирующей связью: на палитре инструментов нажать кнопку
, щелкнуть мышью по сущностиОТДЕЛ, а затем по сущности СЛУЖАЩИЙ. Таким образом будет установлена связь «один ко многим». При этом ключ сущности-родителя появится среди атрибутов сущности-потомка и будет помечен как внешний ключ (FK).
- Щелкнуть правой кнопкой мыши по связи и в локальном меню выбрать команду Relationship Editor, чтобы задать такие дополнительные характеристики связи, как имя связи (Verb Phrase) и мощность (Cardinality).
- В диалоговом окне Relationship Editor в области Parent-to-Child задать имя связи со стороны сущности-родителя (состоит из), а в области Child-to-Parent — со стороны сущности-потомка (работает в).
- Задать мощность связи, щелкнув мышью по радиокнопке One or More (P) в области Cardinality.
- Задать обязательный класс принадлежности для сущности-потомка СЛУЖАЩИЙ, щелкнув в области Relationship Type по радиокнопке No Nulls (служащий обязательно работает в каком-либо отделе).
Примечание.Расположенная в области Relationship Type радиокнопка Nulls Allowed соответствует необязательному классу принадлежности сущности-потомка и разрешает использование пустых значений NULL в качестве значений внешнего ключа, задающего связь служащего с отделом. На диаграмме такая «необязательная» неидентифицирующая связь помечается белым ромбом со стороны сущности-родителя. В физической модели, формируемой программой ERwin, такой связи двух сущностей соответствуют две таблицы, в одной из которых в столбце внешнего ключа будут пустые значения. Если наличие пустых значений недопустимо, то связь 1:N для сущности-потомка с необязательным классом принадлежности лучше заменить связью N:M, чтобы в физической модели информация о связях конкретных экземпляров сущности-родителя и сущности-потомка хранилась в отдельной таблице.
- Нажать кнопку ОК в диалоговом окне Relationship Editor и проверить, появились ли на диаграмме имя связи и обозначение мощности связи. Если эти характеристики отсутствуют, то для их отображения следует щелкнуть правой кнопкой мыши по любому свободному месту диаграммы, в локальном меню выбрать команду Display Options/Relationship и щелчком мыши отметить пункт Verb Phrase. Затем таким же способом отмечается в локальном меню пункт Cardinality. При необходимости изменить шрифт для имени связи.
- Соединить сущности СЛУЖАЩИЙ и РЕБЕНОК идентифицирующей связью: на палитре инструментов нажать кнопку
, щелкнуть мышью по сущностиСЛУЖАЩИЙ, а затем по сущности РЕБЕНОК. Таким образом будет установлена связь «один ко многим», сущность РЕБЕНОК будет изображена как зависимая, и ключ сущности-родителя появится среди атрибутов сущности-потомка, образующих ее ключ, и будет помечен как внешний ключ (FK).
- Задать имя (имеет/принадлежит) и мощность (Р) связи так, как указано в п.2-4.
Задание 4.Сохранить модель в файле INFORM.ER1 на устройстве H командой File|Save As… Задание 5.Ознакомиться с уровнями отображения диаграммы, вызвав локальное меню щелчком правой кнопки мыши; выбрать команду Display Level и уровень отображения: сущности (Entity), атрибуты (Attribute), первичный ключ (Primary Key), определение (Definition), иконки (Icon).Записать в отчет, как представлена на диаграмме сущностьСЛУЖАЩИЙпри выборе каждого уровня отображения.Задание 6.Сформировать физическую модель, раскрыв на панели инструментов расположенный справа список и выбрав из него тип модели Physical. Записать в отчет структуру физической модели (таблицы и их связи).Задание 7.Адаптировать спроектированную базу данных для СУБД FoxPro. Порядок выполнения задания7.
- В главном меню выбрать команду Server|Target Server, в появившемся диалоговом окне ознакомиться с перечнем СУБД (DBMS), поддерживаемых программой ERwin, затем щелчком мыши выбрать радиокнопку FoxPro и нажать кнопку ОК.
- В ответ на запрос о преобразовании типов данных нажать кнопку Yes.
- Щелкнуть правой кнопкой мыши по таблице Department и выбрать в локальном меню команду Column Editor для уточнения свойств столбцов таблицы.
- В диалоговом окне Column Editor щелкнуть мышью по закладке FoxPro, чтобы адаптировать заданные в логической модели типы данных, хранящихся в столбцах, к особенностям СУБД FoxPro.
- В области Column выделить столбец DepId и на закладке FoxPro задать тип Numeric(6,0), а затем выделить столбец DepName и задать тип Character(20).
- Нажать кнопку ОК для сохранения изменений.
- Выполнить п.3-6 для таблиц Employee и Children, выбрав самостоятельно размер и разрядность строковых и числовых столбцов.
Задание 8.Создать БД для выбранной СУБД командой главного меню Tasks | Forward Engineering /Schema Generation. Пояснение. В появившемся диалоговом окне представлены режимы генерации объектов БД — таблиц, столбцов, индексов и т.д. Нажав кнопку Preview, можно вызвать окно, в котором отображаются операторы языка SQL, формируемые программой ERwin для создания БД и задающие схему БД.Записать в отчет схему БД на языкеSQL.Создание БД запускается нажатием кнопки Generate. При этом появляется диалоговое окно, предназначенное для установления связи с СУБД: из списка следует выбрать имя СУБД (FoxPro) и последовательно нажать кнопку Connect и Close. Процесс генерации схемы и создания БД демонстрируется в окне Generate Database Schema. После завершения процесса в активных диалоговых окнах последовательно нажать кнопки ОК, Close, ОК. Задание 9.Найти на компьютере папку, в которую помещены таблицы БД Departme, Employee, Children, находящиеся в одноименных файлах с расширением DBF. Записать в отчет имя папок с модельюINFORM.ER1и таблицами БД.Закрыть модель командой главного меню File | Close. Задание 10.Получить у преподавателя вариант задания на проектирование БД, описать объекты и представить связь объектов в соответствии с методологиейIDEF1X.Записать в отчет полученную логическую модель.Задание 11.Использовать программу ERwin для проектирования и создания БД, соответствующей варианту задания, выбрав СУБД FoxPro. Записать в отчет структуру сформированной физической модели БД, схему БД на языкеSQLи имя папки с таблицами БД.
Источник: studfile.net
Первые шаги с CA ERwin Process Modeler. Часть 1
Многие, кто начинает использовать CA ERwin Process Modeler , сталкиваются с тем, что не знают, с чего начать работу, и сразу же энтузиазм куда-то улетучивается. Я тоже прошел через это, поэтому и решил помочь в первых шагах по освоению этого программного продукта. Но хотелось бы сразу оговориться, что это руководство не даст вам тех знаний, которые необходимы для создания полноценной модели, хотя бы в силу того, что целью является показать, как использовать продукт, а не методику моделирования.
Открываем программу: заходим в Пуск > Все программы > CA > ERwin > ERwin Process Modeler r7.3 > Process Modeler .
По умолчанию при запуске открывается диалоговое окошко (если его нет, нажмите File > New… ):
В этом окне нам предлагается выбрать, с чего мы хотим начать работу:
- Create model — создать новую модель
- Open model — открыть существующую модель
- Open model from ERwin MM — открыть модель из среды групповой разработки CA ERwin Model Manager
- Создадим новую модель, для этого введем в поле » Name » имя нашей модели — «Завтрак» (не думаю, что кто-то не разбирается в данном процессе, так что моделированием его и займемся). Тип выберем IDEF0, что соответствует моделированию в методике, описывающей совокупность взаимодействующих работ и функций (IDEF3 — логика взаимодействия, DFD — потоки данных), несколько подробнее мы остановимся на каждой из методик в процессе работы. Нажмем «OK», чтобы подтвердить введенную информацию.
В следующем окне вводим имя автора и инициалы в вкладке General :
Вкладка Numbering — в этой вкладке задаются опции нумерации элементов модели.
Actyvity — группа параметров, отвечающая за нумерацию функциональных блоков:
Number prefix — символ предшествующий номеру блока (по умолчанию «А»);
Show prefix — отображение префикса;
Use persistent numbers — использование постоянной нумерации для диаграмм IDEF0 (если опция включена, то в случае перемещения блока нумерация будет сохранена, если же опция отключена, то нумерация будет автоматически изменена в соответствии со стандартом IDEF0). На диаграммах IFEF3 и DFD используется только постоянная нумерация;
Numbering convention — задание параметров нумерации:
1, 2, 3, … — задание последовательной нумерации;
Use diagram numbering format — нумерация каждой функции содержит в себе уровень декомпозиции.
None — скрытие нумерации функциональных блоков;
Next Numbers — зона, содержащая опции, отвечающие за значения, с которых начнется нумерация:
Data Store — задание первого значения для хранилищ данных на DFD-диаграммах;
External — задание первого значения для внешней ссылки на DFD-диаграммах;
UOW — задание первого значения для UOW на IDEF3-диаграммах.
Оставим все без изменения.
Следующая вкладка — Display — остановимся на ней поподробнее.
Activity Numbers — отображение нумерации функциональных блоков;
Data Store Numbers — отображение нумерации хранилищ данных в нотации DFD;
External Numbers — отображение нумерации внешних сущностей;
Arrow Names — отображение названий стрелок;
ICOM codes — отображение ICOM-кодов;
Colors — отображение цветов;
ABC Data — отображение данных стоимостного анализа;
Tunnels — отображение квадратных и круглых скобок на стрелках при обозначении незатоннелированных и затоннелированных стрелок соответственно;
Shadows — отображение теней объектов;
Leaf Corners — отображение риски на левом верхнем углу блока, говорящей об отсутствии декомпозиции соответствующей функции.
Squiggles — отображение сноски на названия стрелок;
Block highlighting — отображение подсветки выделенного блока;
Dates in long format in Kit — отображение даты в длинном формате (короткий формат — 10/1/04, длинный формат — October 1, 2004).
Группа переключателей ABC Units отвечает за содержимое поля стоимостного анализа, а именно: Cost — стоимость, Frequency — частота, Duration — длительность.
В группе Off-Page Reference label указывается маркер межстраничной ссылки. В качестве маркера может выступать C-number-диаграммы ( C-number ), номер диаграммы по узлу ( Node number ) и имя диаграммы ( Diagram name ).
И на этой вкладке оставим все по умолчанию.
Далее идет вкладка Layout , параметры которой отвечают за размещение объектов на диаграмме.
Группа Diagram Objects отвечает за объекты диаграмм:
Allow Box to be moved — возможность перемещения объектов диаграмм вручную;
Allow Box to be resized — возможность изменения размеров объектов диаграмм вручную;
Подгруппа Fit Name in Box позволяет задать опции размещения текста в блоке, а именно:
Do not resize or wrap — текст будет вписан в блок без учета размеров;
Wrap text to fit box — текст будет подогнан по размеру блока;
Automatically resize box to fit text — размер блока будет подогнан по тексту;
Подгруппа Arrows отвечает за размещение стрелок:
Automatically space arrows — автоматическое размещение стрелок на диаграмме (например при задании новой стрелки или изменении размера функционального блока, стрелки на границах блока будут автоматически размещены на одинаковом расстоянии друг от друга);
Sort arrows — минимизация пересечений стрелок на диаграммах IDEF3 и DFD;
Break arrows at intersection — эта опция позволяет создать разрывы стрелок, что облегчает восприятие диаграмм. Можно задать разрыв горизонтальных (Break horizontal arrow) и вертикальных (Break vertical arrow) стрелок.
Зададим опции, как показано на изображении.
Cost — зона задания параметров отображения стоимости:
Currency description — определение валюты. К сожалению, рублей в выпадающем списке нет, но это легко исправить, просто вписав нужную валюту;
Symbol placement — определение положения знака валюты относительно числа;
Symbol — определение знака валюты;
Number of decimals in diagrams — определение числа десятичных знаков при отображении на диаграмме;
Number of decimals in reports — определение числа десятичных знаков при составлении отчетов.
Time — зона задания параметров отображения времени:
Time Unit — определение единиц измерения времени;
Decimals in frequency values — определение количества знаков при задании частоты;
Decimals in duration values — определение количества знаков при задании длительности;
Проверьте, чтобы у Вас все было так же, как на рисунке.
Вкладка Page Setup — опции просмотра и печати страницы:
Units — определение единиц измерения (дюймы или миллиметры);
Sheet size — определение размеров листа;
Header — определения способа заполнения заголовка диаграммы ( IDEF Kit — в соответствии с методологией IDEF, Custom Header — заданный пользователем на следующей вкладке);
Footer — определение способа заполнения нижнего колонтитула ( IDEF Kit — в соответствии с методологией IDEF, Custom Header — заданный пользователем на следующей вкладке).
Ничего изменять не будем.
Итак, последняя вкладка в этом диалоговом окне — Header/Footer . Здесь определяется пользовательский вид заголовка и нижнего колонтитула.
Доступна следующая информация для заполнения полей:
Author — фамилия автора,
Author Initials — инициалы автора,
Creation Date — дата создания,
Date and Time -дата и время,
Date (long) — дата в полном формате записи,
Date (short) — дата в кратком формате записи,
Diagram Name — имя диаграммы,
Diagram Number — номер диаграммы,
Diagram Status — статус диаграммы,
Model Name — имя модели,
Model Status — статус модели,
Page Number — номер страницы,
Project Name — имя проекта,
Revision Date — дата пересмотра.
Также все оставим без изменения.
Подтвердим сделанные изменения — нажмем «OK».
Сразу создается заготовка для контекстной диаграммы.
Ссылки по теме
- Подписаться на рассылку » CASE-технологии»
- Курсы обучения по продуктам компании CA
- Приобрести продукты компании CA в электронном магазине ITShop.ru
- Обратиться в «Интерфейс» за дополнительной информацией/по вопросу приобретения продуктов
10.2009 | ||
Источник: www.interface.ru |