Кафедра электронно-вычислительной аппаратуры
Лабораторная работа
На тему:
«Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner»
Москва 2009
Содержание:
CASE-средства представляют собой программные средства, поддерживающие процессы создания или сопровождения информационных систем, такие как: анализ и формулировка требований, проектирование баз данных и приложений, генерация кода, тестирование, обеспечение качества, управление конфигурацией и проектом.
CASE-систему можно определить как набор CASE-средств, имеющих определенное функциональное предназначение и выполненных в рамках единого продукта.
DBDesigner – это свободно распространяемая CASE-система, предназначенная для проектирования, моделирования, создания и поддержки информационных систем. Программа может использоваться для Windows 2000/XP, LinuxKDE/Gnome и MySQL. DBDesigner позволяет:
· создавать модель проектируемой системы;
· преобразовывать модели системы в SQL-код, который можно использовать для создания базы данных с помощью DBDesigner или другого средства;
· проводить реинжиниринг – построение исходной модели программной системы путем исследования ее программных кодов. Эта функция очень удобна в случае, если необходимо разобраться уже существующей базе данных. Для проведения реинжиниринга следует выбрать в меню Database – ReversEngineering;
· создавать базу данных и автоматически вносить в нее изменения, используя соединение с сервером и синхронизацию;
· создавать SQL-запросы для внесения изменений и проведения операций над данными.
Пользовательский интерфейс программы:
1. Описание предметной области. Определение цели создания базы данных.
2. Определение сущностей предметной области (таблиц), которые должна содержать база данных.
3. Определение атрибутов сущностей (необходимых в таблицах полей).
4. Построение инфологической модели. Определение связей между сущностями (таблицами).
Предметная область:
База данных содержит информацию о картинах в картинной галерее.
Инфологическая модель:
Картина (Код картины, Название, Автор, Год написания, Время поступления в галерею, Тип краски);
Направление (Название направления, Код направления, Страна);
Период (Название периода, Код периода, Начало периода, Конец периода);
Датологическая модель:
Здесь составим саму реляционную модель проектируемой БД: раскроем все связи между сущностями как связи между ключами. Для этого добавим в одну из связываемых сущностей дополнительный атрибут – первичный ключ из другой сущности. Причем добавление будем осуществлять в ту из этих сущностей, где не нарушится понятие ее первичного ключа.
Период | Картина | Направление |
Название периода | Код картины | Название направления |
Код периода, | Название | Код направления |
Начало периода | Автор | Страна |
Конец периода | Год написания | |
Время поступления в галерею | ||
Тип краски | ||
Название направления | ||
Название периода |
Картина (Код картины, Название, Автор, Год написания, Время поступления в галерею, Тип краски,Название направления, Название периода)
Направление (Название направления, Код направления, Страна);
Период (Название периода, Код периода, Начало периода, Конец периода);
Предметной областью разрабатываемой базы системы является информация о картинах, расположенных в галерее.
Информация о картинах включает в себя информацию о картине, о направлению в искусстве, к которому она принадлежит, и принадлежности к определённому периоду. Необходимо обеспечить возможность внесения, изменения или удаления данных в базе и проведение различных поисковых операций: поиск по автору, поиск по стране.
Модель – это визуальное представление структуры данных. Модель может включать в себя следующие объекты: таблицы и отношения, которые используются обязательно, и дополнительные (например, изображения, записи) – для обеспечения лучшего «понимания» структуры модели.
Для создания модели необходимо переключится в DesignMode, выбрав меню Display - DesignMode.
Пользовательский интерфейс делает создание модели базы данных очень легким.
DBDesigner 4 поддерживает Multible Document Interface(MDI), который позволяет открывать неограниченное число моделей одновременно. При работе, вы можете переключаться между моделями, копируя команды и объекты, чтобы обмениваться ими между моделями.
В левой части холста находится панель инструментов. Необходимо нажать на этой панели кнопку
и указать место на холсте, где будет располагаться новая сущность. Появится прямоугольное изображение пустой сущности. Чтобы задать атрибуты сущности, необходимо два раз щелкнуть на изображении сущности. В появившемся окне можно задать название сущности, а также атрибуты этой сущности.Для отображения информации о картинах была создана сущность картина. Структура сущности картина показана на рисунке:
Флаг в поле NN означает, что содержимое данного поля не может быть нулевым (NotNull). Флаг в поле AI означает, что значение данного поля в каждой следующей строке увеличивается на 1 (AutoIncrement). Иконка
напротив имени атрибута означает, что этот атрибут является ключевым.Были созданы еще две сущности: направление (napravlenie) и период (период)
Связь между сущностями определяет связь между будущими таблицами. Для этого необходимо поставить флаг напротив после всех полей в разделе параметры отношений и внешних ключей (раздел DefaultRelationSettings / ForeignKeysSettings) во вкладке редактирования модели (EditingOptions),
Между сущностями имеются следующие связи:
Картина –> принадлежит -> Направлению
Картина -> принадлежит -> Периоду
Здесь мы видим связь 1:M, так как одному периоду может соответствовать много картин, а одной картине соответствует только один период. Аналогично с направлением.
В программе связи задаются следующим образом.
Связь 1:1 задается с помощью кнопки
.Связь 1:M задается с помощью кнопки
.Связь M:M задается с помощью кнопки
.Задать связь между сущностями можно, нажав на соответствующую кнопку и указав связываемые таблицы. После нажатия кнопки связи, надо нажать на первую таблицу, участвующую в связи, затем на другую. Внешние ключи будут автоматически добавлены, в сущности, соответственно связи.
Результат связывания сущностей показан на рисунке:
Двойным щелчком по изображению связь можно редактировать свойства связи, такие как название связи и тип связи.
Особенностью программы DBDesigner является то, что в процессе создания ER-диаграмм, отношения будет сформированы автоматически. Это очень удобно при проектировании, т.к. позволяет разработчику не запоминать правила формирования отношений для различных связей между таблицами, а получать все автоматически на основе анализа предметной области.
Связи между таблицами можно корректировать, используя «Редактор связей» (RelationEditor), вызываемый двойным щелчком мыши. В «Редакторе связей» можно задать имя связи, изменить ее тип и задать ограничения на данные таблицы при удалении и добавлении в нее данных.
DBDesigner позволяет преобразовывать полученную модель в код на языке SQL, который может быть использован для создания базы данных с помощью других средств, например, с помощью MySQL.
Для получения кода необходимо выбрать в меню File – Export – SQL Create Script. Откроется диалоговое окно, представленное на рисунке:
В основных настройках (GeneralSettings) можно назначить экспортировать в SQL код только выделенные таблицы или экспортировать все таблицы модели, также можно задать упорядочить таблицы по внешним ключам.