
- •Методы и средства проектирования информационных систем
- •Предисловие
- •1. Теоретические основы систем управления
- •1.1. Основные понятия
- •1.2. Классификация систем
- •1.3. Структура системы управления
- •2. Основы создания информационной системы предприятия
- •2.1. Методологии и средства разработки ис
- •2.2. Жизненный цикл ис
- •2.3. Структурный анализ
- •3. Разработка консалтинговых проектов
- •3. 1. Цели и основные этапы разработки консалтинговых проектов
- •3.2. Проведение обследования деятельности предприятия
- •3.2.1. Методика и этапы обследования
- •3.2.2. Организация сбора и первичной обработки данных
- •3.3. Построение моделей
- •3.4. Разработка системного проекта
- •3.5. Разработка предложений по автоматизации
- •3.6. Техническое проектирование
- •4. Структурные методы моделирования систем управления
- •4.1. Методология функционального моделирования idef0 (sadt)
- •4.1.1. Sadt-модели
- •4.1.2. Синтаксис и применение диаграмм
- •4.1.3. Синтаксис моделей и работа с ними
- •4.1.4. Процесс моделирования
- •4.2. Методология построения реляционных структур idef1x.
- •4.3. Диаграммы потоков данных (Data Flow Diagramming)
- •4.4. Метод описания процессов idef3
- •4.5. Описание нотации aris eEpc.
- •5. Анализ и реорганизация бизнес-процессов
- •5.2. Анализ структуры процессов в соответствии с iso 9000 - стандартом на качество проектирования, разработки, изготовления и послепродажного обслуживания
- •5.4. Ключевые моменты реорганизации деятельности предприятия
- •6. Создание модели процессов в bPwin
- •6.1. Инструментальная среда bPwin
- •6.2. Каркас диаграммы
- •6.3. Слияние и расщепление моделей
- •6.4. Создание отчетов в bPwin
- •6.5. Стоимостной анализ и свойства, определяемые пользователем
- •6.6. Диаграммы dfd и Workflow (idef3)
- •7. Создание модели данных с помощью eRwin
- •7.1. Отображение модели данных в eRwin
- •7.1.1. Физическая и логическая модели данных
- •7.1.2. Подмножества модели и сохраняемые отображения
- •7.2. Создание логической модели данных
- •7.2.1. Уровни логической модели
- •7.2.2. Сущности и атрибуты
- •7.2.3. Связи
- •7.2.4. Типы сущностей и иерархия наследования
- •7.2.5. Ключи
- •7.2.6. Домены
- •7.3. Создание физической модели данных
- •7.3.1. Уровни физической модели
- •7.3.2. Выбор сервера
- •7.3.3. Таблицы, колонки и представления (view)
- •7.3.4. Правила валидации и значения по умолчанию
- •7.3.5. Индексы
- •7.3.6. Задание объектов физической памяти
- •7.3.7. Триггеры и хранимые процедуры
- •7.3.8. Проектирование хранилищ данных
- •7.3.9. Вычисление размера бд
- •7.3.10. Прямое и обратное проектирование
- •8. Объектно-ориентированный подход
- •8.1. Основные принципы
- •8.3. Обзор диаграммных техник uml
- •8.4. Пакеты как средство работы с большими проектами
- •8.5. Диаграммы классов и объектов
- •8.5.1. Классы
- •8.5.2. Интерфейсы
- •8.5.3 Отношения между классами
- •8.5.4 Пример диаграммы классов
- •8.6. Диаграммы использования
- •8.7. Диаграммы последовательностей
- •8.8. Диаграммы сотрудничества
- •8.9. Диаграммы состояний
- •8.10. Диаграммы действий
- •8.11. Диаграммы реализации
- •9. Унифицированный процесс разработки и uml
- •9.2. Фазы унифицированного процесса и диаграммы uml
- •10. Объектно-ориентированное case средство Rational Rose
- •10.1. Состав и основные возможности
- •10.2. Этапы проектирования
- •Литература
- •Содержание.
7.3.10. Прямое и обратное проектирование
Процесс генерации физической схемы БД из логической модели данных называется прямым проектированием (Forward Engineering). При генерации физической схемы ERwin включает триггеры ссылочной целостности, хранимые процедуры, индексы, ограничения и другие возможности, доступные при определении таблиц в выбранной СУБД. Процесс генерации логической модели из физической БД называется обратным проектированием (Reverse Engineering). ERwin позволяет создать модель данных путем обратного проектирования имеющейся БД. После того как модель создана, можно переключиться на другой сервер (модель будет конвертирована) и произвести прямое проектирование структуры БД для другой СУБД. Кроме режима прямого и обратного проектирования ERwin поддерживает синхронизацию между логической моделью и системным каталогом СУБД на протяжении всего жизненного цикла создания ИС.
Для генерации системного каталога БД следует выбрать пункт меню Tasks/Forward Engineer/Schema Generation или нажать кнопку на панели инструментов. Появляется диалог Schema Generation.
Диалог Schema Generation имеет три закладки:
Options. Служит для задания опций генерации объектов БД - триггеров, таблиц, представлений, колонок, индексов и т. д. Для задания опций генерации какого-либо объекта следует выбрать объект в левом списке закладки, после чего включить соответствующую опцию в правом списке.
В закладке Summary отображаются все опции, заданные в закладке Options. Список опций в Summary можно редактировать так же, как и в Options.
Comment. Позволяет внести комментарий для каждого набора опций.
Каждый набор опций может быть именован (окно Option Set, кнопки New, Rename и Delete) и использован многократно.
Кнопка Preview вызывает диалог Schema Generation Preview, в котором отображается SQL-скрипт, создаваемый ERwin для генерации системного каталога СУБД. Нажатие на кнопку Generate приведет к запуску процесса генерации схемы.
Кнопка Print предназначена для вывода на печать создаваемого ERwin SQL-скрипта.
Кнопка Report сохраняет тот же скрипт в ERS- или SQL- текстовом файле. Эти команды можно в дальнейшем редактировать любым текстовым редактором и выполнять при помощи соответствующей утилиты сервера.
Кнопка Generate запускает процесс генерации схемы. Возникает диалог связи с БД, устанавливается сеанс связи с сервером и начинает выполняться SQL-скрипт. При этом возникает диалог Generate Database Schema.
По умолчанию в диалоге Generate Database Schema включена опция Stop If Failure. Это означает, что при первой же ошибке выполнение скрипта прекращается. Щелкнув по кнопке Continue, можно продолжить выполнение. Кнопка Abort прерывает выполнение. При выключенной опции Stop If Failure скрипт будет выполняться, несмотря на встречающиеся ошибки.
Для выполнения обратного проектирования следует выбрать пункт меню Tasks/Reverse Engineer
При этом возникает диалог ERwin Template Selection, в котором нужно выбрать шаблон диаграммы, затем диалог выбора СУБД и, наконец, диалог задания опций обратного проектирования Reverse Engineer - Set Options.
В диалоге Reverse Engineer - Set Options можно задать следующие опции:
Группа Reverse Engineer From позволяет задать источник обратного проектирования - БД или SQL(DDL)-CKpHnT. При помощи кнопки Browse можно выбрать текстовый файл, содержащий SQL-скрипт.
Группа Items to Reverse Engineer позволяет задать объекты БД, на основе которых будет создана модель. При помощи списка выбора Option Set, a также кнопок New, Update и Delete можно создавать и редактировать именованные конфигурации объектов БД, которые могут быть использованы многократно при других сеансах обратного проектирования.
Группа Reverse Engineer (доступна только при обратном проектировании из БД) позволяет включить в модель системные объекты (окно выбора System Objects) и установить фильтр на извлекаемые таблицы по их владельцу.
Установка опции Primary Keys в группе Infer означает, что ERwin будет генерировать первичные ключи на основе анализа индексов. Если включена опция Relations, ERwin будет устанавливать связи на основе имен колонок первичного ключа или индексов. Эти опции имеют смысл, только если связи не прописаны явно.
Группа Case Conversion позволяет задать опции конвертации регистра при создании логических и физических имен модели.
Опция Import View Base Tables указывает, что ERwin будет устанавливать связи между представлениями и таблицами. Если опция выключена или SQL-команда создания представления содержит сложные конструкции (например, агрегативные функции), колонки представления импортируются как определяемые пользователем.
После установки необходимых опций можно щелкнуть по кнопке Next, после чего появляется диалог связи с БД, устанавливается сеанс связи с сервером и начинается процесс обратного проектирования, во время которого показывается статус процесса в диалоге Reverse Engineer-Status. В результате процесса создается новая модель данных.
В процессе работы модель может изменяться и дополняться. С другой стороны, системный каталог БД может редактироваться другими проектировщиками. В результате спустя некоторое время после последнего сеанса обратного проектирования могут возникнуть расхождения между реальным состоянием системного каталога и моделью данных.
Для синхронизации системного каталога БД и текущей модели следует выбрать пункт меню Tasks/Complete Compare или нажать кнопку на панели инструментов. Возникает диалог Complete Compare - Set Options, который во многом похож на описанный выше диалог Reverse Engineer -Set Options. Разница заключается в том, что в отличие от обратного проектирования сравнивать текущую модель можно не только с БД или SQL-скриптом, но и с другой моделью ERwin, хранящейся в файле или репозитории ModelMart.
После нажатия на кнопку Next диалога Complete Compare - Set Options возникает диалог связи с БД, устанавливается сеанс связи с сервером и в диалоге Complete Compare - Resolve Differences показывается текущее состояние модели (слева) и системного каталога СУБД (справа).
В правой части диалога находятся кнопки, позволяющие задать режим синхронизации для каждого объекта модели или БД:
- экспорт объекта из модели в БД;
- импорт объекта из БД в модель,
- игнорирование различия между моделью и БД (по умолчанию принимается для всех объектов);
- удаление объекта из БД.
Кнопки Match и UnMatch позволяют связать объекты модели и БД, имеющие разные имена. Например, в модели ERwin таблице CUSTOMER соответствует таблица CUST в БД. По умолчанию ERwin определяет, что это разные объекты, хотя по смыслу это одно и то же. Для того чтобы bRwm правильно провел синхронизацию, необходимо вручную связать эти две таблицы. Для связывания таблиц необходимо щелкнуть по кнопке Match, затем по таблице модели (левый список) и, наконец, по таблице БД (правый список). Кнопка UnMatch служит для отмены связывания таблиц
Линейка индикаторов между списками показывает установленную опцию синхронизации объектов.
Кнопка Report позволяет сгенерировать отчет о синхронизации, кнопка Preview вызывает диалог Preview SQL Commands, в котором показывается SQL-скрипт, выполняемый для проведения синхронизации.
После щелчка по кнопке Next возникает диалог Complete Compare - Import Changes, в котором можно задать дополнительные опции синхронизации, касающиеся модификации модели.
Группа Case Conversion of Logical Names позволяет задать регистр имен, создаваемых в модели объектов.
Группа If Table to Import Exists in Model позволяет задать опции генерации схемы в случае, если таблица уже существует в модели. Может быть использована существующая таблица (Use Existing Table) либо создана дублирующая (Create Duplicate Table).
Опции Primary Keys, Relations и Import Base Tables имеют то же назначение, что и соответствующие опции диалога Reverse Engineer - Set Options.
Кнопка Start Import служит для запуска процесса импорта объектов в модель из БД, SQL(DDL)-скрипта, диаграммы из репозитория ModelMart или файла ER1/ERX. В процессе импорта ERwin показывает сообщения об успешном или неуспешном завершении выполнения импорта для каждого объекта.
Источники:
1. Маклаков С. В. BPWin и ERWin. CASE-средства разработки информационных систем.-М.: Диалог-МИФИ, 1999 – 256 с.