Введение
Интеграция ОПРЕДЕЛЕНИЯ для моделирования информации (IDEF1X) — это язык моделирования данных для разработки семантических моделей данных. IDEF1X используется для создания графической информационной модели, представляющей структуру и семантику информации в определенной среде или системе. IDEF1X позволяет строить семантические модели данных, которые могут поддерживать управление данными как ресурсом, интеграцию информационных систем и создание компьютерных баз данных. Этот стандарт входит в семейство языков моделирования IDEF в области разработки программного обеспечения.
Обзор
Метод моделирования данных используется для моделирования данных стандартным, последовательным и предсказуемым образом с целью управления ими как ресурсом. Он может применяться в проектах, требующих стандартных средств определения и анализа ресурсов данных в организации. К таким проектам относятся внедрение метода моделирования данных в методологию, управление данными как ресурсом, интеграция информационных систем или проектирование компьютерных баз данных. Основными задачами стандарта IDEF1X являются: Стандарт описывает синтаксис и семантику IDEF1X97, который включает два языка концептуального моделирования: язык “ключевого стиля”, обратно совместимый с FIPS 184 и поддерживающий реляционные и расширенные реляционные базы данных, и более новый язык “стиля идентификации”, подходящий для объектных баз данных и объектно-ориентированного моделирования. Техника логического проектирования баз данных (LDDT) банка Bank of America была разработана в 1982 году Робертом Брауном. Центральная цель IDEF1X и LDDT была одинаковой: разработать методологию, которая последовательно и точно создавала бы нейтральную к типу базы данных модель постоянной информации, необходимой предприятию, путем моделирования вовлеченных сущностей реального мира. IDEF1X объединил элементы реляционной модели данных, модели «сущность-связь» и обобщения данных таким образом, чтобы обеспечить поддержку моделирования данных и преобразования моделей данных в конструкции баз данных. IDEF1X включает иерархию окружения (пространств имен), несколько уровней модели, моделирование обобщения/специализации и явное представление связей с помощью первичных и внешних ключей, поддерживаемое четко определенной системой именования ролей. Первичные ключи и однозначно именованные внешние ключи выражали иногда тонкие ограничения уникальности и референтной целостности, которые должны были быть известны и соблюдены любым типом базы данных, который в конечном итоге был спроектирован. Использование ключей модели IDEF1X, основанных на ограничениях целостности, в качестве ключей доступа к базе данных или индексов было совершенно отдельным решением. Точность и полнота моделей IDEF1X были важным фактором, обеспечивающим относительно плавное преобразование моделей в конструкции баз данных. Ранние модели IDEF1X были преобразованы в проекты баз данных для иерархической базы данных IBM IMS. Более поздние модели были преобразованы в проекты баз данных для сетевой базы данных Cullinet IDMS и различных типов реляционных баз данных. Компания Appleton разработала программное обеспечение для моделирования данных IDEF1X под названием Leverage. Leverage поддерживал ввод данных в модель, объединение моделей, выборочный (подмножественный) просмотр, наследование пространств имен, нормализацию, анализ качества моделей, построение графа связей между сущностями и генерацию отчетов, преобразование в реляционную базу данных, выраженное в виде операторов определения данных SQL, и проверку референтной целостности SQL. Логические модели сериализовались с использованием языка структурного моделирования.
Строительные блоки IDEF1X
Сущности – Представление класса реальных или абстрактных вещей (людей, объектов, мест, событий, идей, комбинаций вещей и т. д.), которые рассматриваются как экземпляры одного класса, поскольку они обладают общими характеристиками и могут участвовать в одних и тех же отношениях. Домены – Именованный набор значений данных (фиксированных или, возможно, бесконечного количества), все одного типа данных, из которого выбирается фактическое значение для экземпляра атрибута. Каждый атрибут должен быть определен ровно в одной базовой области. Несколько атрибутов могут основываться на одном и том же базовом домене. Атрибуты – Свойство или характеристика, общая для некоторых или всех экземпляров сущности. Атрибут представляет собой использование домена в контексте сущности. Ключи – Атрибут или комбинация атрибутов сущности, значения которых однозначно идентифицируют каждый экземпляр сущности. Каждый такой набор является кандидатом в ключи. Первичные ключи – Кандидат в ключи, выбранный в качестве уникального идентификатора сущности. Внешние ключи – Атрибут или комбинация атрибутов экземпляра дочерней или категорийной сущности, значения которых совпадают со значениями первичного ключа связанной родительской или обобщенной сущности. Внешний ключ можно рассматривать как результат "миграции" первичного ключа родительской или обобщенной сущности через конкретное соединение или отношение категоризации. Атрибуту или комбинации атрибутов во внешнем ключе может быть присвоено имя роли, отражающее его роль в дочерней или категорийной сущности. Отношения – Связь между экземплярами двух сущностей или между экземплярами одной и той же сущности. Соединительные отношения – Отношение, не имеющее семантики, кроме связи. См. ограничение, кардинальность. Отношения категоризации – Отношение, в котором экземпляры обеих сущностей представляют одну и ту же реальную или абстрактную вещь. Одна сущность (обобщенная сущность) представляет собой полный набор вещей, а другая (категорийная сущность) – подтип или подклассификацию этих вещей. Категорийная сущность может иметь одну или несколько характеристик или связь с экземплярами другой сущности, которыми не обладают все экземпляры обобщенной сущности. Каждый экземпляр категорийной сущности одновременно является экземпляром обобщенной сущности. Неспецифические отношения – Отношение, в котором экземпляр любой сущности может быть связан с любым количеством экземпляров другой сущности. Уровни представления – В IDEF1X определены три уровня представления: отношения между сущностями (ER), основанные на ключах (KB) и полностью атрибутированные (FA). Они различаются уровнем абстракции. Уровень ER – наиболее абстрактный. Он моделирует наиболее фундаментальные элементы предметной области – сущности и их отношения. Обычно его область охвата шире, чем у других уровней. Уровень KB добавляет ключи, а уровень FA – все атрибуты.