Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Моделирование данных




 

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

Из моделей типа «сущность – связь» наиболее известна модель П.Чена, или ER – модель (Entity–Relationship). Общим для всех моделей этого типа является использование трех основных конструкций: сущность, связь и атрибут.

Сущность (Entity) – собирательное понятие, некоторая абстракция реально существующего объекта, процесса или явления, о котором необходимо хранить информацию.

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

Связь (Relationship)– средство представления отношения между сущностями.

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

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

· каждая сущность должна иметь уникальное имя, и к одному и тому же имени должна всегда применяться одна и та же интерпретация. Одна и та же интерпретация не может применяться к различным именам, если только они не являются псевдонимами;

· сущность обладает одним или несколькими атрибутами, которые либо принадлежат сущности, либо наследуются через связь;

· сущность обладает одним или несколькими атрибутами, которые однозначно идентифицируют каждый экземпляр сущности;

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

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

Следующим шагом моделирования является идентификация связей.

Связь – поименованная ассоциация между двумя сущностями, значимая для рассматриваемой предметной области. Связь – это ассоциация между сущностями, при которой, как правило, каждый экземпляр одной сущности, называемой родительской сущностью, ассоциирован с произвольным (в том числе нулевым) количеством экземпляров второй сущности, называемой сущностью-потомком, а каждый экземпляр сущности-потомка ассоциирован в точности с одним экземпляром сущности-родителя. Таким образом, экземпляр сущности-потомка может существовать только при существовании сущности родителя.

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

На языке ER - модели концептуальная схема может быть представлена ERD (ER - диаграммой), в которой множество сущностей обозначается прямоугольниками, множество связей – ромбами.

Взаимосвязь сущностей описанной выше предметной области можно изобразить ER-диаграммой на рисунке 1.

 
 

 

 


Рисунок 1. ER–диаграмма

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

В предлагаемой модели сущность «Специальность» и сущность «Студент» связаны отношением «один – много».

Последним шагом моделирования является идентификация атрибутов.

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

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

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

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

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

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

В предлагаемом проекте будет рассмотрен именно тот набор атрибутов сущности «Студент», который помещен на диаграмме на рисунке 2.

Рисунок 2. ER-диаграмма с атрибутами

Обсудим значения атрибута «идентификационный номер специальности» сущности «Студент». Значения этого атрибута ассоциируют каждый экземпляр сущности «Студент» с одним из экземпляров сущности «Специальность».

Значение атрибута «идентификационный номер специальности» в сущности «Студент» обеспечивает связь сущности «Специальность» с сущностью «Студент» в отношении «один – много». Одну и ту же специальность могут получать много студентов, но информация о специальности заполняется только один раз, что позволяет избежать дублирования информации о специальности при её хранении.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 882; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.