Метод моделирования данных IDEF1X
Внешние ключи — являются не совсем настоящими ключами, а атрибутами, наследуемыми от первичных ключей других сущностей. Внешние ключи помечаются меткой (FK — foreign key), чтобы выделить, что они не принадлежат сущности. Внешние ключи весьма важны для изображения отношений между сущностями. Так как сущности определяются своими атрибутами, если сущность состоит из атрибутов, наследованных… Читать ещё >
Метод моделирования данных IDEF1X (реферат, курсовая, диплом, контрольная)
Стандарт FIPS 184 на основе этого метода, выпущенный в 1993 году, не входит в перечень CALS-стандартов. Однако разработанные на его основе структуры реляционных баз данных напрямую могут быть использованы для создания информационных систем с использованием языка EXPRESS стандарта ISO 10 303 (STEP), который составляет основу CALS-технологий. Аналогия положений IDEF1X и требований языка EXPRESS станет очевидной при рассмотрении EXPRESS.
IDEF1X — это метод для разработки реляционных баз данных. Он использует условный синтаксис для описания семантических конструкций, необходимых для построения концептуальной схемы. Концептуальная схема — это единое интегрированное определение данных предметной области, не ориентированное на какое-либо конкретное приложение и независимое от способов доступа и способов физического хранения данных.
Наиболее полезен IDEF1X как средство логического проектирования баз данных, после того как информационные требования уже выяснены и решение о разработке реляционной базы данных принято. Следовательно, системной перспективой IDEF1X являются элементы реальных данных в реляционной базе данных. Если целью разработки является не реляционная, а, например, объектно-ориентированная система, IDEF1X не является лучшим решением.
Существуют несколько причин, почему IDEF1X не совсем подходит для реализаций нереляционных систем. Например, IDEF1X требует, чтобы разработчик задавал ключи классов для отличия одной сущности от другой, в то время как объектно-ориентированные системы не требуют ключей для индивидуализации одного объекта от другого. Более того, в тех ситуациях, когда более одного атрибута или набор атрибутов будет использоваться для идентификации сущностей IDEF1X, разработчик обязан задать один ключ как первичный и список всех остальных ключей, как вторичный. Также требуется явное именование внешнего ключа.
Предполагается, что окончательный логический проект моделей IDEF1X будет использоваться программистами, которые берут схему логического проекта базы данных и реализуют этот проект (например, с использованием языка EXPRESS).
Концепция IDEF1X несколько отличается от IDEF1, хотя их терминология схожа. Сущность в IDEF1X ссылается на коллекцию или набор аналогичных экземпляров данных, которые могут отличаться друг от друга. Отдельные члены набора называются экземплярами сущности. Таким образом, блок в IDEF1X представляет набор экземпляров реального мира. Атрибут — это значение, ассоциированное с каждым конкретным экземпляром набора. Отношению, существующему между отдельными экземплярами этих наборов, даётся имя, которое выражено глагольной формой.
Сильной особенностью IDEF1X является его поддержка моделирования логических типов данных через использование структуры классификации. Эта конструкция является попыткой отразить модель реального мира, данные о которых представляются либо блоками, либо сущностями, попыткой промоделировать типы данных вещей. Эти отношения категоризации представляют взаимно исключающие подмножества родовой сущности или множества. Подмножества общего надмножества не могут иметь общих экземпляров. Например, родовая сущность ОСОБА имеет два подмножества, представляющих полный набор категорий, а именно, МУЖЧИНА и ЖЕНЩИНА. Ни один экземпляр подмножества МУЖЧИНА не может быть экземпляром подмножества ЖЕНЩИНА, и наоборот. Уникальный идентификатор атрибута для каждого подмножества — это тот же атрибут, что и для экземпляра родовой сущности.
Сущности в IDEF1X сущности являются либо идентификационно независимыми, либо идентификационно зависимыми. Экземпляры идентификационно независимых сущностей могут существовать независимо от другого экземпляра сущности, в то время как экземпляры идентификационно зависимых сущностей являются бессмысленными (по определению) без другого ассоциированного экземпляра сущности. Зависимость и независимость являются спецификой модели.
Отношения связности (сплошные или пунктирные линии с кружками с одной или двух сторон) показывают, как сущности (множества экземпляров данных) относятся друг с другом. Отношения связности существуют всегда только между двумя сущностями. Отношение связности, начинающееся с независимой родовой сущности и заканчивающееся на зависимой порождённой сущности, помечается глагольной фразой, описывающей отношение. Каждое отношение связности имеет соответствующую мощность. Мощность определяет число экземпляров зависимой сущности, связанных с экземпляром независимой сущности.
Отношения категоризации позволяют проектировщику определить категорию общей сущности. Сущность может принадлежать только одной категории. Например, может существовать общая сущность МАШИНА, являющаяся родовой сущностью для категории, представляющей различные марки машин (ВОЛГА, ОКА, НИВА). Каждая сущность-категория должна иметь одинаковый первичный ключ с общей сущностью. Кроме того, обязаны существовать различия между сущностями-категориями. Сущности-категории различаются атрибутом — дискриминатором (описателем), который обязан иметь различные значения для каждой сущности-категории. В рассмотренном примере дискриминатор — МАРКА МАШИНЫ.
Атрибуты — это свойства, используемые для описания сущностей. Имена атрибутов являются уникальными для всей модели IDEF1X, значения имён должны быть согласованными. Например, атрибут «цвет» можно использовать для цвета волос, цвета кожи, цвета радуги. Каждое такое использование имеет допустимый диапазон значений, и, следовательно, сущность необходимо раздельно именовать. Каждый атрибут принадлежит только одной сущности. Например, атрибут «страховой номер» может использоваться в модели во многих местах, но должен принадлежать только одной сущности (например, ПЕРСОНА). Все другие появления атрибутов страхового номера будут наследоваться через отношения.
Каждый атрибут должен иметь значение (правило непустоты); не существует атрибутов, имеющих несколько значений (правило неповторения). Использование этих правил обеспечивает создание правильных моделей, отражающих реальный мир. В случае, когда кажется, что правило не может быть применено, вполне вероятно, что модель является ошибочной.
Ключ — это группа атрибутов однозначно идентифицирующих экземпляр сущности. Существуют первичные и вторичные ключи. Каждая сущность имеет только один первичный ключ, отображаемый над горизонтальной линией в блоке сущности. Сущности могут иметь переменные ключи, которые также однозначно идентифицируют сущность, но не используются при описании отношений между сущностями.
В отношении связности первичный ключ родителя мигрирует к потомку. Если отношение — это связь категоризации, то первичный ключ потомка — это ключ родителя. Если отношение — это идентифицирующее отношение, то первичный ключ потомка обязан содержать наследуемые от родителя атрибуты.
Помимо того факта, что ключ обязан однозначно идентифицировать сущность, все атрибуты ключа должны удовлетворять условию однозначной идентификации (правило наименьшего ключа). Таким образом, при определении должен ли наследуемый атрибут быть частью ключа, следует ответить на вопрос: «Необходим ли этот атрибут для однозначной идентификации?» Однозначной идентификации родителя при этом недостаточно .
Внешние ключи — являются не совсем настоящими ключами, а атрибутами, наследуемыми от первичных ключей других сущностей. Внешние ключи помечаются меткой (FK — foreign key), чтобы выделить, что они не принадлежат сущности. Внешние ключи весьма важны для изображения отношений между сущностями. Так как сущности определяются своими атрибутами, если сущность состоит из атрибутов, наследованных из других сущностей, то эта сущность является подобной тем сущностям. Это свойство используется для реализации сложных выборок из базы данных.
IEF1X является мощным средством моделирования данных наряду с множеством других методов, таких как ER и ENALIM. Достоинство IDEF1X лежит в его истоках. Благодаря жесткой стандартизации всех проектов МО США методу IEF1X удалось избежать неоднозначности в толковании основных положений, что повредило использованию метода ER. Наличие стандарта и твёрдое следование ему является существенным для обмена информацией между организациями.
Недостатком всех таких методов, включая IDEF1X, является тот факт, что разработчик обязан быть опытным специалистом. Моделирование носит итеративный и коллективный характер (разработчик, эксперт и др.).