IDEF1X
Integration DEFinition for information modeling (IDEF1X) язык моделирования данных для разработки семантики моделей данных. IDEF1X используется для формирования графических представлений информационных моделей, которые отражают структуру и семантику информации внутри среды или системы.
IDEF1X позволяет строить семантические модели данных, которые могут служить для поддержки управления данными как ресурсом, интеграции информационных систем и построения компьютерных баз данных. Этот стандарт является частью семейства языков моделирования IDEF в области программной инженерии.
Обзор
Данный метод моделирования используется для моделирования данных стандартным, последовательным и предсказуемым образом, чтобы управлять ими как ресурсом. Он может быть использован в проектах, требующих стандартных средств определения и анализа ресурсов данных внутри организации. Такие проекты включают в себя включение метода моделирования данных в методологию, управление данными как ресурсом, интеграцию информационных систем или проектирование компьютерных баз данных. Основные цели стандарта IDEF1X заключаются в том, чтобы предоставить:
- Средство для полного понимания и анализа информационных ресурсов организаций
- Общее средство представления и передачи сложности данных
- Методики общего представления данных, необходимых для работы предприятия
- Средства для определения независимого от приложения представления данных, которое может быть проверено пользователями и преобразовано в физический дизайн базы данных
- Методики получения интегрированного определения данных из существующих ресурсов данных.
Основной целью IDEF1X является поддержка интеграции. Подход к интеграции сфокусирован на захвате, управлении и использовании единого семантического определения ресурса данных, называемого "концептуальной схемой". "Концептуальная схема" обеспечивает единое интегрированное определение данных внутри предприятия, которое не предвзято по отношению к какому-либо одному применению данных и не зависит от того, как физически эти данные хранятся или доступны. Основная цель концептуальной схемы состоит в том, чтобы обеспечить последовательное определение значений и взаимосвязей между данными, которые могут быть использованы для интеграции, совместного использования и управления целостностью данных. Концептуальная схема должна обладать тремя важными характеристиками:
- Соответствовать инфраструктуре бизнеса и быть корректной для всех областей применения
- Расширяться, так чтобы новые данные могли быть определены без изменения ранее определенных данных.
- Трансформабельность как в требуемые пользовательские представления, так и в различные структуры хранения данных и доступа.
История
Необходимость в семантической модели данных была впервые признана ВВС США в середине 1970-х годов в результате программы Автоматизации и Компьютерно-Интегрированные Технологии (ICAM). Целью этой программы было повышение производительности производства за счет систематического применения компьютерных технологий. Программа ICAM выявила необходимость совершенствования методов анализа и коммуникации для людей, вовлеченных в повышение эффективности производства. В результате программа ICAM разработала ряд методов, известных как методы IDEF (iCAM Definition), которые включают следующее:
- IDEF0 используется для создания "функциональной модели", которая представляет собой структурированное представление активности или процессов, внутри среды или системы
- IDEF1 используется для создания "информационной модели" которая представляет собой структуру или семантику информации внутри среды или системы
- IDEF2 используется для создания "динамической модели".
Первоначальный подход к информационному моделированию IDEF (IDEF1) был опубликован по программе ICAM в 1981 году, основываясь на текущих исследованиях и отраслевых потребностях. Теоретические корни этого подхода берут начало из ранних работ Эдгара Ф. Кодда по теории реляционной модели и Питера Чена по модели сущности-отношения. Первоначальная методика IDEF1 была основана на работе д-ра Р.Р. Брауна и г-на Т.Л. Рэми из Hughes Aircraft и г-на Д.С. Коулмана из D. Appleton & Company (DACOM), с критическим обзором и влиянием Чарльза Бахмана, Питера Чена, д-ра М.А. Мелканоффа и д-ра Г.М. Нийссена.
В 1983 году ВВС США инициировали проект Интегрированной Системы Информационной Поддержки (I2S2) в рамках программы ICAM. Цель этого проекта состояла в том, чтобы обеспечить технологию, позволяющую логически и физически интегрировать сеть разнородного компьютерного оборудования и программного обеспечения. В результате этого проекта и отраслевого опыта была признана необходимость в усовершенствованной методике информационного моделирования.
С точки зрения контрактных администраторов программы IDEF ВВС США, IDEF1X был результатом проекта ICAM IISS-6201 и был дополнительно расширен проектом IISS-6202. Для удовлетворения требований по совершенствованию моделирования данных, определенных в проекте IISS-6202, субподрядчик DACOM получил лицензию на технологию Проектирования Логических Баз Данных (LDDT) и ее вспомогательное программное обеспечение (ADAM). С точки зрения технического содержания методики моделирования IDEF1X – это переименование LDDT.
2 сентября 2008 года соответствующий стандарт NIST, FIPS 184, был отозван (решение по Федеральному Реестру том 73 / страница 51276 [1]).
С сентября 2012 года, IDEF1X является частью международного стандарта ИСО/МЭК/IEEE 31320-2:2012. Стандарт описывает синтаксис и семантику IDEF1X97, который состоит из двух концептуальных языков моделирования: языка "ключевого стиля", совместимого с FIPS 184, который поддерживает реляционные и расширенные реляционные базы данных, и более нового языка "идентификационного стиля", подходящего для объектных баз данных и объектно-ориентированного моделирования.
Методы логического проектирования баз данных
Методы логического проектирования баз данных (LDDT) были разработаны в 1982 году Робертом Г. Брауном из группы проектирования баз данных, полностью вне программы IDEF и без знания IDEF1. Тем не менее, главная цель IDEF1 и LDDT была одной и той же: создать нейтральную к базе данных модель постоянной информации, необходимой предприятию, путем моделирования вовлеченных в нее объектов реального мира. LDDT объединил элементы реляционной модели данных, модели ER-модель и обобщения данных таким образом, который специально предназначался для поддержки моделирования данных и преобразования моделей данных в проекты баз данных.
LDDT включал иерархию окружения (пространства имен), несколько уровней модели, моделирование обобщений/специализаций и явное представление отношений первичными и внешними ключами, поддерживаемое четко определенным средством именования ролей. Первичные ключи и однозначные внешние ключи выражали иногда тонкие ограничения уникальности и ссылочной целостности, которые должны были быть определены и соблюдены любым типом базы данных, которая бы разрабатывалась. Использование при проектировании базы данных ключей ограничения целостности модели LDDT, в качестве ключей доступа или индексов было совершенно отдельным решением. Точность и полнота моделей LDDT были важным фактором, позволившим относительно гладко трансформировать модели в проекты баз данных. Ранние модели LDDT были преобразованы в проекты баз данных для иерархической базы данных IBM, IMS. Более поздние модели были преобразованы в проекты баз данных для сетевой базы данных Cullinet, IDMS и многих
В LDDT software, ADAM, поддерживал представление (модели), представление объединения, избирательного (подмножество) представления, наследование пространств имен, нормализации, анализ обеспечения качества представления, граф сущность-связь и формирование отчетов, преобразование в операторы объявления данных SQL, проверку ссылочной целостности в SQL. Логические модели были сериализованы с помощью языка структурного моделирования.
Графический синтаксис LDDT отличался от синтаксиса IDEF1 и, что более важно, LDDT содержал множество взаимосвязанных концепций моделирования, отсутствующих в IDEF1. Поэтому вместо расширения IDEF1 Мэри Э. Лумис из DACOM написала краткое резюме синтаксиса и семантики значительного подмножества LDDT, используя терминологию, совместимую с IDEF1, где это возможно. DACOM обозначил результат как IDEF1X и предоставил его программе ICAM, по которой его опубликовали в 1985 году. (IEEE 1998, p. iii) (Bruce 1992, p. xii) DACOM также переписали программное обеспечение ADAM на C и продавали его под названием Leverage.
Составные элементы IDEF1X
-
Синтаксис сущностей
-
Доменная иерархия
-
Пример атрибута
-
Синтаксис первичного ключа
-
Синтаксис связи элементов
-
Синтаксис определения связей
-
Синтаксис категоризации связей
-
Синтаксис безадресных связей
Разделы IDEF1X
Трёхсхемный подход
Трёхсхемный подход в программной инженерии - это подход к построению информационных систем и системному управлению информацией, который продвигает концептуальную модель как ключ к достижению интеграции данных.
Схема, являющаяся моделью, обычно изображается в виде диаграммы и иногда сопровождается описанием языка. Три схемы были использованы в следующих подходах:
- Внешние схемы для пользовательских представлений
- Концептуальная схема интегрирует внешние схемы
- Внутренняя схема, определяющая физические структуры хранения.
В центре концептуальная схема определяет онтологию концепции, как пользователь думает и говорит о них. Физическая схема описывает внутренние форматы данных, хранящихся в базе данных, а внешняя схема определяет представление данных, представленных в прикладной программе. В рамках попыток разрешить использование нескольких моделей данных для внешних схем.
Рекомендации по моделированию
Процесс моделирования можно разделить на пять этапов разработки модели.
Нулевая фаза – начало проекта Цели этапа инициирования проекта включают в себя:- Определение проекта – общее изложение того, что должно быть сделано, для чего и как это будет сделано
- Исходный материал – план сбора исходного материала, включающий индексацию и подачу
- Авторские соглашения – фундаментальная декларация соглашений (опциональных методов), с помощью которых автор выбирает создание и управление моделью.
- Матрица отношений
- Определение связей
- Диаграммы уровней сущностей
-
Матрица отношений
-
Диаграмма уровней сущностей
-
Пример диаграммы уровней сущностей
-
Справочная схема
- Уточнить неопределённые связи из второй фазы
- Определить ключевые атрибуты для каждой сущности
- Миграция первичных ключей для создания внешних ключей
- Проверка связей и ключей.
-
Пример диаграммы связей
-
Уточнение неопределённых связей
-
Область действия представления функции
-
Примеры атрибутов
-
Уточнение безповторных правил
-
Уточнение правил
-
Утверждения путей
-
Пример диаграммы третьей фазы представления функции
- Определение пула атрибутов
- Установка принадлежности атрибутов
- Определение необязательных атрибутов
- Проверка и уточнение структуры данных
-
Применение правила "без повторов"
-
Пример функции четвертой фазы
Метамодель IDEF1X
Метамодель - это модель конструкций моделирующей системы. Как и любая модель, она используется для представления и рассуждений о предметной области модели – в данном случае IDEF1X. Метамодель используется для рассуждениях об IDEF1X, то есть о том, что представляют собой конструкции IDEF1X и как они соотносятся друг с другом. Представленная модель IDEF1X является IDEF1X. Такие мета модели могут использоваться для различных целей, таких как проектирование репозиториев, проектирование инструментов или для указания набора допустимых моделей IDEF1X. В зависимости от целей в результате получаются несколько разные модели. Не существует "одной правильной модели". Например, модель для инструмента, поддерживающего поэтапное построение моделей, должна допускать неполные или даже несогласованные модели. Метамодель формализации, однако, подчеркивает соответствие концепциям формализации, и поэтому неполные или противоречивые модели не допустимы.
Метамодели имеют два важных ограничения. Во-первых, они определяют синтаксис, а не семантику. Во-вторых, метамодель должна быть дополнена ограничениями на естественном или формальном языке. Формальная теория IDEF1X предоставляет как семантику, так и средства для точного выражения необходимых ограничений.
Метамодель для IDEF1X приведена на соседнем рисунке. Вид отображения называется mm. Также приведены иерархия доменов и ограничения. Ограничения выражаются в виде предложений в формальной теории метамодели. Метамодель неформально определяет набор допустимых моделей IDEF1X обычным способом, как образцовые таблицы экземпляров, соответствующие валидной модели IDEF1X. Метамодель также формально определяет набор допустимых моделей IDEF1X следующим образом. Метамодель, как модель IDEF1X, соответствует формальной теории. Семантика теории определяется стандартным образом. То есть интерпретация теории состоит из областей индивидов и набора назначений:
- Каждой константе в теории, отдельный индивид в заданной области
- Каждому символу n-ной функции в теории, n-ая функция над заданной областью
- Каждому символу n-ной функции в теории, n-ая функция над заданной областью
- Каждому n-ному символу предиката в теории, n-ая связь над заданной областью.
В предполагаемой интерпретации, область индивидов состоит из представлений, таких как производство; сущностей, таких как часть и поставщик; доменов, таких как qty_on_hand; отношений связи; кластеров категорий и т.д. Если каждая аксиома в теории верна в интерпретации, то интерпретация называется моделью для теории. Каждая модель в теории IDEF1X, соответствующая метамодели IDEF1X и ее ограничениям, является допустимой моделью IDEF1X.