
- •Практическое занятие №4 «Проектирование базы данных с использованием case-средств»
- •Часть 1. Знакомство с интерфейсом eRwin
- •1.1 Общие сведения
- •1.2 Выбор шаблона представления модели
- •Содержание элементов панели инструментов
- •1.3 Нотации, используемые при построении er-моделей
- •Часть 2. Построение логической модели данных
- •2.1 Создание шаблона
- •2.2 Создание хранимых отображений
- •2.3 Внесение в модель сущностей
- •2.4 Определение атрибутов сущностей
- •Характеристика атрибутов сущностей
- •2.5 Определение альтернативных ключей и инверсных входов
- •Ключевые группы
- •2.6 Установление связей между сущностями
- •Характеристика связей для заданной предметной области
- •2.7 Установление категориальной связи
- •Часть 3.Построение физической модели данных. Генерация схемы базы данных
- •Теоретические сведения
- •3.1 Задание правил декларативной ссылочной целостности
- •3.2 Нормализация данных
- •3.3 Переход к физическому уровню модели
- •3.4 Выбор сервера
- •3.5 Денормализация данных
- •3.6 Корректировка типов и размеров полей
- •Типы данных и размеры колонок таблиц физической модели
- •3.7 Задание правил валидации
- •3.7.1 Задание списка допустимых значений
- •3.7.2 Задание значений, присваиваемых по умолчанию
- •3.7.3 Задание правил проверки вводимых значений
- •3.8 Внесение в диаграмму представлений
- •3.9 Генерация системного каталога базы данных
- •Часть 4. Расчет размера базы данных
- •4.1 Задание параметров вычисления размера бд
- •4.2 Создание отчета
- •Часть 5. Создание отчетов в Erwin
Практическое занятие №4 «Проектирование базы данных с использованием case-средств»
Часть 1. Знакомство с интерфейсом eRwin
Цель работы: дать студентам навык работы с интерфейсом ERwin 4.0.
1.1 Общие сведения
Базы данных, как и другие информационные системы (ИС), проходят разные этапы своего жизненного цикла, начиная от замысла системы, предпроектного обследования, включая этапы проектирования, эксплуатации, а далее - модернизации системы.
Создание крупных проектов практически невозможно без использования средств автоматизации проектирования (CASE-систем). Их использование позволяет не только ускорить работы и повысить качество их выполнения, но и дает инструменты для организации коллективного труда группы проектировщиков. Использование инструментальных средств при проектировании баз данных затрагивает разные этапы жизненного цикла АИС. Оно в определенной мере предопределяет процесс обследования и дает инструмент для отображения его результатов.
Наибольшее распространение в настоящее время получили системы, которые позволяют с помощью графических языков отобразить предметную область (построить концептуальную модель) и затем осуществить автоматический переход от концептуальной модели к модели данных в среде выбранной целевой СУБД.
Использование CASE-систем такого типа объединяет не только проектировщиков АИС, но и заказчиков системы, и поэтому отдельные механизмы, а именно нотации, используемые на этапе концептуального моделирования системы, должны грамотно восприниматься всеми ими. Различают прямое проектирование (forward-engineering) - процесс получения структуры базы данных для выбранной целевой СУБД на основе построенной ER- модели, и обратное проектирование (reverse-engineering - реверс-инжиниринг) - когда ER-модель получается на основе существующей базы данных. CASE-средства обычно поддерживают оба эти процесса.
В качестве CASE-средств можно представить ткие продукты как Power Designer, ER/Studio, AllFusion ERwin Data Modeler (ранее эта компонента AllFusion выпускалась в виде отдельного продукта и называлась ERwin) и другие. Многие из этих систем имеют сходную функциональность и даже базируются на одних и тех же стандартах изображения ER-моделей.
В данной практической работе рассматриваются вопросы проектирование баз данных с использованием инструментального средства автоматизации проектирования AllFusion ERwin Data Modeler 4.0. В дальнейшем по тексту данного учебного пособия для краткости будем использовать название ERWin, имея в виду AllFusion ERwin Data Modeler 4.0.
ERwin - CASE-средство проектирования баз данных от фирмы Computer Associates. ERwin сочетает графический интерфейс Windows, инструменты для построения ER-диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную поддержку ведущих реляционных СУБД.
ERwin не привязан к технологии какой-либо конкретной фирмы, поставляющей СУБД или средства разработки. Он поддерживает различные серверы баз данных и настольные СУБД, а также может обращаться к базе данных через интерфейс ODBC. Так, в текущей версии ERwin встроена поддержка 23 СУБД, среди которых: Oracle; Microsoft SQL Server и т.п. Заметим лишь, что речь идет только о реляционных СУБД. ERwin можно использовать совместно с некоторыми популярными средствами разработки клиентских частей приложений: PowerBuilder, Visual Basic, Delphi.
Процесс моделирования в ERwin базируется на методологии проектирования реляционных баз данных IDEF1X.
ERwin имеет два уровня представления модели - логический и физический.
Логический уровень - это абстрактный взгляд на данные, на нем данные представляются так, как выглядят в реальном мире, и могут называться так, как они называются в реальном мире, например «Постоянный клиент», «Отдел» или «Фамилия сотрудника». Объекты модели, представляемые на логическом уровне, называются сущностями и атрибутами (подробнее о сущностях и атрибутах будет рассказано ниже). Логическая модель данных может быть построена на основе другой логической модели, например на основе модели процессов (см. BPwin). Логическая модель данных является универсальной и никак не связана с конкретной реализацией СУБД.
Физическая модель данных, напротив, зависит от конкретной СУБД, фактически являясь отображением системного каталога. В физической модели содержится информация о всех объектах БД. Поскольку стандартов на объекты БД не существует (например, нет стандарта на типы данных), физическая модель зависит от конкретной реализации СУБД. Следовательно, одной и той же логической модели могут соответствовать несколько разных физических моделей. Если в логической модели не имеет значения, какой конкретно тип данных имеет атрибут, то в физической модели важно описать всю информацию о конкретных физических объектах - таблицах, колонках, индексах, процедурах и т. д. Разделение модели данных на логические и физические позволяет решить несколько важных задач.