Метамодели и стандарты CDIF (CASE Data Interchange Format)
Метамодель — средство, являющееся инвариантным к частным представлениям индивидуальных пользователей, которое служит промежуточным звеном в процедурах взаимодействия приложений, характеризуемых своими локальными моделями.
Место метамодели в информационных процессах взаимодействия иллюстрирует рис. 17. Из рисунка ясно, что вместо непосредственного обращения одного приложения к другому, при котором каждое приложение должно иметь конверторы всех других локальных моделей, используется трансляция передаваемой информации на промежуточный язык метамодели, а принимающее приложение переводит метамодельное представление в свой собственный формат. Метамодельный подход имеет ряд преимуществ, например, каждое приложение становится открытым и может развиваться независимо от других, система не имеет ограничений на включение новых приложений.
Рис. 17.Место метамодели в процессах информационного обмена
Примерами метамоделей могут служить технология ODBC взаимодействия различных СУБД, основанная на языке SQL, графические системы типа GKS, концепция байт-кодов в языке Java и т. п.
В технологиях проектирования АС и реинжиниринга предприятий важное место отводится разработке метамоделей, направленных на взаимную трансформацию функциональных, информационных и структурных моделей. Для этого, в частности, требуется систематизация понятий, фигурирующих в приложениях, и построение словарей соответствия моделей этих типов.
Другое важное назначение метамоделей — интеграция CASE-средств разных производителей. Такая интеграция требуется, например, при недостаточных возможностях каждого из доступных CASE пакетов в отдельности, для доступа в условиях изменения программного и лингвистического обеспечений к информации, разработанной с помощью разных версий CASE-систем и накапливающейся длительное время в архивах.
Целям интеграции CASE-средств разных производителей служат стандарты серии CDIF, разрабатываемые организацией EIA (Electronics Industries Association) и признаваемые Международной организацией стандартизации ISO (International Standard Organization).
Метамодель в CDIF определяется как средство, с помощью которого осуществляется правильная интерпретация данных при их передаче из одной CASE-среды в другую. Такая интерпретация требуется при взаимодействии сред, использующих различные формы представления однородной в смысловом отношении информации. Другими словами, метамодель применяют для передачи и правильной интерпретации данных с одинаковой семантикой, но с разным представлением в частных CASE системах. Например, данные, близкие в семантическом отношении, но различающиеся по представлению, фигурируют в методиках информационного моделирования (data modeling), моделирования потоков данных (data flow modeling), событийного моделирования переходов состояний (state event modeling), объектно-ориентированного анализа и проектирования (object oriented analysis and design). CDIF-метамодель осуществляет интерфейс между ними.
Программное обеспечение, поддерживающее CDIF, позволяет представлять данные в желаемой форме (в соответствии с предметной областью). Например, конечно-автоматная модель может быть представлена в форме графа или матрицы перехода состояний, объектно-ориентированная модель — с использованием прямоугольников или произвольно очерченных фигур и т. п. Клиент, поддерживающий CDIF, транслирует форму источника информации в форму, доступную клиенту, с сохранением семантики данных.
Очевидно, что для каждой предметной области, характеризуемой множеством семантически близких понятий, можно построить свою метамодель. Такие предметные области в стандартах CDIF называют Subject Areas, для многих предметных областей разработаны свои CDIF-стандарты (метамодели). Очевидно также, что потребности в метамоделях могут возникать для новых предметных областей, поэтому в CDIF отдельная методика посвящена включению в стандарты новых метамоделей. Имеются также общие для различных предметных областей компоненты метамоделей. Обычно интегрированная метамодель строится на основе парадигмы сущность-отношение.
Обменный файл в CDIF состоит из трех частей: заголовка (имя, дата, источник, способ кодирования и другие общие атрибуты), метамодели (указывается тип используемой метамодели) и собственно передаваемых данных.
Список стандартов CDIF приведен в приложении. Стандарты подразделены на три группы.
Первая группа содержит обзор стандартов CDIF и общие правила их расширения.
Вторая группа определяет форматы представления данных, т. е. синтаксис и способы кодирования передаваемых данных.
Третья группа содержит стандарты, ориентированные на представление семантики передаваемых данных. Каждый из стандартов относится к определенной предметной области. Например, есть стандарты или проекты стандартов для таких областей, как объектно-ориентированный анализ и проектирование, моделирование бизнес-процессов, проектирование автоматизированных систем управления, описание потоков данных, данных в реляционных базах данных и др. Кроме того, введены иерархическая структура метамодели и возможности наследования благодаря выделению наиболее общих частей, справедливых для многих предметных областей, и их представлению в отдельных стандартах.
Таким образом, в метамодели CDIF имеет место отделение семантики от способа представления данных. Правильная передача семантики сочетается с варьированием форм представления данных.