ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 03.08.2024

Просмотров: 53

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Рис. 10.6. Выборуровнейотображендиаграммыя

Созданиелогическоймоделиданных

Уровнилогическоймодели

Различаюттриуровнялогическоймодели, отличающихсяпоглубине

 

 

представления

информацииданных:

 

 

 

 

 

 

 

 

• диаграмма сущность-

связь (Entity Relationship Diagram, ERD);

 

• модель данных, основаннаключахя

(Key Based model, KB);

 

• полная атрибутивнаямодель (Fully Attributed model, FA).

 

 

Диаграммасущность-связь

 

представляетсобой

модельданных верхнегоуровня. Она

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

 

области. Такаядиаграмманеслишкомдетализиро,вананеевключаютосновныея

 

сущности

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

 

Диаграммасущность-связь

можетвключать связи "многие-ко-многим" невключатьописание

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

 

экспертамипредметнойобласти.

 

 

 

 

 

 

 

 

Модельданных , основаннаключахя

 

, —болееподробное

представление данных. Она

включаетописаниевсех

сущностей и первичныхключей

ипредназначенадля

представления

структурыданныхиключей, которыесоответствуютпредметнойобласти.

 

 

 

Полнатрибутивнаямодель

 

—наиболеедетальное

представление структурыданных:

представляетданныевтретьейнормальнойформеивключаетвсе

 

 

сущности,

атрибуты и

связи .

 

 

 

 

 

 

 

 

Сущностиатрибуты

 

 

 

 

 

 

 

 

ОсновныекомпонентыдиаграммыERwinэто—

 

сущности, атрибуты и связи. Каждая сущность

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

 

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

 

 

Атрибут выражаетопределеннсвоействообъекта. СточкизренияБД(физическаямодель)

 

сущности соответствуеттаблица, экземпляру

 

сущности —строкавтаблице,

атрибуту

колонкат блицы.

 

 

 

 

 

 

 

 

Построение моделиданных

 

предполагаетопределение

 

сущностей и атрибутов, т. е.

необходимоопределить, какаяинформациябудетхранитьсявконкретной

 

сущности или

атрибуте. Сущность можноопределить

какобъект,событилиеконцепц,информацияю

окоторыхдолжнасохраняться

. сущности должныиметьнаименованиесчеткимсмысловым

значением, еноватьсясуществительнымединственномчисле, неносить"технических"

 

наименованийбытьдостаточноважнымидлятого, чтобыихмоделировать. Именование

 

сущности вединственномчислеоблегчаетвдальнейшемчтениемодели. Фактическиимя

 

сущности даетсяпоимениееэкземпляра. Примеромможетбыть

 

 

сущности Заказчик (ноне

Заказчики!)с атрибутами Номер заказчика, Фамилия заказчика и Адрес заказчика. На

уровнефизическмойделиейможетсоответствоватьтаблица

 

 

Customer сколонками

Customer_number, Customer_name и Customer_address. Каждая сущность должнабыть

полностьюопределенаспомощьютекстовогописания. Длявнесениядополнительных

 

комментариевопределенийк

 

сущности служатсвойства, определенныепользователем

(UDP)Использование. (UDP)аналогичноихиспользованиюBPwin.

 

 

 

 

Какбылоуказановыше, каждый

 

атрибут хранинформациютоб

определенномсвойстве

сущности, акаждыйэкземпляр

сущности долженбытьуникальным.

Атрибут илигруппа

атрибутов,которыеидентифицируют

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

.

Оченьважнодать

атрибуту правильноеимя.

Атрибуты должныименоватьсяединственном


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

(анетольковрамках сущности!).Поумолчаниюприпопыткевнесенияужесуществующего имени атрибута ERwinпереименовываетего.

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

 

например, когдатермин1определяетсячерезтермин2,термин2 —черезтермин3,атермин

 

 

 

3всвоюочередь—черезтермин1.Частоприходитсясоздаватьпроизводные

 

 

 

 

атрибуты, т. е.

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

 

атрибутов. Примеромпроизводного

атрибута можетслужить

Возраст сотрудника, которыйможетбытьвычислениз

 

 

атрибута Дата

рождения сотрудника. Такой атрибут можетпривестикконфликтам;действительно, если

 

вовремянеобновитьзначение

атрибута Возраст сотрудника, онможетпротиворечить

значению атрибута Дата рождения сотрудника. Производные атрибуты —ошибка

нормализации, однакоихвводятдляповышенияпроизводительностисистемы, чтобыне

 

 

 

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

 

 

 

 

 

Связи

 

 

 

 

 

 

 

 

 

 

Связь являетсялогическимсоотношениеммежду

 

сущностями. Каждая связь должна

именоватьсяглаголомилиглагольнойфразой.

 

Имясвязи

выражаетнекотороеограничение

илибизнес-правилоблегчаетчтениедиаграммы. Поумолчанию

 

имясвязи надиаграммене

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

 

связь "один-ко-

многим", связь "многие-ко-многим" неидентифицирующую

связь "один-ко-многим".

В IDEFIXразличаютзависимыенезависимые

 

сущности. Типсущности

определяетсяе

связью сдругими

сущностями. Идентифицирующая связь устанавливаетсямеждунезависимой

(родительскийконец

 

связи )изависимой(дочернийконец

связи ) сущностями. Когдарисуется

идентифицирующая связь, ERwinавтоматическипреобразуетдочернюю

сущность в

зависимую. Зависимая

сущность изображаетсяпрямоугольникомсоскругленнымиуглами.

 

Экземплярзависимой

сущности определяетсятолькочерезотношениекродительской

 

сущности. Приустановленииидентифицирующей

связиатрибуты первичногоключа

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

первичногоключа

дочерней

сущности. Этаоперациядополнения

атрибутов дочерней сущности присоздании

связи

называетсямиграцией

атрибутов. Вдочерней

сущности новые атрибуты помечаютсякак

внешнийключ— FK.

 

 

 

 

 

 

 

 

 

 

Приустановленеидентифицирующейии

связи дочерняя сущность остаетсянезависимой,

атрибуты первичногоключа

родительской сущности мигрируютвсоставнеключевых

 

компонентродительскойв

сущности. Неидентифицирующая связь служитдлясвязывания

независимых сущностей.

 

 

 

 

 

 

 

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

 

 

 

дочернемконце

связи, неидентифицирующая–пунктирной(см.

рис. 10.6 ).

 

 

 

 

 

 

 

 

 

 

 

 

Мощносвязейть (Cardinality)служитдля— обозначенияотношениячислаэкземпляров родительской сущности кчислуэкземплярдочернейв.

Различаютче ыре

типасущности :

 

 

общий случай, когда одному экземпляруродительскойсущности соответствуют0, 1или

 

многоэкземплярдочернейв

сущности ;непомечаетсякаким-либосимволом;

символом Р

помечаетсяслучай, когда одному экземпляруродительскойсущности

 

соответствуют1илимногоэкземплярдочернейв

сущности (исключенонулевое

значение);

помечаетсяслучай,

когда

одному экземпляруродительской сущности

символомZ


соответствуют0или1экземплярдочерней

сущности (исключенымножественные

значения);

 

 

• цифрой помечается случай точного соответствия, когда

одному экземпляруродительской

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

сущности.

Имясвязи (Verb Phrase)фраза—,характеризующаяотношениемеждуродительской дочерней сущностями .Для связи "один-ко-многим",идентифицирующейили неидентифицирующей, достаточноуказатьимя, характеризующееотношениеродительской

кдочерней сущности (Parent-to-Child)Для . связи многие-ко-многимследуетуказыватьимена какParent-to-Child,таки Child-to-Parent.

Типысущностейииерархиянаследования

 

 

 

Какбылоуказановыше,

связи определяют, являетсяли

сущность независимойили

 

зависимой. Различаютнесколько

типовзависимых

сущностей.

 

Характеристическая —зависимаядочерняя

сущность, котораясвязанатолькосодной

 

родительскойпосмыслухранинформациютхарактеристикахродительской

сущности

(рис. 10.7 ).

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 10.7. Примерхарактеристическойсущности"Хобби"

 

 

 

 

Ассоциативная сущность, связаннаянесколькимиродительскими

сущностями. Такая

сущность содержитинформацию

связях сущностей.

 

 

 

Именующая —частныйслучайассоциативной

сущности, неимеющейсобственных

атрибутов

(только атрибуты родительских сущностей, мигрировавшихкачествнешнегоключа).

 

Категориальная —дочерняя

сущность в иерархиинаследования .

 

 

Иерархиянаследования

(илииерархиякатегорий)представляетсобойособыйтип

 

 

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

 

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

 

Сотрудник

Изихобщихсвойствможносформироватьобобщенную

 

сущность (родовойпредок)

(рис. 10.8 ),чтобыпредставинформациють, общуюдлявсехтиповслужащих. Специфическая

 

 

 

 

 

сущностях

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

 

(потомках)

Постоянный сотрудник и Совместитель.

 

 

 

Обычно иерархиюнаследования

создают, когданесколько

сущностей имеютобщиепосмыслу

атрибуты, либокогда сущности имеютобщиепосмыслу

связи (наприм,ерслибы

Постоянный

сотрудник и Совместитель имелисходнуюпосмыслу

связь "работаетв"с

сущностью

Организация ),либокогдаэтодиктуетсябизнес-правилами.

Длякаждойкатегорииможноуказатьдискриминатор—

атрибут родовогопредка, который

показывает, какотличитьоднукатегориальную

сущность отдругой(

атрибут Тип на рис.

10.8).

 

 


Рис. 10.8. Иерархиянаследования. Неполнаякатегория

Иерархиикатегорийделятсянадватипа—полныеинеполные. Вполнойкатегорииодному экземпляруродовогопредка( сущность Служащий, рис. 10.9 )обязательносо тветствует

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

Рис. 10.9. Иерархиянаследования. Полнаякатегория

 

 

 

 

 

 

Есликатегорияещеневыстроенаполностьюивродовомпредкемогутсуществовать

 

 

экземпляры, которыен имеютсоответствующихэкземпляровпотомках, такаякатегория

 

 

будетнеполной. На

рис. 10.8 показанеполнаякатегория—сотрудникможетбытьнетолько

 

 

 

 

 

 

 

сущность Консультант ещене

постояннымилисовместителем, но консультантом, однако

 

 

 

внесена

иерархиюнаследования .

 

 

 

 

 

 

 

Ключи

 

 

 

 

 

 

 

 

 

 

 

 

Какбылосказановыше, каждыйэкземпляр

 

сущности долженбытьуникалендолжен

 

отличатьсядругих

 

атрибутов.

 

 

 

 

 

 

 

Первичныйключ

(primary key)это—

атрибут илигруппа

атрибутов, однозначно

 

идентифицирующаяэкземпляр

 

сущности . атрибуты первичногоключа

надиаграммене

 

требуютспециальногообозначения—этоте

 

атрибуты, которыенаходятсявсписке

атрибутов

вышегоризонтальнойлинии(см.,например,

 

рис. 10.9 ).

 

 

 

 

 

 

 

 

 

 

Водной

сущности могутоказатьсянесколько

 

 

атрибутов илинаборов

атрибутов, претендующих

нароль

первичногоключа

. Такиепретенденазываютсяты

потенциальнымиключами

 


(candidate key).

 

 

 

 

Ключимогутбытьсложными, т. е. содержащиминесколько

атрибутов. Сложные первичные

ключи нетребуютспециальногообозначения—этосписок

атрибутов, расположенныхвыше

горизонтальнойлинии.

 

 

 

 

Рассмотримкандидатовнароль

первичногоключа

сущности Сотрудник (рис. 10.10 ).

 

 

 

 

 

Рис. 10.10. Определениепервичногоключадлясущности"Сотрудник"

Здесьможновыделитьследующие

потенциальныеключи

:

1.Табельный номер ;

2.Номер паспорта ;

3.Фамилия + Имя + Отчество.

Длятогочтобыстатьпервичным,

потенциальныйключ

долженудовлетворятьду

требований:

 

 

Уникальность. Дваэкземпляранедолжныиметьодинаковыхзначенийвозможногоключа. потенциальныйключ №3 ( Фамилия + Имя + Отчество )являетсяплохимкандидатом, посколькуворганизациимогутработатьполныет зки.

Компактность. Сложныйвозможныйключнедолженсодержатьниодного

атрибута, удаление

которогонеприводилобыкутратеуникальности. Дляобеспеченияуникальностиключа№3

 

дополнимего

атрибутами Дата рождения и Цвет волос. Еслибизнес-правилаговорят, что

сочетания атрибутов Фамилия + Имя + Отчество + Дата рождения достаточнодля

однозначнойидентификациисотрудника, то

Цвет волос оказываетсялишним, т. е. ключ

Фамилия + Имя + Отчество + Дата рождения + Цвет волос неявляетсякомпактным.

Привыборе первичногоключа предпочтениедолжноотдаватьсяболеепростымключам, т. е. ключам, содержащимменьшееколичество атрибутов. Вприведенномпримереключи№1и 2 предпочтительнейключа№3.

Атрибуты ключанедолжнысодержатьнулевыхзначений. Значение

атрибутов ключане

должноменятьсявтечениевсеговременисуществованияэкземпляра

 

сущности. Сотрудница

организацииможетвыйтизамужисменитькакфамилию, такипаспорт. Поэтомуключи№2и

 

3неподходятнароль

первичногоключа

.

 

 

Каждая сущность должнаиметьпокрайнеймереодин

потенциальныйключ

. Многие сущности

имеюттолькоодин

потенциальныйключ

. Такойключстановитсяпервичным. Некоторые

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