
методические указания по выполнению лабораторной работы / ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ДАННЫХ «СУЩНОСТЬ - СВЯЗЬ» ЯЗЫКИ ПОСТРОЕНИЯ МОДЕЛЕЙ
.docМинистерство образования и науки Российской Федерации
Саратовский государственный технический университет
Балаковский институт техники, технологии и управления
ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ДАННЫХ
«СУЩНОСТЬ - СВЯЗЬ»
ЯЗЫКИ ПОСТРОЕНИЯ МОДЕЛЕЙ
Методическое указание к выполнению лабораторной работы
по дисциплине «Информационное обеспечение систем управления»
для студентов специальности 220201
всех форм обучения
Одобрено
редакционно-издательским советом
Балаковского института техники,
технологии и управления
Балаково 2010
Цель работы – ознакомится с основными понятиями инфологического проектирования баз данных, научится описывать модели языками инфологического моделирования
Основные понятия
Процесс проектирования информационных систем является достаточно сложной задачей. Он начинается с построения инфологической модели данных, то есть, идентификации сущностей.
Инфологическая модель предметной области (ПО) представляет собой описание структуры и динамики ПО, характера информационных потребностей пользователей в терминах, понятных пользователю и не зависимых от реализации БД. Это описание выражается в терминах не отдельных объектов ПО и связей между ними, а их типов, связанных с ними ограничений целостности и тех процессов, которые приводят к переходу предметной области из одного состояния в другое.
В настоящее время применяют проектирование с использованием метода "Сущность-связь"(entity–relation, ER–method), который является комбинацией предметного и прикладного методов и обладает достоинствами обоих.
Этап инфологического проектирования начинается с моделирования ПО. Проектировщик разбивает её на ряд локальных областей, каждая из которых (в идеале) включает в себя информацию, достаточную для обеспечения запросов отдельной группы будущих пользователей или решения отдельной задачи (подзадачи). Каждое локальное представление моделируется отдельно, затем они объединяются.
Выбор локального представления зависит от масштабов ПО. Обычно она разбивается на локальные области таким образом, чтобы каждая из них соответствовала отдельному внешнему приложению и содержала 6-7 сущностей.
Сущность – это объект, о котором в системе будет накапливаться информация. Сущности бывают как физически существующие (например, СОТРУДНИК или АВТОМОБИЛЬ), так и абстрактные (например, ЭКЗАМЕН или ДИАГНОЗ).
Для сущностей различают класс, тип сущности и экземпляр. Существует три основных класса сущностей: стержневые, ассоциативные и характеристические, а также подкласс ассоциативных сущностей – обозначения.
Стержневая сущность (стержень) – это независимая сущность, которая не является ни ассоциацией, ни обозначением, ни характеристикой. Такие сущности имеют независимое существование, хотя они и могут обозначать другие сущности.
Ассоциативная сущность (ассоциация) – это связь вида "многие-ко-многим" между двумя или более сущностями или экземплярами сущности. Ассоциации рассматриваются как полноправные сущности, они могут: участвовать в других ассоциациях и обозначениях точно так же, как стержневые сущности; обладать свойствами, т.е. иметь не только набор ключевых атрибутов, необходимых для указания связей, но и любое число других атрибутов, характеризующих связь.
Характеристическая сущность (характеристика) – это связь вида "многие-к-одной" или "одна-к-одной" между двумя сущностями (частный случай ассоциации). Единственная цель характеристики в рамках рассматриваемой предметной области состоит в описании или уточнении некоторой другой сущности. Необходимость в них возникает в связи с тем, что сущности реального мира имеют иногда многозначные свойства.
Например, муж может иметь несколько жен, книга – несколько характеристик переиздания (исправленное, дополненное, ...) и т.д.
Существование характеристики полностью зависит от характеризуемой сущности: женщины лишаются статуса жен, если умирает их муж.
Обозначающая сущность (обозначение) – это связь вида "многие-к-одной" или "одна-к-одной" между двумя сущностями и отличается от характеристики тем, что не зависит от обозначаемой сущности. Обозначения используют для хранения повторяющихся значений больших текстовых атрибутов: "кодификаторы" изучаемых студентами дисциплин, наименований организаций и их отделов, перечней товаров и т.п.
Как правило, обозначения не рассматриваются как полноправные сущности, хотя это не привело бы к какой-либо ошибке. Обозначения и характеристики не являются полностью независимыми сущностями, поскольку они предполагают наличие некоторой другой сущности, которая будет "обозначаться" или "характеризоваться". Однако они все же представляют собой частные случаи сущности и могут, конечно, иметь свойства, могут участвовать в ассоциациях, обозначениях и иметь свои собственные (более низкого уровня) характеристики. Подчеркнем также, что все экземпляры характеристики должны быть обязательно связаны с каким-либо экземпляром характеризуемой сущности. Однако допускается, чтобы некоторые экземпляры характеризуемой сущности не имели связей.
Тип сущности характеризуется именем и списком свойств, а экземпляр – конкретными значениями свойств.
Типы сущностей можно классифицировать как сильные и слабые. Сильные сущности существуют сами по себе, а существование слабых сущностей зависит от существования сильных.
Например, читатель библиотеки – сильная сущность, а абонемент этого читателя – слабая, которая зависит от наличия соответствующего читателя.
Слабые сущности называют подчинёнными (дочерними), а сильные – базовыми (основными, родительскими).
Для каждой сущности выбираются свойства (атрибуты).
Различают:
-
Идентифицирующие и описательные атрибуты. Идентифицирующие атрибуты имеют уникальное значение для сущностей данного типа и являются потенциальными ключами. Они позволяют однозначно распознавать экземпляры сущности. Из потенциальных ключей выбирается один первичный ключ (ПК). В качестве ПК обычно выбирается потенциальный ключ, по которому чаще происходит обращение к экземплярам записи. Кроме того, ПК должен включать в свой состав минимально необходимое для идентификации количество атрибутов. Остальные атрибуты называются описательными и заключают в себе интересующие свойства сущности.
-
Составные и простые атрибуты. Простой атрибут состоит из одного компонента, его значение неделимо. Составной атрибут является комбинацией нескольких компонентов, возможно, принадлежащих разным типам данных (например, ФИО или адрес). Решение о том, использовать составной атрибут или разбивать его на компоненты, зависит от характера его обработки и формата пользовательского представления этого атрибута.
-
Однозначные и многозначные атрибуты (могут иметь соответственно одно или много значений для каждого экземпляра сущности).
-
Основные и производные атрибуты. Значение основного атрибута не зависит от других атрибутов. Значение производного атрибута вычисляется на основе значений других атрибутов (например, возраст студента вычисляется на основе даты его рождения и текущей даты).
Спецификация атрибута состоит из его названия, указания типа данных и описания ограничений целостности – множества значений (или домена), которые может принимать данный атрибут.
Далее осуществляется спецификация связей внутри локального представления. Связи могут иметь различный содержательный смысл (семантику). Различают связи типа "сущность-сущность", "сущность-атрибут" и "атрибут-атрибут" для отношений между атрибутами, которые характеризуют одну и ту же сущность или одну и ту же связь типа "сущность-сущность".
Каждая связь характеризуется именем, обязательностью, типом и степенью. Различают факультативные и обязательные связи. Если вновь порождённый объект одного типа оказывается по необходимости связанным с объектом другого типа, то между этими типами объектов существует обязательная связь (обозначается двойной линией). Иначе связь является факультативной.
По типу различают множественные связи "один к одному" (1:1), "один ко многим" (1:n) и "многие ко многим" (m:n). ER–диаграмма, содержащая различные типы связей, приведена на рис. 1. Обратите внимание, что обязательные связи на рис. 1 выделены двойной линией.
Степень связи определяется количеством сущностей, которые охвачены данной связью. Пример бинарной связи – связь между отделом и сотрудниками, которые в нём работают. Примером тернарной связи является связь типа экзамен между сущностями ДИСЦИПЛИНА, СТУДЕНТ, ПРЕПОДАВАТЕЛЬ. Из последнего примера видно, что связь также может иметь атрибуты (в данном случае это Дата проведения и Оценка). Пример ER–диаграммы с указанием сущностей, их атрибутов и связей приведен на рис. 2.
Принимаемые проектные решения можно описать языком инфологического моделирования (ЯИМ), основанном на языке SQL, который позволяет дать удобное и полное описание любой сущности и, следовательно, всей базы данных. Например:
СОЗДАТЬ ТАБЛИЦУ Блюда *(Стержневая сущность)
ПЕРВИЧНЫЙ КЛЮЧ (БЛ)
ПОЛЯ (БЛ Целое, Блюдо Текст 60, Вид Текст 7)
ОГРАНИЧЕНИЯ (1. Значения поля Блюдо должны быть
уникальными; при нарушении вывод
сообщения "Такое блюдо уже есть".
2. Значения поля Вид должны принадлежать
набору: Закуска, Суп, Горячее, Десерт,
Напиток; при нарушении вывод сообщения
"Можно лишь Закуска, Суп, Горячее,
Десерт, Напиток");
СОЗДАТЬ ТАБЛИЦУ Состав *(Связывает Блюда и Продукты)
ПЕРВИЧНЫЙ КЛЮЧ (БЛ, ПР)
ВНЕШНИЙ КЛЮЧ (БЛ ИЗ Блюда
NULL-значения НЕ ДОПУСТИМЫ
УДАЛЕНИЕ ИЗ Блюда КАСКАДИРУЕТСЯ
ОБНОВЛЕНИЕ Блюда.БЛ КАСКАДИРУЕТСЯ)
ВНЕШНИЙ КЛЮЧ (ПР ИЗ Продукты
NULL-значения НЕ ДОПУСТИМЫ
УДАЛЕНИЕ ИЗ Продукты ОГРАНИЧИВАЕТСЯ
ОБНОВЛЕНИЕ Продукты.ПР КАСКАДИРУЕТСЯ)
ПОЛЯ (БЛ Целое, ПР Целое, Вес Целое)
ОГРАНИЧЕНИЯ (1. Значения полей БЛ и ПР должны принадлежать
набору значений из соответствующих полей таблиц
Блюда и Продукты; при нарушении вывод сообщения
"Такого блюда нет" или "Такого продукта нет".
2. Значение поля Вес должно лежать в пределах от 0.1 до 500 г.);
Однако такое описание не отличается наглядностью. Для достижения большей иллюстративности целесообразно дополнять проект используя языки инфологического моделирования "Сущность-связь" или "Таблица-связь
В ER диаграммах "Сущность-связь" сущности изображаются (рис.2) помеченными прямоугольниками, ассоциации – помеченными ромбами или шестиугольниками, атрибуты – помеченными овалами, а связи между ними – ненаправленными ребрами (линиями, соединяющими геометрические фигуры), над которыми может проставляться степень связи (1 или буква, заменяющая слово "много") и необходимое пояснение.
В языке инфологического моделирования "Таблица-связь" (рис.3) все сущности изображаются одностолбцовыми таблицами с заголовками, состоящими из имени и типа сущности. Строки таблицы – это перечень атрибутов сущности, а те из них, которые составляют первичный ключ, располагаются рядом и обводятся рамкой. Связи между сущностями указываются стрелками, направленными от первичных ключей или их составляющих.
Блюда (стержень) Состав (ассоциация) Расход (характеристика)
ВРЕМЯ, ОТВЕДЕННОЕ НА выполнение
ЛАБОРАТОРНОЙ РАБОТЫ
Подготовка к работе – 1,0 акад. часа
Выполнение работы – 1,0 акад. часа
Оформление работы – 0,5 акад. часа
ЛИТЕРАТУРА
-
Вейскас Дж. Эффективная работа с Microsoft Access 97. – СПб.: Питер, 1999.
-
Золотова С.И. Практикум по Access. – М.: Финансы и статистика, 2003.
-
Кузнецов А. Microsoft Access 2003. Русская версия. Учебный курс. – СПб.: Питер; Киев; Издательский дом BHV, 2006.
-
Тимошок Т.В. Microsoft Office Access 2007. Самоучитель. – М.: ООО «И.Д. Вильямс», 2008.
-
Microsoft Access 2000. Шаг за шагом: Практ. Пособ./Пер. с англ. – М.: ЭКОМ, 2000.
ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ДАННЫХ
«СУЩНОСТЬ - СВЯЗЬ»
ЯЗЫКИ ПОСТРОЕНИЯ МОДЕЛЕЙ
Методическое указание к выполнению лабораторной работы
по дисциплине «Информационное обеспечение систем управления»
для студентов специальности 220201
всех форм обучения
СОСТАВИЛИ: КАПРАЛОВА Ольга Альбертовна
СТЕЛЬМАХ И. В.
Рецензент
Редактор Л.В. Максимова
Подписано в печать Формат 60х84 1/20
Бумага тип. Усл.печ.л. 1,5 Уч.- изд.л.
Тираж 100 экз. Заказ Бесплатно
Саратовский государственный технический университет
410054, г. Саратов, ул. Политехническая, 77
Копипринтер БИТТиУ, 413840, г. Балаково, ул. Чапаева, 140