
Курсова БД / Література / rybanov_bd
.pdf
Рис. 33. Диалоговое окно «Define Entity»
Создание атрибутов. Создание атрибутов выполняется в окне «Define Attribute» (рис. 34).
Рис. 34. Диалоговое окно «Define Attribute»
Окно «Define Attribute» содержит: Name - имя атрибута; Aliases - псевдоним атрибута; Datatype - тип значения атрибута; Length - длина значения
60
атрибута; Precision - количество чисел после точки, для атрибутов числового типа; Primary Key - первичный ключ; Alternate Key - альтернативный ключ; Definition - определение атрибута, которое обычно используется в предметной области; Discriminator - дискриминатор.
Например, типы данных (Datatype), используемые в языке SQL для задания типа значения атрибута, весьма разнообразны:
1.INT – целое число длиной 4 байта, представляемое при выводе максимально Length цифрами.
2.SMALLINT – целое число длиной 2 байта, представляемое при выводе максимально Length цифрами.
3.FLOAT – действительное число, представляемое при выводе максимально Length символами с Precision цифрами после десятичной точки.
4.CHAR – строка символов фиксированной длины размером Length символов.
5.VARCHAR – строка символов переменной длины максимальным размером до Length символов.
6.BLOB (Binary Large OBject) - массив произвольных (двоичных) байтов (максимальный размер зависит от реализации, обычно это 65535 байт); этот тип данных может использоваться, например, для хранения изображений.
7.DATE – астрономическая дата.
8.TIME – астрономическое время.
После задания атрибуту его свойств необходимо нажать клавишу OK для сохранения заданных свойств. В окне «Atributes» определяемой сущности появляются надписи, которые указывают на наличие атрибутов и их свойств.
Создание отношений (связей). Чтобы создать новое отношение (связь)
в IDEF1X –модели:
61

а) выберите Relationship в меню Create или нажмите кнопку на функциональной панели инструментов;
б) соедините курсором мыши сущности, между которыми устанавливается отношение (связь);
в) заполните поля в появившемся окне «Define Relationship» (рис. 35): Relationship – имя отношения; Inverse – имя сущности-потомка, с которым устанавливается связь отношения (указывается в неспецифических отношениях); Definition – определение связи, которое обычно используется в предметной области; Relationship Type – тип связи (идентифицирующая, неидентифицирующая или неспецифическая); Relationship Cardinality – мощность устанавливаемой связи.
Рис. 35. Диалоговое окно «Define Relationship»
После создания связей при наличии атрибутов в информационных блоках происходит обмен атрибутами, т. е. главный ключ блока из которого выходит отношение превращается во внешний ключ (Foreign key) в блоке куда входит отношение. Поменять тип отношения (с идентифици-
62

рующего на неидентифицирующее) можно с помощью команды Toggle
меню Create или кнопкой на панели инструментов.
5.3. Сохранение IDEF1X-модели
IDEF1X-модель сохраняется на диске с помощью команд File Save,
File Save As… или File Export…
5.4. Генерация sql-скрипта на IDEF1X-модели
SQL-скрипт– файл, содержащий последовательность команд на языке SQL для создания базы данных, представленной в виде IDEF1X-модели
(см. ПРИЛОЖЕНИЕ).
Для генерации sql-скрипта для создания базы данных на IDEF1X-
модели выберите пункт меню File Export. В появившемся диалоговом окне «File Export» (рис. 36) в списке Format выберите SQL Files(*.SQL),
введите имя sql-скрипта и подтвердите выбор клавишей OK.
Рис. 36. Диалоговое окно «Select New Page Type»
5.5. Пример IDEF1X-модели
Пример концептуальной схемы базы данных в нотации IDEF1X приведен на рис. 37.
63

64
Рис. 37. Пример концептуальной схемы базы данных в нотации IDEF1X
6. ЛАБОРАТОРНЫЙ ПРАКТИКУМ 6.1. Лабораторная работа №1: Методика построения
функциональной модели предметной области для проектирования автоматизированной системы управления
Цель работы: изучить принципы разработки и формализации предметной области в виде функциональной модели в нотации IDEF0; освоить приемы построения функциональной модели предметной области.
6.1.1.Последовательность выполнения лабораторной работы
1.Ознакомиться с предложенным вариантом описания предметной области. Проанализировать предметную область, уточнив и дополнив ее, руководствуясь собственным опытом, консультациями и другими источниками.
2.Выполнить структурное разбиение предметной области на отдельные подразделения (отделы, службы, подсистемы, группы и пр.) согласно выполняемым ими функциям.
3.Определить задачи и функции системы в целом и функции каждого подразделения (подсистемы).
4.Выполнить словесное описание работы каждого подразделения (подсистемы), алгоритмов и сценариев выполнения ими отдельных работ.
5.Построить диаграммы работ и диаграммы потоков данных в нотации Йордона – де Марко и IDEF0 для всей информационной системы в целом и для отдельных сценариев работ, отражающие логику и взаимоотношение подразделений (подсистем).
6.Изучить методику построения информационной модели предметной области с помощью пакета Design/IDEF.
7.Реализовать IDEF0-модель с помощью пакета Design/IDEF, предварительно установив атрибуты страницы IDEF0-модели, воспользовавшись пукнктом меню Edit Set Page Attributes. Установите значения следующих
65
атрибутов страницы: name – наименование предметной области (варианта задания); user – выполнил (Ф.И.О. студента); project – наименование лабо-
раторной работы; status – Publication; revision – проверил (Ф.И.О препода-
вателя).
8.Заполнить глоссарий IDEF0-модели и проверить её синтаксис.
9.Экспортировать IDEF0-модель в формат Windows MetaFile (*.wmf)
воспользовавшись пунктом меню File Export.
10.Сформировать IDEF0 отчет и Clossary Report, воспользовавшись пунктом меню File Report.
11.Оформить отчет по лабораторной работе.
6.1.2. Требования к отчету
Отчет по лабораторной работе должен содержать: 1. Титульный лист.
2.Цель работы.
3.Вариант задания.
4.Состав подразделений (подсистем) информационной системы;
5.Перечень функций и задач системы в целом и каждого подразделения (подсистемы) в отдельности; подробное описание работы каждого подразделения (подсистемы), отношения их между собой, описание отдельных сценариев работ.
6.Диаграммы работ и диаграммы потоков данных в нотации Йордона – де Марко и IDEF0 для всей информационной системы в целом и для отдельных сценариев работ, отражающие логику и взаимоотношение подразделений (подсистем).
7.IDEF0-модель предметной области в формате Windows MetaFile
(*.wmf).
8.IDEF0 отчет и Clossary Report.
66
6.1.3. Контрольные вопросы
1.Каковы задачи методологии структурного анализа данных?
2.Каковы виды связей в методологии IDEF0?
3.Каково назначение методологии диаграмм потоков данных?
4.Что такое поток данных в методологии DFD?
5.Какова функция хранилища данных в DFD?
6.В чем сходство и в чем различие методологии структурного анализа данных и диаграмм потоков данных?
7.Какое назначение имеет функциональная модель в процессе разработки ПО?
8.Перечислите основные компоненты функциональной модели.
9.Опишите правила формирования функциональных блоков (иерархия, нумерация, обозначение).
10.Опишите правила создания дуг (направление, тип интерфейса, обозначение).
6.2. Лабораторная работа №2: Методика построения информационной модели предметной области для проектирования автоматизированной информационной системы
Цель работы: изучить принципы разработки и формализации предметной области в виде информационной модели IDEF1X для построения АИС; освоить приемы построения информационной модели предметной области.
6.2.1.Последовательность выполнения лабораторной работы
1. Согласно варианту задания, выделить необходимый набор сущностей, отражающих предметную область и информационные потребности пользователей.
67
2.Определить необходимый набор атрибутов каждой сущности, выделив идентифицирующие атрибуты.
3.Классифицировать атрибуты каждой сущности (описательные, указывающие, вспомогательные).
4.Определить сущности вида подтип/супертип, где это необходимо.
5.Определить связи между сущностями.
6.Проанализировав структуру связей, исключить избыточные.
7.Определить множественность и условность связей.
8.Дать формулировку связей с точки зрения каждой участвующей сущности.
9.Формализовать связи вида 1:1, 1:M, M:N.
10.Построить ER-диаграммы модели базы данных: в нотации Чена; в нотации Мартина; в нотации IDEF1X, в нотации Баркера.
11.Описатьмодельбазыданныхнаязыкеинфологическогомоделирования.
12.Изучить методику построения информационной модели предметной области с помощью пакета Design/IDEF.
13.Реализовать ER-диаграмму модели базы данных внотации IDEF1X с помощью пакета Design/IDEF, предварительно установив атрибуты стра-
ницы IDEF1X-модели, воспользовавшись пукнктом меню Edit Set Page Attributes. Установите значения следующих атрибутов страницы: name – наименование предметной области (варианта задания); user – выполнил (Ф.И.О. студента); project – наименование лабораторной работы; status – Publication; revision – проверил (Ф.И.О преподавателя).
14.Экспортировать IDEF1X-модель в формат Windows MetaFile (*.wmf)
исгенерировать sql-скрипт для создания базы данных, воспользовавшись пунтом меню File Export.
15.Сформировать IDEF1X отчет, воспользовавшись пунктом меню
File Report.
16. Оформить отчет по лабораторной работе.
68
6.2.2. Требования к отчету
Отчет по лабораторной работе должен содержать:
1.Титульный лист.
2.Цель работы.
3.Вариант задания.
4.ER-диаграммы модели базы данных: в нотации Чена; в нотации Мартина; в нотации IDEF1X, в нотации Баркера.
5.Описание модели базы данных на языке инфологического моделирования.
6.IDEF1X-модель базы данных в формате Windows MetaFile (*.wmf).
7.SQL-скрипт.
8.IDEF1X отчет.
6.2.3. Контрольные вопросы
1.Каковы задачи, решаемые на этапе концептуального проектирования?
2.Дайте характеристику модели типа «сущность – связь».
3.Опишите известные формы представления данных.
4.Какое назначение имеет информационная (концептуальная) модель в процессе проектирования автоматизированной информационной системы?
5.Перечислите основные составляющие информационной (концептуальной) модели.
6.В чем состоит отличие понятия типа сущности и элемента сущности?
7.Каковы способы представления сущности?
8.Опишите правила формирования сущностей (типы, элементы, нумерация, обозначение).
9.Каковы правила атрибутов?
10.Как классифицируются атрибуты?
11.Каковы фундаментальные виды связей?
12.Как формализуется связь 1:1?
69