- •Тема 6.Инструментальные средства анализа и проектирования
- •6.1. Понятие case-средства
- •6.2. Обзор рынка case-средства структурного анализа и проектирования
- •Распределение case-средств структурного анализа по видам моделируемой деятельности
- •VantageTeam Builer
- •Visible Analyst Workbench
- •6.3. Обзор рынка case-средства объектно-ориентированного анализа и проектирования
- •6.4.1. Общие сведения о среде bPwin
- •Сравнительная характеристика средств построения uml-диаграмм
- •6.4. BPwin
- •6.4.2. Диаграммы bPwin
- •6.4.3. Работы на диаграммах bPwin
- •6.4.4. Стрелки на диаграммах bPwin
- •6.4.5. Нумерация работ и диаграмм
- •6.4.6. Каркас диаграммы
- •6.4.7. Слияние и расщепление моделей
- •6.4.8. Построение диаграммы потоков данных
- •6.4.9. Построение диаграммы потоков работ
- •Типы перекрестков
- •Типы объектов ссылок
- •Диапазоны номеров работ
- •6.4.10. Создание отчетов в bPwin
- •6.5. ErWin
- •6.5.1. Основы моделирования данных
- •6.5.2. Использование метода idefix в eRwin
- •6.5.3. Общие сведения о среде eRwin
- •6.5.3.1. Уровни представления модели данных
- •6.5.3.2. Документирование модели данных
- •6.5.3.3. Масштабирование моделей данных
- •6.5.3.4. Интерфейс eRwin
- •6.5.3.5. Уровни отображения диаграмм
- •6.5.4. Создание логической модели данных
- •6.5.4.1. Уровни логической модели
- •6.5.4.2. Сущности и атрибуты
- •6.5.4.3. Связи
- •6.5.4.4. Типы сущностей и иерархия наследования
- •6.5.4.5. Ключи
- •6.5.4.6. Нормализация данных
- •6.5.4.7. Домены
- •6.5.5. Создание физической модели данных
- •6.5.5.1. Правила валидации и значения по умолчанию
- •6.5.5.2. Индексы
- •6.5.5.3. Триггеры и хранимые процедуры
- •6.5.5.4. Вычисление размера бд
- •6.5.6. Прямое и обратное проектирование
- •6.5.7. Проектирование хранилищ данных
- •6.5.8. Генерация кода клиентской части с помощью eRwin
- •6.5.8.1. Генерация кода на языке Visual Basic
- •6.5.9. Создание отчетов и словарей
- •6.6. Rational Rose
- •6.6.1. Общая характеристика Rational Rose
- •6.6.2. Пользовательский интерфейс Rational Rose
- •6.6.3. Представление диаграмм в Rational Rose
- •6.6.4. Разработка диаграмм в Rational Rose
- •6.6.4.1. Создание диаграммы в Rational Rose
- •Назначение кнопок специальной панели инструментов диаграммы деятельности
- •6.6.4.2. Добавление на диаграмму графических элементов
- •6.6.4.2. Добавление на диаграмму связей между графическими элементами
- •6.6.5. Генерация программного кода в Rational Rose
- •6.6.5.1. Подготовка модели для генерации кода
- •6.6.5.2. Проверка модели на отсутствие ошибок
- •6.6.5.3. Создание компонентов для реализации классов
- •6.6.5.4. Отображение классов на компоненты
- •6.6.5.5. Выбор языка программирования для генерации текста программного кода
- •6.6.5.6. Установка свойств генерации программного кода
- •6.6.5.7. Выбор класса, компонента или пакета
- •6.6.5.8. Работа с текстом сгенерированного кода
6.5.3. Общие сведения о среде eRwin
6.5.3.1. Уровни представления модели данных
ERwin имеет два уровня представления модели — логический и физический.
Логическая модель данных — это абстрактный взгляд на данные, когда данные представляются так, как выглядят в реальном мире, и могут называться так, как они называются в реальном мире, например «Постоянный клиент», «Отдел» или «Фамилия сотрудника». Объекты модели, представляемые на логическом уровне, называются сущностями и атрибутами. Логическая модель данных может быть построена на основе другой логической модели, например на основе модели процессов. Логическая модель данных является универсальной и никак не связана с конкретной реализацией СУБД.
Физическая модель данных, напротив, зависит от конкретной СУБД, фактически являясь отображением системного каталога. В физической модели содержится информация обо всех объектах БД. Поскольку стандартов на объекты БД не существует (например, нет стандарта на типы данных), физическая модель зависит от конкретной реализации СУБД. Следовательно, одной и той же логической модели могут соответствовать несколько разных физических моделей. Если в логической модели не имеет значения, какой конкретно тип данных имеет атрибут, то в физической модели важно описать всю информацию о конкретных физических объектах — таблицах, колонках, индексах, процедурах и т.д.
6.5.3.2. Документирование модели данных
Многие СУБД имеют ограничение на именование объектов (например, ограничение на длину имени таблицы или запрет использования специальных символов — пробела и т. п.). Зачастую разработчики ИС имеют дело с нелокализованными версиями СУБД. Это означает, что объекты БД могут называться короткими словами, только латинскими символами и без использования специальных символов (т. е. нельзя назвать таблицу, используя предложение — ее можно назвать только одним словом). Кроме того, проектировщики БД нередко злоупотребляют «техническими» наименованиями, в результате таблица и колонки получают наименования типа RTD_324 или CUST_A12 и т.д. Полученную в результате структуру могут понять только специалисты (а чаще всего — только авторы модели), ее невозможно обсуждать с экспертами предметной области. Разделение модели на логическую и физическую позволяет решить эту проблему. На физическом уровне объекты БД могут называться так, как того требуют ограничения СУБД. На логическом уровне можно этим объектам дать синонимы — имена более понятные неспециалистам, в том числе на кириллице и с использованием специальных символов. Например, таблице CUST_A12 может соответствовать сущность Постоянный клиент. Такое соответствие позволяет лучше документировать модель и дает возможность обсуждать структуру данных с экспертами предметной области.
6.5.3.3. Масштабирование моделей данных
Создание модели данных, как правило, начинается с разработки логической модели. После описания логической модели проектировщик может выбрать необходимую СУБД, и ERwin автоматически создаст соответствующую физическую модель. На основе физической модели ERwin может сгенерировать системный каталог СУБД или соответствующий SQL-скрипт. Этот процесс называется прямым проектированием (Forward Engineering). Тем самым достигается масштабируемость — создав одну логическую модель данных, можно сгенерировать физические модели под любую поддерживаемую ERwin СУБД. С другой стороны, ERwin способен по содержимому системного каталога или SQL-скрипту воссоздать физическую и логическую модель данных (Reverse Engineering). На основе полученной логической модели данных можно сгенерировать физическую модель для другой СУБД и затем создать ее системный каталог. Следовательно, ERwin позволяет решить задачу по переносу структуры данных с одного сервера на другой. Например, можно перенести структуру данных с Oracle на Informix (или наоборот) или перенести структуру dbf-файлов в реляционную СУБД, тем самым облегчив переход от файл-серверной к клиент-серверной ИС. Однако, формальный перенос структуры «плоских» таблиц на реляционную СУБД обычно неэффективен. Для того чтобы извлечь выгоды от перехода на клиент-серверную технологию, структуру данных следует модифицировать.
