Разработка и описание локальной и глобальной логических моделей данных предметной области в среде ERwin с использованием методологии IDEF1X
Создавая локальную и глобальную логическую модель данных текущей предметной области «Сервисная служба по ремонту электрооборудования» применим среду ERwin, которое позволяет использовать нотацию IDEF1X. Построение IDEF1X-модели тесно связано с понятием управления данными. Для того чтобы управлять данными, необходимо понимать их основные характеристики и организацию с целью дальнейшей интерпретации этих данных.
Моделирование данных представляет собой деятельность по обнаружению и документированию требований к информации. Требования к информации описывают данные и бизнес-правила, необходимые для поддержки бизнеса.
Моделирование данных обеспечивает наибольшую отдачу при применении на ранних стадиях жизненного цикла разработки. Модель предоставляет важную информацию для понимания функциональных границ проекта на итерационных фазах разработки. Начало фазы реализации без ясного понимания требований к данным может привести к тому, что ваш проект быстро выйдет за рамки отведенного бюджета.
Логический уровень (точка зрения пользователя). Это абстрактный взгляд на данные, на нем используются данные в таком виде, в каком они известны в реальном мире. Объектом модели (сущностям и атрибутам) даются имена (на русском языке) понятные широкому кругу специалистов. Логическая модель данных является универсальной и никак не связана с особенностями реализации конкретной системы управления базой данных (СУБД). Это позволяет экспертам в различных предметных областях свободно обсуждать и всесторонне оценивать проектируемую модель данных [5].
Физический уровень - определяет представление информации в базе данных (БД). На физическом уровне объекты модели должны обозначаться так, как того требуют ограничения выбранной СУБД (обычно латинскими символами). Если в логической модели не имеет принципиального значения, какой конкретно тип данных имеет атрибут, то в физической модели важно описать всю информацию о таблицах, колонках, индексах, процедурах и т.д.
Разработка информационной модели начинается с создания логической модели. После этого проектировщик выбирает необходимую СУБД и с помощью специальных средств создает соответствующую физическую модель. Компонентами физической модели данных являются таблицы, столбцы и отношения [6].
Локальная модель данных по диаграмме декомпозиции DFD A1.
Рисунок 9. Модель данных по диаграмме A1
Локальная модель данных по диаграмме декомпозиции DFD A2.
Рисунок 10. Модель данных по диаграмме A2.
Локальная модель данных по диаграмме декомпозиции DFD A3
Рисунок 11. Модель данных по диаграмме A3
Далее Представлены сущности логического и физического уровня в среде разработки ERwin:
Рисунок 12. Логический уровень модели базы данных
Рисунок 13. Физический уровень модели базы данных
Прямое проектирование
При создании баз данных широко используется инструментальное средство ERwin, которое имеет два уровня представления модели - логический и физический. По физической модели ERwin может генерировать физическую схему (системный каталог) для заданной СУБД. Процесс генерации физической схемы БД из физической модели данных называется прямым проектированием (Forward Engineering).
При генерации физической схемы ERwin создает таблицы, триггеры ссылочной целостности, хранимые процедуры, индексы, ограничения и другие объекты, доступные в выбранной СУБД. Другая возможность создания объектов БД связана с использованием Script-файлов. Эффективность процесса создания Script-файла повышается за счет применения шаблонов скриптов. Процесс генерации логической модели из физической схемы БД называется обратным проектированием (Reverse Engineer). В данном курсовом проекте будет использоваться именно прямое проектирование. Использование этапов обратного и прямого проектирования позволяет перенести структуру данных с одного сервера на другой.
Для начала прямого проектирования необходимо создать пустую базу данных в соответствующей СУБД. В данном случае СУБД Access. Затем открываем ER-диаграмму в среде ERwin. Первый нам будет доступен логический уровень, переходим на физический [7].
Теперь необходимо выбрать СУБД, в которой будем производить генерацию БД физического уровня. Для этого следует выполнить команду DATABASE/Choose database, в появившемся диалоговом окне выбрать интересующую СУБД Access и щелкнуть по кнопке ОК. После этого необходимо соединиться с целевой СУБД Access нужно выполнить команду DATABASE/Database connection. В появившемся диалоговом окне необходимо указать путь к пустой базе данных в СУБД Access, вписать имя admin и нажать кнопку Connect.
Для генерации базы данных физического уровня в среде СУБД Access необходимо выполнить команду TOOLS/Forward Engineering/Schema Generation. Перед генераций можно посмотреть скрипт по которому, будет создана база данных:
Рисунок 14. Предварительный просмотр Script-файла
Нажатие на кнопку Generate приведет к запуску процесса генерации схемы. Возникает диалог связи с базой данных, устанавливается сеанс связи с сервером базы данных (СУБД Access), и начинает выполняться SQL-скрипт. При этом возникает диалог Generate Database Schema. По умолчанию в диалоге Generate Database Schema включена опция Stop If Failure. Это означает, что при первой же ошибке выполнение SQL-скрипта прекращается. При выключенной опции Stop If Failure SQL-скрипт будет выполняться, несмотря на встречающиеся ошибки [8].
Рисунок 15. Сеанс генерации схемы базы данных
После генерации необходимо разорвать соединение ERwin с целевой базой данных. Для этого выполните команду DATABASE/Database connection: открывается диалоговое окно Access Connection, далее щелкаем на кнопке Disconnect. Связь разрывается [8].
После этого можно зайти в систему управления базой данных Access и проверить полученную генерацию базы данных из среды ERwin.
Рисунок 16. Схема созданной базы данных
Примеры некоторых таблиц из СУБД Access:
Рисунок 17. Таблица: Заказы
Рисунок 18. Таблица: Изделия
Рисунок 19. Таблица: Сотрудники