Информационные объекты и связи. База данных как информационная модель предметной области

Одно – однозначные связи

Одно – однозначные связи имеют место, когда каждому экземпляру первого объекта (А) соответствует только один экземпляр второго объекта (В)и наоборот, каждому экземпляру второго объекта (В) соответствует только один экземпляр первого объекта (А). Следует заметить, что такие объекты легко могут быть объединены в один, структура которого образуется объединением реквизитов обоих исходных объектов, а ключевым реквизитом может быть выбран любой из альтернативных ключей, т.е. ключей исходных объектов. Графическое изображение одно – однозначных связей являются группа – староста, фирма – расчетный счет в баке и т.п.

Рис.1 Графическое изображение одно – однозначных отношений объектов

Одно – многозначные связи (1:М)

Одно – многозначные связи (1:М) – это такие связи, когда экземпляру одного объекта (А) может соответствовать несколько экземпляров другого объекта (В), а каждому экземпляра второго объекта (В) может соответствовать только один экземпляр первого объекта (А).

Рис.2 Графическое изображение одно – многозначный связи отношений объектов.

В такой связи объект А является главным объектом, а объект В – подчиненным, т.е. имеет место иерархическая подчиненность объекта В объекту А. Примером одно – многозначных связей являются подразделения – сотрудники, кафедра – преподаватель, группа студент и т.п.

Много – многозначные связи (M:N)

Много – многозначные связи (M:N) – это когда, каждому экземпляру одного объекта (А) могут соответствовать несколько экземпляров второго объекта (В) и наоборот, каждому экземпляру второго объекта (В) может соответствовать тоже несколько экземпляров первого объекта (А).

Рис.3 Преобразование связи типа M:N через объект – связку

Объект – связка должен иметь идентификатор, образованный из идентификаторов исходных объектов Ка и Кб.
Примером много – многозначных связей является связь поставщики – товары, если один поставщик поставляет разные наименования товаров, а товар одного наименования поставляется несколькими поставщиками.

Определение связей между информационными объектами

Рассмотрим определение связей между информационными объектами и тип отношений, которыми они характеризуются, для предметной области Учебный процесс .

Связи между объектами ГРУППА - СТУДЕНТ характеризуются одно – многозначными отношениями (1:М), поскольку одна группа включает много студентов, а один студент входит только в одну группу. Связь между ними осуществляется по номеру группы, который является уникальным идентификатором главного объекта ГРУППА входит в составной идентификатор объекта СТУДЕНТ (см.табл.1)

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

Таблица 1. Объекты справочной информации о студентах, группах и предметах

Таблица 2. Группировка реквизитов по информационным объектам документа Список преподавателей кафедры

В таблице приняты обозначения для ключа: П – простой, У – уникальный.

В каждой группе в течение семестра проводятся занятия по разным предметам (объект ИЗУЧЕНИЕ ). С другой стороны, каждое занятие определенно для каждой группы. Поэтому имеет место связь типа один – ко – многим между объектами ПРЕДМЕТ - ИЗУЧЕНИЕ .

По каждому предмету проводится множество занятий в различных группах разными преподавателями. С другой стороны, каждое занятие проводится по конкретному предмету, что определяет отношения типа один – ко – многим между объектами ПРЕДМЕТ - ИЗУЧЕНИЕ . Аналогично определяются отношения типа один – ко – многим между объектами ПРЕПОДАВАТЕЛЬ – ИЗУЧЕНИЕ .
Объект ИЗУЧЕНИЕ фактически играет роль объекта связки в много – многозначных отношениях объектов.

Рис.4 Много – многозначные связи информационных объектов


Рис.5 Информационно – логическая модель предметной области Учебный процесс

Объект УСПЕВАЕМОСТЬ содержит данные об успеваемости (оценку) конкретного студента по конкретному занятию. Поэтому он является связанным с объектом СТУДЕНТ и объектом ИЗУЧЕНИЕ . Один студент имеет оценки по нескольким занятиям, но каждая оценка всегда относится к одному конкретному студенту. Это означает, объект УСПЕВАЕМОСТЬ является подчиненным и находится в одно – многозначных отношениях с объектом СТУДНТ . Объект УСПЕВАЕМОСТЬ , а также является подчиненным и находится в одно – многозначных отношениях с объектом ИЗУЧЕНИЕ. Объект УСПЕВАЕМОСТЬ выполняет роль объект – связки много – многозначных отношениях объектов СТУДЕНТ и ИЗУЧЕНИЕ . Много – многозначные отношения между этими объектами определяются тем, что одному студенту соответствует много занятий, отображаемых объектом ИЗУЧЕНИЕ , а одно занятие проводится со многими студентами.

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

Таблица 3 Связи информационных объектов

Информационно – логическая модель предметной области Учебный процесс

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

Логическая структура реляционной базы данных

Логическая структура реляционной базы данных Access является адекватным отображением полученной информационно – логической модели, не требующим дополнительных преобразований. Каждый информационный объект модели данных отображается соответствующей реляционной таблицей. Структура реляционной таблицы определяется реквизитным составом соответствующего информационного объекта, где каждый столбец (поле) соответствует одному из реквизитов объекта. Ключевые реквизиты объекта образуют уникальный ключ реляционной таблицы. Для каждого столбца задается тип, размер данных и другие свойства. Строки (записи) таблицы соответствуют экземплярам объекта и формируются при загрузке таблиц.

Связи между объектами модели данных реализуются одинаковыми реквизитами – ключами связи в соответствующих таблицах. При этом ключом связи всегда является уникальный ключ главной таблицы. Ключом связи в подчиненной таблице является либо некоторая часть уникального ключа в ней, либо поле, не входящее в состав первичного ключа (например, код кафедры в таблице ПРЕПОДАВАТЕЛЬ ). Ключ связи в подчиненной таблице называется внешним ключом . В Access может быть создана схема данных , наглядно отображающая логическую структуру базы данных. Определение одно – многозначных связей в этой схеме должно осуществляться в соответствии с построенной моделью данных. Внешний вид схемы данных практически совпадает с графическим представлением информационно – логической модели. Для модели данных, построенной в рассмотренном примере, логическая структура базы данных в виде схемы данных Access приведена на рис.2.7.

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

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

Различают 4 типа связи :

    1:N (один ко многим).

    N:1 (многие к одному).

    N:N(многие ко многим).

Помимо «тип связи» используется понятие«степень связи» . В инфологической модели помимо степени связи надо указыватьпринадлежность связи .

Класс принадлежности – показывает должен или не должен объект одного класса участвовать в связях с объектами другого класса. Класс принадлежности объекта может быть обязательным или необязательным.

Обязательный класс принадлежности.

Если все объекты первого класса должны участвовать в связи с объектами второго класса, то класс принадлежности объектов 1-го класса называется обязательным .

Необязательный класс принадлежности.

Если некоторые объекты 1-го класса могут не участвовать в связях с объектами 2-го класса, то класс принадлежности объектов 1-го класса называются необязательными .

8.ER-диаграммы и их разновидности. Понятия сущности, связи, атрибуты.

Преподаватель читает курс.

Связь именуется глаголом «читает».

Связь между объектами может быть выражена 2 способами представления с помощью ER-диаграмм.

    Диаграмма ER- экземпляра.

По номеру курса можно однозначно идентифицировать курс.

    Диаграмма ER- типа

Тип связи 1 к 1.

Класс принадлежности объектов и для П и для К необязательный.

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

Как правило в описании предметной области сущность обозначается как существительное.

Связь – представляет собой соединение между двумя или более сущностями.

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

Атрибут – свойство сущности.

Атрибутами сущности «Преподаватель» является номер, ФИО, дата рождения, должность.

Ключ сущности – это атрибут или набор атрибутов, используемый для идентификации экземпляра сущности.

Ключ связи – набор ключей сущностей, которые соединяются этой связью.

Ключом связи «Читает» является набор сущностей П и К <НП, НК>.

К
аждый преподаватель читает 1 курс, каждый курс читается одним преподавателем.

Каждый преподаватель читает 1 курс, каждый курс читается не более, чем одним преподавателем.

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

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


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


9.Описание сложных объектов. Составные, обобщенные, агрегированные объекты

По степени сложности различают простые и сложные объекты.

Простой объект – объект, который рассматривается как неделимый.

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

Инфологическая модель (информационно-логическая модель) - ориентированная на человека и не зависимая от типа СУБД модель предметной области, определяющая совокупности информационных объектов, их атрибутов и отношений между объектами, динамику изменений предметной области, а также характер информационных потребностей пользователей. Инфологическая модель предметной области может быть описана моделью "сущность-связь" (моделью Чена), в основе которой лежит деление реального мира на отдельные различимые сущности, находящиеся в определенных связях друг с другом, причем обе категории - сущность и связь полагаются первичными, неопределенными понятиями.

Цель инфологического моделирования

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

Основные понятия

  • Сущность – любой различимый объект (объект, который мы можем отличить от другого), информацию о котором необходимо хранить в базе данных. Сущностями могут быть люди, места, самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть ГОРОД, а экземпляром – Москва, Киев и т.д.
  • Атрибут – поименованная характеристика сущности. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей (например, ЦВЕТ может быть определен для многих сущностей: СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д.). Атрибуты используются для определения того, какая информация должна быть собрана о сущности. Примерами атрибутов для сущности АВТОМОБИЛЬ являются ТИП, МАРКА, НОМЕРНОЙ ЗНАК, ЦВЕТ и т.д. Здесь также существует различие между типом и экземпляром. Тип атрибута ЦВЕТ имеет много экземпляров или значений: Красный, Синий, Банановый, Белая ночь и т.д., однако каждому экземпляру сущности присваивается только одно значение атрибута.

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

  • Ключ минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся. Для сущности Расписание ключом является атрибут Номер_рейса или набор: Пункт_отправления, Время_вылета и Пункт_назначения (при условии, что из пункта в пункт вылетает в каждый момент времени один самолет).
  • Связь – ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных – это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи. А так как в реальных базах данных нередко содержатся сотни или даже тысячи сущностей, то теоретически между ними может быть установлено более миллиона связей. Наличие такого множества связей и определяет сложность инфологических моделей.

Требования, предъявляемые к инфологической модели

  • Адекватное, отображение предметной области
  • Недопущение неоднозначной трактовки модели
  • Четкое определение моделируемой предметной области (конечность модели)
  • Легкая расширяемость, обеспечивающая ввод новых данных без изменения ранее определенных, то же относят и к удалению данных
  • Возможность композиции и декомпозиции модели в связи с большой размерностью реальных инфологических моделей
  • Легкое восприятие различными категориями пользователей; желательно, чтобы инфологическую модель строил (или хотя бы участвовал в ее создании) специалист, работающий в данной предметной области, а не только проектировщик систем машинной обработки данных
  • Применимость языка спецификаций модели как при ручном, так и при автоматизированном проектировании информационных систем

Компоненты инфологической модели

  • Описание объектов и связей между ними, называемой ER-моделью (расшифровывается как модель "Сущность-связь")
  • Описание информационных потребностей пользователей
  • Алгоритмические связи атрибутов
  • Лингвистические отношения, обусловленные особенностями обображения предметной области в языковой среде
  • Ограничения целостности

Построение модели "Объект - свойтво - отношение"

Классы объектов

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

При отражении в информационной системе каждый объект представляется своим идентификатором, который отличает один объект класса от другого, а каждый класс объектов представляется именем этого класса. Так, для объектов класса «ИЗУЧАЕМЫЕ ПРЕДМЕТЫ» идентификатором каждого объекта будет «НАЗВАНИЕ ПРЕДМЕТА». Идентификатор должен быть уникальным.

Каждый объект обладает определенным набором свойств. Для объектов одного класса набор этих свойств одинаков, а их значения, естественно, могут различаться. Например, для объектов класса «СТУДЕНТ» таким набором свойств, описывающим объекты класса, может быть «ГОД РОЖДЕНИЯ», «ПОЛ» и др.

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

Будем использовать для отображения объектов и их свойств следующие обозначения.

Каждому классу объектов в инфологической модели присваивается уникальное имя. Именем класса объектов является грамматический оборот существительного (существительное, у которого могут быть прилагательные и предлоги). Если имя состоит из нескольких слов, то желательно, чтобы первым стояло существительное. Существительное должно употребляться в единствен ном, а не во множественном числе. Поэтому для рассмотренного выше класса объектов «ИЗУЧАЕМЫЕ ДИСЦИПЛИНЫ» лучше дать имя «ДИСЦИПЛИНА ИЗУЧАЕМАЯ». Если в предметной области традиционно используются разные имена для обозначения какого-либо класса объектов (т. е. имеет место синонимия), то все они должны быть зафиксированы при описании системы, затем одно из них выбирается за основное, и только оно должно в дальнейшем использоваться в ИЛМ. Помимо имени класса объектов в ИЛМ может использоваться его короткое кодовое обозначение.

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

Связи между объектом и его свойствами

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

Связь между объектом и его свойством может быть различной. Объект может обладать только одним значением какого-то свойства. Например, каждый человек может иметь только одну дату рождения. Назовем такие свойства единичными . Для других свойств возможно существование одновременно нескольких значений у одного объекта. Пусть, например, при описании «СОТРУДНИКА» фиксируется в качестве его свойства «ИНОСТРАННЫЙ ЯЗЫК», которым он владеет. Так как сотрудник может знать несколько иностранных языков, то такое свойство будем называть множественным . При изображении связи между объектом и его свойствами для единичных свойств будем использовать одинарную стрелку, а для множественных свойств - двойную.

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

Другой характеристикой связи между объектом и его свойством является признак того, присутствует ли это свойство у всех объектов данного класса либо отсутствует у некоторыми объектов. Например, для отдельных служащих может иметь место свойство «УЧЕНАЯ СТЕПЕНЬ», а другие объекты этого класса могут не обладать, указанным свойством. Назовем такие свойства условными.

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

Иногда в инфологической модели бывает полезно ввести понятие «составное свойство». Примерами таких свойств могут быть «АДРЕС», состоящий из «ГОРОДА», «УЛИЦЫ», «ДОМА» и «КВАРТИРЫ», и «ДАТА РОЖДЕНИЯ», состоящая из «ЧИСЛА», «МЕСЯЦА» и «ГОДА». Используем в ИЛМ для обозначения составного свойства квадрат, из которого исходят линии, соединяющие его с обозначениями составляющих его элементов.

Связи между объектами

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

  • «один к одному» (1:1): в каждый момент времени каждому представителю (экземпляру) сущности А соответствует 1 или 0 представителей сущности В:
Студент может не "заработать" стипендию, получить обычную или одну из повышенных стипендий.
  • «один ко многим» (1:М): одному представителю сущности А соответствуют 0, 1 или несколько представителей сущности В.
Квартира может пустовать, в ней может жить один или несколько жильцов.
  • «многие к одному» (М:1)

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

Объясним сказанное на конкретных примерах. Как указывалось выше, инфологическая модель строится не для отдельного объекта, а отображает классы объектов и связи между ними. Соответствующая диаграмма, отображающая это, называется диаграммой ER-типа (такое название обусловлено тем, что по-английски слово «сущность» пишется «Entity», а связь - «Relationship»). Однако иногда, кроме диаграмм ER-типа, используются диаграммы ER-экземпляров.

Предположим, что в инфологической модели отображается связь между двумя классами объектов: «ЛИЧНОСТЬ» и «ЯЗЫК ИНОСТРАННЫЙ». -

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

Предположим далее, что предметной областью является институт, а объект «ЛИЧНОСТЬ» отображает абитуриентов, поступающих в этот институт. Каждый из абитуриентов обязательно должен владеть каким-либо иностранным языком, но никто ни владеет более чем одним языком.

Как в первом, так и во втором рассмотренном случае между сущностями наблюдается отношение М:1. На диаграмме это отображено со стороны объекта «ЛИЧНОСТЬ» двойной стрелецкой, а со стороны объекта «ЯЗЫК ИНОСТРАННЫЙ» - одинарной стрелкой на линии, изображающей связь между данными сущностями.

Разница в рассматриваемых ситуациях заключается в том, что в первом случае класс принадлежности является необязательным для обоих сущностей, а во втором - для сущности «ЛИЧНОСТЬ» класс принадлежности является обязательным. На диаграмме это отображено точкой в прямоугольнике, соответствующем объекту «ЛИЧНОСТЬ».

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

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

В этом случае связь между объектам» будет М: М, и класс принадлежности обоих сущностей является обязательным" .

Простые и сложные объекты

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

Выделяют несколько разновидностей сложных объектов: составные объекты, обобщенные объекты и агрегированные объекты.

Составной объект соответствует отображению отношения «целое- часть». Примерами составных объектов являются УЗЛЫ - ДЕТАЛИ, КЛАСС -УЧЕНИКИ и т. п.

Для отображения составных объектов в инфологической модели обычно не используются какие-либо специальные условные обозначения. Связь между составным и составляющими его объектами отображается так же, как это было описано выше. Причем характер связи тоже может быть разный: так, «ДЕТАЛИ» и «УЗЛЫ» связаны между собой отношением типа М: М, а «ГРУППА» и «СТУДЕНТЫ» - отношением 1: М.

Обобщенный объект отражает наличие связи «род - вид» между объектами предметной области. Например, объекты СТУДЕНТ, ШКОЛЬНИК, АСПИРАНТ, УЧАЩИЙСЯ ТЕХНИКУМА образуют обобщенный объект УЧАЩИЕСЯ. Объекты, составляющие обобщенный объект, называются его категориями.

Как «родовой» объект, так и «видовые» объекты могут обладать определенным набором свойств. Причем наблюдается так называемое наследование свойств, т. е. «видовой» объект обладает всеми теми свойствами, которыми обладает «родовой» объект, плюс свойствами, присущими только объектам этого вида.

Агрегированные объекты соответствуют обычно какому-либо процессу, в который оказываются «вовлеченными» другие объекты. Например, агрегированный объект «ПОСТАВКА» объединяет в себе объекты «ПОСТАВЩИК», который поставляет продукцию, «ПОТРЕБИТЕЛЬ», который получает эту продукцию, а также саму поставляемую «ПРОДУКЦИЮ». Своеобразным объектом является «ДАТА ПОСТАВКИ». Агрегированный объект может, так же как и простой объект, иметь характеризующие его свойства. В рассматриваемом примере таким свойством может быть размер поставки.

Сравнение методик построения ER-моделей

ER-модели очень широко используются в практике проектирования баз данных. Причем они используются как при ручном, так и при автоматизированном проектировании. Методики графического представления ER-моделей несколько различаются в разных системах автоматизации проектирования и в разных литературных источниках.

Далее мы рассмотрим особенности представления ER-моделей в трех наиболее известных системах автоматизации проектирования (CASE-системах): Prokit*WORKBENCH, Desing/IDEF и CASE ORACLE, а также в некоторых литературных источниках.

Можно выделить несколько категорий различий в изображении ER-моделей.

1. Несущественные различия, связанные с использованием разных условных обозначений для отображения одних и тех же сущностей. Так, для обозначения объекта могут использоваться прямоугольники, блоки с закругленными углами, овалы и т. д.

Следующая совокупность различий связана со способом изображения связей между объектами и заданием имен связей. Так, в некоторых методиках для изображения связи в разъеме линии, отображающей эту связь, предлагается изображать ромб и внутри него или рядом с ним писать название связи (модель Чена). Так как связи являются двусторонними, то наименование связи будет меняться в зависимости от того, с какой стороны ее рассматривать. Поэтому часто в ИЛМ предлагается указывать оба этих названия (например, в системах CASE ORACLE, Prokit). Причем для того, чтобы было понятно, к какому из направлений связи какое название относится, принимают определенные соглашения о том, как располагать эти названия на схемах. Например, сверху линии помещать названия, относящиеся к левой стороне связи, а под линией - к правой. Наличие такого большого числа обозначений и подписей загромождает модель. Кроме того, само присвоение названий часто представляет некоторую трудность, что увеличивает трудоемкость инфологического моделирования. Поэтому в тех случаях, когда это не приводит к двусмысленностям и неясностям, если это позволяет система, можно рекомендовать не использовать особые обозначения и имена для связей.

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

Для отображения обязательности вхождения объектов в связь («класс принадлежности/членства») также используются разные условные обозначения. Так, в CASE ORACLE класс членства передается следующим образом; с той стороны связи, с которой элемент может не обязательно входить в связь, используется Пунктирная линия, а там, где членство обязательное, - сплошная линия. С учетом класса членства возможны типы отношений, представленные на рисунке.

Используемые в CASE ORACLE обозначения более удобны, так как если объект участвует в большом количестве связей, то дополнительные прямоугольники с точками становится неудобно располагать на рисунке.

В Desing IDEF характер членства в связи изображается, как показано на рисунке.

2. Различия, также связанные со способом изображения тех или иных ситуаций, но более существенные, приводящие к различиям в самих моделях. Например, в системе 3RACLE обобщенный объект изображается путем «вложения» блоков, обозначающих «видовые» объекты, внутрь блока, изображающего «родовой» объект. На рисунке показано изображение объекта «ЛИЧНОСТЬ», рассмотренного выше, в условных обозначениях, используемых в CASE ORACLE.

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

На рисунке изображен тот же обобщенный объект ЛИЧНОСТЬ с использованием синтаксиса системы IDEF1X. По своей семантике этот способ изображения ближе к предложенному нами базовому способу изображения ИЛМ. Разница заключается в том, что для сущностей-категорий и «общих» сущностей в IDEF1X используются одинаковые обозначения-

3. Кроме различия в изображении тех или иных сущностей, в теории инфологического моделирования наблюдается расхождение в используемой терминологии. Например, в CASE ORACLE родовой объект называется супертип (syper-type), а видовой - подтип (sub-type). Таких различий в терминологии можно привести много, но это не является сейчас нашей целью.

4. Следующий круг различий связан с пространственным изображением тех или иных компонентов ИЛМ. Например, свойства объекта иногда не отображаются на той же схеме, что объекты и связи между ними, а их описания выполняются отдельно. Часто «писание свойств представляют в табличной или иной аналитической форме, а не в графическом виде.

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

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

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

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

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

В IDEF свойства объекта могут быть только единичные и всегда определенные (не условные). Если свойство может отсутствовать у каких-либо объектов, то надо выделять отдельные сущности, например, ШТАТНЫЙ СЛУЖАЩИЙ с атрибутом ОКЛАД и ПОЧАСОВИК, не имеющий такого атрибута. Это приведет к необходимости выделения большого числа объектов и связей в ИЛМ, к снижению наглядности модели. Например, отдельные экземпляры объекта ЛИЧНОСТЬ могут иметь или не иметь ученое звание, ученую степень, год окончания вуза и многих других признаков. По каждому из этих признаков придется выделять подклассы.

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

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

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

В некоторых CASE-системах имеет место ситуация, когда какая-то конструкция допускается в системе как промежуточная. Например, в IDEF и CASE ORACLE отношение М: М допускается как неспецифическое отношение. Его наличие разрешается на ранних стадиях разработки проекта, а в дальнейшем оно должно быть заменено на специфическое отношение посредством введения третьей сущности. Это является недостатком системы, так как, во-первых, не все СУБД требуют такого преобразования (некоторые системы поддерживают отношение М:М в явном виде), и, во-вторых, если такое преобразование потребуется, его вполне система автоматизации проектирования могла бы выполнить автоматически на этапе даталогического проектирования. Даже если выполняется «ручное» проектирование, то указанное преобразование должно выполняться проектировщиком на стадии даталогического проектирования, а не при описании предметной области. Кроме того, при рассматриваемом преобразовании на стадии инфологического проектирования в IDEF вводится новая категория сущностей - сущности пересечения или ассоциативные сущности. Введение новых сущностей влечет за собой введение в ИЛМ и дополнительных связей. Все это, вместе взятое, усложняет и без того нелегкую задачу инфологического проектирования.

В предметной области могут быть сущности, идентификаторы которых являются зависимыми от идентификатора какого-то другого объекта. Например, если участки на предприятии нумеруются в пределах цеха, то идентификатор участка будет составным, включающим в себя код цеха и код участка. В инфологической модели можно ограничиться указанием этого составного идентификатора. Некоторые методики построения ER-моделей (например, методология IDEFIX, Prokit) предусматривают введение особых видов сущностей и особых видов отношений для отображения подобных ситуаций. Так, в IDEF сущность, для идентификации которой надо рассматривать ее отношение с другими сущностями; называется зависимой от идентификатора сущностью, и для ее изображения используется блок с закругленными углами. Для изображения же не зависимой от идентификации сущности используется прямоугольник. Для связи объектов, один из которых нужен для полной идентификации другого, вводится понятие идентифицирующего отношения. Для него также вводится свое условное обозначение. В IDEF для идентифицирующего отношения используется сплошная линия, а для неидентифицирующего пунктирная.

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

И тот, и другой подход имеет право на существование. Принципиальной разницы, влекущей за собой какие-то существенные последствия, в сравниваемых подходах нет.

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

При выборе информационных объектов необходимо ответить на ряд вопросов:

1. На какие таблицы можно разбить данные, подлежащие хранению в БД?

2. Какое имя можно присвоить каждой таблице?

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

4. Какие имена можно присвоить выбранным характеристикам?

В нашем случае предполагается завести следующие таблицы (рис 4):


Выделим связи между информационными объектами (рис.5)



В ходе этого процесса необходимо ответить на следующие вопросы:

1. Какие типы связей между информационными объектами?

2. Какое имя можно присвоить каждому типу связей?

3. Каковы возможные типы связей, которые могут быть использованы впоследствии?

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

1. Какова область значений для числовых характеристик?

2. Каковы функциональные зависимости между характеристиками одного информационного объекта?

3. Какой тип отображения соответствует каждому типу связей?

При проектировании БД существуют взаимосвязи между информационными объектами трех типов: «один к одному», «один ко многим», «многие ко многим» (рис.6).


Например:

Построение концептуальной модели

В простых случаях для построения концептуальной схемы используют традиционные методы агрегации и обобщения. При агрегации объединяются информационные объекты (элементы данных) в один в соответствии с семантическими связями между объектами. Например, урок истории в 10 «а» классе проводится в кабинете №7, начало в 9-30. Методом агрегации создаем информационный объект (сущность) РАСПИСАНИЕ со следующими атрибутами: «класс», «предмет», «кабинет», «время». При обобщении информационные объекты (элементы данных) объединяются в родовой объект (рис.7):

Выбор модели диктуется прежде всего характером предметной области и требованиями к БД. Другим немаловажным обстоятельством является независимость концептуальной модели от СУБД, которая должна быть выбрана после построения концептуальной схемы.

Модели «сущность-связь», дающие возможность представлять структуру и ограничения реального мира, а затем трансформировать их в соответствии с возможностями промышленных СУБД, являются весьма распространенными.

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

Тип сущности - ученик

Экземпляр сущности - Иванов, Петров, Сидоров и др.

В нашем примере Школа, Класс, Предметы, Ученики, Учителя, Оценки – сущности. Проанализируем связи между сущностями (рис.8).

Теперь можно перейти к проектированию информационной (концептуальной) схемы БД (атрибуты сущностей на диаграмме не показаны) (рис.9).


принадлежит Школа
Класс Учится Ученик
работает изучает
Учитель Преподает Предмет
экзамен
Ведомость

Логическое проектирование

Логическое проектирование представляет собой необходимый этап при создании БД. Основной задачей логического проектирования является разработка логической схемы, ориентированной на выбранную систему управления базами данных. Процесс логического проектирования состоит из следующих этапов:

1. Выбор конкретной СУБД;

2. Отображение концептуальной схемы на логическую схему;

3. Выбор языка манипулирования данными.

Выбор конкретной СУБД

Одним из основных критериев выбора СУБД является оценка того, насколько эффективно внутренняя модель данных, поддерживаемая системой, способна описать концептуальную схему. Системы управления базами данных, ориентированные на персональные компьютеры, как правило поддерживают реляционную или сетевую модель данных. Подавляющее большинство современных СУБД – реляционные.

Конструирование баз данных на основе реляционной модели имеет ряд важных преимуществ перед другими моделями

· Независимость логической структуры от физического и пользовательского представления.

· Гибкость структуры базы данных – конструктивные решения не ограничивают возможности разработчика БД выполнять в будущем самые разнообразные запросы.

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

Связи между объектами.

Наименование параметра Значение
Тема статьи: Связи между объектами.
Рубрика (тематическая категория) Связь

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

Существует три вида элементарных связей: один-к-одному (рис. 4.1.), один-ко-многим (рис. 4.2.) и многие-ко-многим (рис. 4.3.).

Связь один-к-одному существует, когда один экземпляр одного объекта связан с единственным экземпляром другого. Связь один-к-одному обозначается стрелками ←или→.

Руководит

Рис. 4.1. Пример связи ʼʼодин-к-одномуʼʼ.

Связь один-ко-многим существует, когда один экземпляр первого объекта связан с более чем с одним экземпляром второго объекта͵ но каждый экземпляр второго объекта связан только с одним экземпляром первого. Такая связь изображается двойной стрелкой →→.

Состоит из

Рис. 4. 2. Пример связи ʼʼодин-ко-многимʼʼ.

Связь многие-ко-многим существует, когда каждый экземпляр первого объекта связан с одним или большим количеством экземпляров второго, и каждый экземпляр второго связан с одним или многими экземплярами первого. Этот тип связи изображается двусторонней стрелкой ↔.

Изучает(ся)

Рис. 4.3. Пример связи ʼʼмногие-ко-многимʼʼ.

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

Все связи в информационной модели требуют описания, ĸᴏᴛᴏᴩᴏᴇ, как минимум, включает:

‣‣‣ идентификатор связи;

‣‣‣ вид связи (ее множественность и условность).

Элементарные связи являются составными частями структур связей . Безусловная последовательность связей один-к-одному принято называть структурой типа очередь и графически отображена на рис.4.4.а. Обобщением структуры типа очередь является циклическая структура, изображенная на рис. 4.4.б.

Очень важную роль играет древовидная информационная модель, являющаяся одной из самых распространенных типов классификационных структур.
Размещено на реф.рф
Древовидная связь является безусловной связью типа один-ко-многим и графически изображена на рис. 4.4. в. Особенностью такой структуры является то, что каждый объект может иметь не более одного предка, произвольное количество потомков. Объект, который не имеет потомков, называют листовым. Иерархическое дерево начинается с одного объекта͵ называемого корневым объектом. Очень важно, что каждый объект должен иметь свое уникальное имя или идентификатор.
Размещено на реф.рф
Эту структуру связи еще называют иерархической. На рис. 4.4. в. прямоугольник R является корневым объектом. Объекты B1,. . ., B8 являются листовыми. Иерархическая модель довольно удобна для представления предметных областей, так как иерархические отношения довольно часто встречаются между сущностями реального мира. Но иерархическая модель не поддерживает отношения ʼʼмногие ко многимʼʼ, когда множество объектов одного типа связаны со множеством объектов другого типа. Предположим, что требуется построить модель отношения между множеством преподавателœей и множеством предметов. Для моделирования таких отношений иерархическая древовидная структура не подходит.

Z
В
А
а) . . .
Z
B
б)
C

R
в)
A1
A2 A@A@
A3
A4
B1
B4
B5
B6
B7
B8

Рис.4.4. Информационные модели типа ʼʼочередьʼʼ (а), ʼʼциклʼʼ (б), ʼʼдеревоʼʼ (в).

Статьи по теме: