Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум_новый.doc
Скачиваний:
71
Добавлен:
18.02.2016
Размер:
768.51 Кб
Скачать

Лабораторная работа 5. Разработка информационно-логической модели предметной области

При построении инфологической модели (ИЛМ) данных могут быть использованы разнообразные инструментальные средства. В простейшем случае ограничиваются неформальным описанием предметной области на естественном языке. В более сложном случае рекомендуется использовать модель данных Сущность-связь (англ. Entity-Relationship -Attribute - сущность- связь- атрибут), предложенную в 1975 г. американским ученым П.Ченом. В 80-х годах эта модель интенсивно развивалась прежде всего в направлении инфологического проектирования баз данных. Для наглядного представления структуры информации используют диаграммы Бахмана или ERD-диаграммы (Entity Relationship Diagram) - ориентированные графы, вершины которых представляют собой типы объектов, а ребра - типы связей между ними.

После создания инфологической модели осуществляется ее отображение в модели данных (концептуальная, внешняя, внутрення), которые поддерживает используемая СУБД. В настоящее время на Западе существуют коммерческие CASE-системы ориентированные на инфологическое проектирование баз данных с автоматическим преобразованием в концептуальную модель данных, поддерживаемую альтернативными СУБД (Oracle, dBase, Paradox, R:Base, Informix и т.д.).

В процессе построения ИЛМ выполняются следующие этапы.

  • Описание предметной области: перечень документов, ограничения, функции, которые должны быть реализованы.

  • Выполнение постановки задачи с определением входных документов, содержащих необходимую нормативно-справочную и оперативно-учетную информацию, а также формы выходных документов.

  • Выполнение информационного анализа описания предметной области и построение частной информационно-логической модели, отображающей информацию, которая должна быть размещена в базе данных.

  • Определение логической структуры базы данных на основе построенной ИЛМ.

При проектировании базы данных определяется состав и структура данных предметной области, которые должны находится в базе данных и обеспечивать выполнение необходимых запросов и задач пользователя. Структура данных предметной области отображается в виде логической модели, на основе которой легко создается база данных. При разработке модели данных могут использоваться два подхода.

В первом подходе сначала определяются основные задачи, для решения которых строится база, выявляются потребности задач в данных и, соответственно, определяется состав и структура информационных объектов. При втором подходе сразу устанавливаются типовые объекты предметной области. Наиболее рационально сочетание обоих подходов. Это связано с тем, что на начальном этапе, как правило, нет исчерпывающих сведений обо всех задачах, а современные технологии проектирования позволяют на любом этапе разработки внести изменения и модифицировать ее структуру без ущерба для введенных ранее данных. Поэтому в процессе разработки ИЛМ выполняются следующие этапы проектирования:

  • проводится анализ предметной области, в ходе которого выявляются информационные объекты, соответствующие требованиям нормализации данных;

  • затем определяются связи между выделенными объектами.

Информационный объект - это описание некоторой сущности – реального объекта, процесса, явления или события. Информационный объект образуется совокупностью логически взаимосвязанных реквизитов, представляющих качественные и количественные характеристики сущности. Реквизит – смысловая структурная единица, которая не расчленяется в процессе обработки. В реляционной базе данных реквизит моделируется полем таблицы.

Процесс выделения информационных объектов предметной области может производиться на основе интуитивного или формального подхода. При интуитивном подходе легко могут быть выявлены информационные объекты, соответствующие реальным объектам. Но получаемая при этом логическая модель, как правило, требует дальнейших преобразований с целью выполнения требований нормализации.

Порядок формального выделения информационных объектов. Рассмотрим формальные правила, которые могут быть использованы для выделения информационных объектов, отвечающих требованиям нормализации:

  • на основе описания предметной области выявить документы и их реквизиты, подлежащие хранению в БД;

  • определить функциональные зависимости между реквизитами;

  • выбрать все зависимые реквизиты и указать для каждого все его ключевые реквизиты, т. е. те, от которых он зависит;

  • сгруппировать реквизиты, одинаково зависимые от ключевых реквизитов, которые и образуют информационные объекты.

В качестве примера рассмотрим документ «Список преподавателей кафедры», из анализа которого мы получим информационные объекты и связи между ними (формальный подход).

На рисунке 5.1 приведен вид документа «Список преподавателей кафедры».

Список преподавателей кафедры

Кафедра: Информационных управляющих систем

Код кафедры: ИУС

Заведующий:

Кудряшова О.Б.

Телефон: (3854)432331

ФИО

Ученая степень

Ученое звание

Телефон

Таб. номер

Александрович В.М.

к.ф.-м.н.

 

312345

31

Ахмадеев И.Р.

к.т.н.

 

543212

45

Данилюк Ю.С.

к.т.н.

доцент

234567

23

Ефимов В.Г.

д.ф.-м.н.

профессор

432123

56

Попов Ф.А.

д.т.н.

профессор

453423

35

Фарков А.Г.

к.э.н.

доцент

678910

34

Рисунок 5.1 – Документ «Список преподавателей кафедры»

Анализируя данный документ, можно выяснить следующее. Реквизиты «Название кафедры», «Телефон», «Заведующий» являются описательными и каждый из них зависит только от ключевого реквизита «Код кафедры», который в то же время выполняет роль общего идентификатора списка преподавателей кафедры. Реквизиты «ФИО» «Ученая степень», «Ученое звание» однозначно определяются ключевым реквизитом «Таб. номер» преподавателя. Обратим внимание на связь реквизитов «Код кафедры» и «Таб. номер». В этой функциональной зависимости выполняется необходимое условие - одному значению ключа «Таб. номер» соответствует одно значение зависимого реквизита «Код кафедры», так как преподаватель числится на конкретной кафедре. Таким образом, реквизит «Код кафедры» играет роль описательного реквизита для преподавателя с идентификатором «Таб. номер». Заметим, если такая связь не выявлена, то все множество реквизитов документа разделится на два несвязанных между собой подмножества, а это нелогично для реквизитов одного документа.

Реквизит «Код кафедры» одновременно выступает в роли описательного реквизита в одной связи и ключевого – в другой связи. Таким образом, здесь мы сталкиваемся с транзитивной зависимостью. Реквизит «Название кафедры» транзитивно зависит от «Таб. номер» через «Код кафедры». Тем не менее, специальных действий по расщеплению этой связи (для выполнения требований третьей нормальной формы) не потребуется.

Выберем по функциональным связям реквизиты, зависимые от каких либо других реквизитов и укажем для них ключевые реквизиты. Сгруппируем реквизиты, зависимые от одних и тех же ключевых реквизитов, и объединим их с ключевыми реквизитами в один информационный объект. Результат группировки реквизитов документа «Список преподавателей кафедры» приведен в таблице 5.1. Таким образом, на основе анализа документа «Список преподавателей кафедры» выделены два информационных объекта: КАФЕДРА И ПРЕПОДАВАТЕЛЬ.

Таблица 5.1 – Список реквизитов, объединенных в информационные объекты

Реквизит

Ключевой реквизит

Информационный объект

Название кафедры

Код кафедры (уникальный, простой ключ)

КАФЕДРА

Заведующий

Телефон

ФИО

Таб. Номер (уникальный, простой ключ)

ПРЕПОДАВАТЕЛЬ

Ученая степень

Ученое звание

Телефон

Код кафедры

Обратите внимание на структуру анализируемого документа «Список преподавателей кафедры». Он имеет комбинированную структуру, состоит из заголовочной части с единичными значениями реквизитов и табличной части со множественными значениями реквизитов. Как правило, при создании ИЛМ такой документ отображается в модели в виде совокупности из двух информационных объектов, со связями между ними вида «один-ко-многим». Так и в приведенном примере. Информационные объекты КАФЕДРА и ПРЕПОДАВАТЕЛЬ находятся в реальных отношениях «один-ко-многим» (1:М): на одной кафедре работают много преподавателей; один преподаватель работает только на одной кафедре. Графическое изображение информационных объектов ИЛМ и отношений между ними приведено на рисунке 5.2.

КАФЕДРА

Код кафедры

ПРЕПОДАВАТЕЛЬ

Таб. номер

Рисунок 5.2 – Графическое изображение ИЛМ

Стрелкой показана связь между объектами – от главного объекта к подчиненному. Прямоугольниками обозначены информационные объекты; в верхней части прямоугольника написано название объекта, под чертой – ключевое поле. В случае, когда ключ является составным (состоит более, чем из одного реквизита), для него принято такое обозначение: Ключ1+Ключ2+Ключ3… Иногда, если количество реквизитов в объекте невелико, допускается внесение в область под чертой всех реквизитов объекта, при этом ключевые реквизиты выделяются в отдельную область. Например так, как показано на рисунке 5.3 для объекта ПРЕПОДАВАТЕЛЬ.

ПРЕПОДАВАТЕЛЬ

Таб. номер

ФИО

Ученая степень

Ученое звание

Телефон

Код кафедры (ВК)

Рисунок 5.3 – Графическое изображение информационного объекта с полным списком реквизитов

Внешний ключ, служащий ключом связи между объектами (в нашем случае «Код кафедры» здесь обозначен индикатором ВК.

Информационно-логическую модель принято изображать в каноническом виде. В канонической ИЛМ информационные объекты должны отвечать требованиям нормализации. Допускаются структурные связи только 1:М и «один-к-одному» (1:1). Кроме того, информационные объекты должны быть упорядочены в ИЛМ по уровням.

Для упорядочивания информационных объектов по уровням при графическом изображении ИЛМ необходимо, чтобы в каждой связи главный объект размещался на верхнем уровне по отношению к подчиненному объекту.

Продолжая разбирать вышеприведенный пример, можно заметить, что данные об ученых степенях и ученых званиях являются справочной (условно-постоянной) информацией и могут быть сведены в отдельные информационные объекты простейшей структуры с единственным реквизитом в своем составе. Отобразим ИЛМ в каноническом виде (рисунок 5.4).

КАФЕДРА

УЧЕНАЯ СТЕПЕНЬ

УЧЕНОЕ ЗВАНИЕ

Код кафедры

Ученая степень

Ученое звание

ПРЕПОДАВАТЕЛЬ

Таб. номер

Рисунок 5.4 – ИЛМ в каноническом виде

Бывают случаи, когда описанный выше формальный подход к выделению информационных объектов и связей между ними невозможен. Например, в новых предметных областях, где нет установленных форм документов с известными реквизитами, которые можно анализировать. В этом случае допустим интуитивный подход, при котором необходимо ответить на следующие вопросы:

  1. О каких предметах (явлениях) необходимо хранить информацию в базе данных?

  2. Какие существуют характеристики данных предметов (реквизиты)?

  3. Какой из реквизитов (или их сочетание) можно назвать уникальным, однозначно определяющим набор остальных реквизитов?

  4. Какие существуют реальные отношения между предметами (явлениями): один-к-одному, один-ко-многим, многие-ко-многим?

Ответ на первый вопрос даст нам набор информационных объектов предметной области. Второй вопрос определяет набор их реквизитов, третий – ключевой реквизит (реквизиты). Ответ на четвертый вопрос позволяет построить связи между информационными объектами. Если выявлено отношение «многие-ко-многим» (M:N), для соблюдения требований канонического вида ИЛМ его необходимо разрешить через третий объект, подчиненный обоим исходным объектам и имеющий ключ, являющийся суммой ключей исходных объектов.

Рассмотрим пример: Интернет-портал «Флешмоб», на котором организаторы объявляют о проведение флешмоб-мероприятий, на которые могут записываться пользователи. Ответим последовательно на вопросы, которые позволят нам построить ИЛМ.

  1. Необходимо хранить информацию о пользователях (ПОЛЬЗОВАТЕЛЬ) и мероприятиях (ФЛЕШМОБ).

  2. ПОЛЬЗОВАТЕЛЬ характеризуется следующим набором реквизитов: никнейм, ФИО, возраст, пол. ФЛЕШМОБ характеризуется следующими реквизитами: дата, время, место, название, описание.

  3. Уникальный ключ объекта ПОЛЬЗОВАТЕЛЬ – никнейм, объект ФЛЕШМОБ определяется уникальным сочетанием реквизитов дата+время+место.

  4. Между объектами существуют отношения M:N: один пользователь может участвовать во многих мероприятиях, в одном мероприятии участвуют много пользователей.

Таким образом, отношение должно быть разрешено через третий объект. Назовем его ЛИСТ ЗАПИСИ. Ключ объекта равен сумме ключей главных по отношению к нему объектов ФЛЕШМОБ и ПОЛЬЗОВАТЕЛЬ: никнейм+дата+время+место. И только эти четыре реквизита будут присутствовать в объекте ЛИСТ ЗАПИСИ.

Мы выявили информационные объекты, их реквизитный состав, ключи, связи между объектами. Реквизитный состав отвечает требованиям нормализации (все реквизиты являются простыми, неключевые реквизиты однозначно определяются ключом объекта, причем зависят от ключа нетранзитивно). Связи между объектами только типа 1:M. Отобразим ИЛМ предметной области в каноническом виде (рисунок 5.5)

ПОЛЬЗОВАТЕЛЬ

ФЛЕШМОБ

никнейм

дата+время+место

ЛИСТ ЗАПИСИ

никнейм+дата+время+место

Рисунок 5.5 – ИЛМ предметной области «Интернет-портал «Флешмоб»

Задание

Постройте ИЛМ в каноническом виде для одной из данных предметных областей:

  1. Интернет-магазин (книги, диски)

  2. Библиотека

  3. Продажа авиабилетов через интернет

  4. Заказ пиццы

  5. Грузоперевозки

  6. Складской учет фирмы по производству веников

  7. Учет успеваемости студентов вуза

  8. Прокат спортивного оборудования

  9. Учет выдачи и погашения потребительских кредитов при покупке бытовой техники

  10. Паспортный стол

  11. Произвольная область (на ваш выбор).

Если это возможно, спроектируйте сначала вид документов предметной области и воспользуйтесь формальным способом построения ИЛМ. Если невозможно – используйте интуитивный подход.

Информационно-логическая модель должна быть представлена в каноническом виде.