- •Содержание
- •Правила для неопределенных отношений 79
- •1. Занятие I. Общее знакомство с idef1x. Термины.
- •1.1. Концепции метода idef1x.
- •1.2. Цель создания информационной модели.
- •1.3. Предпосылки к появлению методологии idef1x.
- •1.4. Основные термины и определения методологии idef1x.
- •1.5. Графическое представление модели.
- •1.6. Правила для диаграмм
- •1.7. Примечания
- •2. Занятие II. Этапы создания информационной модели.
- •2.5. Принятие авторских соглашений по моделированию.
- •3.2. Зависимая и независимая сущности.
- •3.3. Графическое изображение сущностей на диаграммах.
- •3.3.1. Сущность, независимая от идентификатора
- •3.3.2. Сущность, зависимая от идентификатора
- •3.4. Составление списка естественных сущностей.
- •4.3. Отношение связи. Определенное отношение связи.
- •4.3.1. Правила для определенных отношений связи.
- •4.4. Отношение категоризации.
- •4.4.1. Правила для отношений категоризации.
- •4.5. Неопределенное отношение.
- •4.5.1. Правила для неопределенных отношений
- •Графическое изображение отношений на диаграмме.
- •4.8. Диаграмма сущностей.
- •4.9. Контрольные вопросы и задания:
- •5.2. Преобразование неопределенных отношений.
- •5.3. Что такое атрибут?
- •Обозначение альтернативных ключей
- •5.5. Внешние ключи.
- •5.8. Ролевое имя.
- •5.9. Идентификация ключевых атрибутов.
- •5.10. Правила назначения ключей.
- •5.11. Таблица «сущность/атрибут».
- •5.12. Представление результатов в виде диаграммы.
- •5.13. Контрольные вопросы и задания:
- •6.3. Определение принадлежности атрибутов. Описание атрибутов.
- •6.4. Правила назначения не ключевых атрибутов.
- •6.5. Представление результатов этапа.
- •6.6. Контрольные вопросы:
- •8. Приложение 1. Определения
- •Idef1x диаграмма: См. Диаграмма представления.
- •9.1. Имена диаграмм, сущностей, и атрибутов
- •9.2. Метки сущности
- •9.3. Метки ролевого имени атрибута
- •9.4. Метки имен отношений
- •9.5. Примечания к модели
- •9.6. Отображения меток на нескольких строках
- •10. Приложение 3. Правила.
- •10.1. Правила для атрибутов
- •10.2. Правила для диаграмм
- •10.3. Правила для ключей
- •10.3.1. Правила для внешних ключей
- •10.3.2. Правила для первичных и альтернативных ключей
- •10.4. Правила для отношений.
- •10.4.1. Правила для неопределенных отношений
- •10.4.2. Правила для определенных отношений связи
- •10.4.3. Правила для отношений категоризации
- •10.5. Правила для примечаний
- •10.6. Правила для сущностей
- •10.7. Правила для уровней представления
- •11. Приложение 4. Примеры информационных моделей.
5.2. Преобразование неопределенных отношений.
Если при идентификации отношений и при создании диаграммы сущностей неопределенные отношения между сущностями были допустимы, то на этапе определения ключевых атрибутов, эти неопределенные отношения надо устранить. Стандарт IDEF1X требует перед началом определения ключевых атрибутов заменить все неопределенные отношения. При описании отношений уже был представлен пример замены неопределенного отношения двумя определенными отношениями связи с введением соединяющей сущности. Следует заметить, что для разрешения неопределенных отношений, приходится использовать дополнительные соединяющие сущности, которые не были внесены в список естественных сущностей. Например, имеем сущность МАРКА-МАТЕРИАЛА – перечень всех марок материалов, используемых на предприятии в процессе производства, и сущность ГОСТ-ТУ – перечень всех государственных стандартов и технических условий. Одна марка материала может быть описана в одном или нескольких ГОСТах и ТУ, в то же время, в одном ГОСТе могут быть установлены нормы на ноль, одну или сразу же на несколько марок материалов. Таким образом, имеем неопределенное отношение между сущностями. Преобразовать это отношение с помощью идентифицированных естественных сущностей не представляется возможным. Тогда, вводим дополнительную «искусственную» сущность ВЫБОР_ГОСТ. Каждый экземпляр сущности ВЫБОР_ГОСТ связан только с одним экземпляром сущности МАРКА_МАТЕРИАЛА и только с одним экземпляром сущности ГОСТ-ТУ, при этом экземпляр сущности МАРКА_МАТЕРИАЛА может быть связан с одним или несколькими экземплярами сущности ВЫБОР_ГОСТ, а экземпляр сущности ГОСТ-ТУ может быть связан с ноль, одним или несколькими экземплярами сущности ВЫБОР_ГОСТ. Таким образом, одно неопределенное отношение мы превратили в два определенных отношения связи, в которых сущность ВЫБОР_ГОСТ является сущностью-потомком.
Рис. V 1. Преобразование неопределенного отношения
Все искусственные сущности, введенные при замене неопределенных отношений, должны быть описаны в глоссарии.
5.3. Что такое атрибут?
В диаграмме IDEF1X атрибут - это свойство или характеристика, являющаяся общей для некоторых или для всех экземпляров сущности. Определенная характеристика отдельного экземпляра сущности называется экземпляром атрибута. Экземпляр атрибута определяется типом характеристики и ее значением (значением атрибута). Экземпляр сущности будет обычно иметь единственное определенное значение для каждого связанного атрибута. Например, ФАМИЛИЯ-ИМЯ-ОТЧЕСТВО и ГОД-РОЖДЕНИЯ могут быть атрибутами, связанными с сущностью СОТРУДНИК. Экземпляр сущности СОТРУДНИК может иметь атрибуты со значением «Иванов Иван Петрович» и «1953». Может оказаться, что при создании экземпляра сущности, (например, при внесении в список нового сотрудника), значение атрибута неизвестно, (например, неизвестен год рождения), и тогда атрибут в течение некоторого периода времени может не иметь никакого значения. В другом
случае атрибут может быть применим для одного экземпляра сущности и не применим для другого. Например, сущность МАРКА-МАТЕРИАЛА имеет атрибут СРОК-ХРАНЕНИЯ. Для одного экземпляра сущности СРОК-ХРАНЕНИЯ имеет значение «3 года». Для другого -может не иметь никакого значения, что означает, что срок хранения не ограничен.
Имя атрибута обозначается фразой, состоящей из существительного с зависимыми словами, которая описывает характеристику, представленную атрибутом. Существительное находится в именительном падеже единственного числа. Сокращения разрешаются, однако, имя атрибута должно быть значимо и непротиворечиво для всей модели. Атрибут должен быть описан в глоссарии, наряду с другими элементами модели. Правила для атрибутов см. в Приложении 3.
На диаграмме имена атрибутов помещают внутрь блока, обозначающего сущность.
Рис. V 2 Атрибуты и первичный ключ 5.4. Первичный и альтернативный ключи сущности.
Сущность всегда должна иметь атрибут или комбинацию атрибутов, значения которых однозначно идентифицируют каждый экземпляр сущности. Эти атрибуты формируют «первичный ключ» сущности. Например, атрибут КОД-СОТРУДНИКА может служить
первичным ключом для сущности СОТРУДНИК, так как каждый сотрудник имеет уникальный код, в то время как атрибуты ФАМИЛИЯ-ИМЯ-ОТЧЕСТВО и ГОД-РОЖДЕНИЯ будут не ключевыми атрибутами, так как на предприятии могут оказаться сотрудники с одинаковыми фамилией, именем и отчеством и с одинаковым годом рождения. Для определения первичного ключа сущности надо выявить предполагаемые или «потенциальные» ключи сущности.
Предполагаемый ключ, «потенциальный ключ» сущности – это один или несколько атрибутов, совокупность значений которых однозначно идентифицирует каждый экземпляр сущности. Например, атрибут КОД-МАТЕРИАЛА может однозначно идентифицировать экземпляр сущности МАРКА_МАТЕРИАЛА.
В некоторых случаях сущность может иметь больше, чем один атрибут или одну группу атрибутов, которые однозначно идентифицируют экземпляры сущности. Например, экземпляр сущности МАРКА_МАТЕРИАЛА может быть однозначно идентифицирован как с помощью атрибута КОД-МАТЕРИАЛА, так и с помощью атрибута НАИМЕНОВАНИЕ-МАРКА-МАТЕРИАЛА. Если существует несколько потенциальных ключей, то один потенциальный ключ обозначается как «первичный ключ», а другие потенциальные ключи обозначаются как «альтернативные ключи». Если существует только один потенциальный ключ, то он и является первичным ключом. Первичные и альтернативные ключи должны содержать только те атрибуты, которые требуются для однозначной идентификации (т.е. если какой-либо атрибут изъять из ключа, то каждый экземпляр сущности не может быть однозначно идентифицирован; Правило минимального ключа). Например, сущность НАКЛАДНАЯ имеет составной альтернативный ключ, состоящий из двух атрибутов: НОМЕР-НАКЛАДНОЙ и ДАТА-НАКЛАДНОЙ. Если из данного альтернативного ключа удалить хотя бы один атрибут, мы не сможем однозначно идентифицировать экземпляры накладной.
Атрибуты, составляющие первичный ключ, помещаются в верхней части перечня атрибутов в блоке сущности и отделяются от других атрибутов горизонтальной линией.
Каждый альтернативный ключ обозначается уникальным целым числом. Надпись АК и номер альтернативного ключа помещаются в скобки, например (АК1), и записываются справа от каждого атрибута данного альтернативного ключа. Сущность может иметь любое количество альтернативных ключей. Отдельный атрибут может быть частью нескольких альтернативных ключей. Атрибут первичного ключа также может быть частью альтернативного ключа.