Смекни!
smekni.com

Язык описания информационных моделей EXPRESS (стр. 2 из 9)

Наконец, разработаны методические основы создания интегрированной системы управления качеством продукции, соответствующей требованиям стандартов ИСО серии 9000 версии 2000 года.

Работы по внедрению CALS-технологий в промышленность России интенсивно продолжаются при пристальном внимании и поддержке Минпромнауки РФ, Госстандарта РФ и других министерств и ведомств России. Авторы надеются, что эти работы позволят если не полностью преодолеть, то хотя бы существенно сократить отставание российской промышленности от промышленности ведущих стран Запада.


4. Проблемы стандартизации описания продукции, технологии и

бизнеса

Началом современного этапа стандартизации описания продукции и технологии можно считать появление в середине 80-х годов проекта STEP (STandard for the Exchange of Product model data ) – серии стандартов для обеспечения универсального механизма обмена данными о продукции и технологии как между различными организациями, так и между разными этапами жизненного цикла продукции. Ядром STEP был почти объектно-ориентированный язык информационного моделирования EXPRESS (ISO 10303, part11). Не являясь языком программирования, не поддерживая “методы” и механизмы их наследования, действующая версия EXPRESS обеспечивает объектно-ориентированную идеологию для описания концептуальных моделей данных (множественное наследование данных и ограничений, выводимые атрибуты и др.).

Вторым "китом", на котором основан EXPRESS, является модель “сущность-связь” (E-R модель). Так же, чувствуется влияние и SQL. Графическая версия – EXPRESS-G уже полностью вытеснила IDEF 1X, который использовался на начальных этапах проекта STEP. В новой версии – EXPRESS v2 уже предполагается полная объектно-ориентированность, с поддержкой моделирования процессов, событий, транзакций, а также единая формальная метамодель, гораздо более детализированная и семантически более строгая, чем части Generic Resources серии стандартов ISO 10303 (parts 41-49).

Вся работа над проектом велась под эгидой подкомитета 4, технического комитета 184 ISO (ISO TC184/SC4), к концу 90-х годов в рамках которого появилось еще несколько серий стандартов (разной степени завершенности), связанных с описанием уже не только продукции и технологии (ISO 13584, ISO 14959, ISO 15926), но и управления производством (Manufacturing Management – MANDATE - ISO 15531) и использующих в качестве основы язык EXPRESS.

За 15 лет вокруг EXPRESS и STEP сформировалась уже целая отрасль ИТ, которая обеспечивает значительное уменьшение трудозатрат при “запуске” новых технологий и новых видов продукции. Причем, если серия ISO 10303 начиналась прежде всего для обслуживания автомобильной и аэрокосмической промышленностей, то сейчас она охватывает уже большинство видов производств, включая электротехническое, кораблестроительное, строительство, нефтехимическое и т.п. Появились не только компании, специализирующиеся на инструментарии технологии STEP, но и организации общеметодологического плана, связанные с развитием технологии “данных о продукции” (Product Data Technology- PDT), например EuroSTEP, PDT Solutions, PDTAG , PDES и др.

Важно отметить активное использование Internet при разработке стандартов, в работе над которыми принимают участие многие организации и специалисты всех ведущих стран мира. Это и серии телеконференций с дискуссиями по наиболее важным вопросам, и электронное голосование по утверждению проектов стандартов на разных стадиях разработки вплоть до статуса Международного стандарта, и организация очных семинаров/конференций, и организация полного электронного архива, доступного по Сети. Такая технология организации проектов на основе управления знаниями симптоматична для “новой эры” однако она делает только первые шаги и серьезно противоречит существующим социальным институтам.

Несмотря на внешние успехи сама идеология, методология и технология STEP/EXPRESS требует глубокого совершенствования. С одной стороны, нужна “гармонизация” и “модуляризация” стандартов внутри самого ISOTC184/SC4, c другой, оказалось необходимым выйти за рамки описания “продукции и технологии” и включить более широкий круг вопросов бизнеса, с третьей стороны все более возникает необходимость в согласовании аналогичных работ с другими организациями, занимающимися разработками в том же направлении и прежде всего с группами CSMF (Conceрtual Schema Modelling Facilities) и CDIF (CASE Data Interchange Format) в рамках объединенного технического комитета ISO и Международной Электротехнической Комиссии (ISO/IEC JTC1), с консорциумом WWW (W3C), с базовыми подгруппами OMG (Object Management Group), с группой KIF ( Knowledge Interchange Format ) ANSI ASC X3T2 , а также с OAG (Open Application Group).


5. Объектно-ориентированное моделирование на EXPRESS

Кратко рассмотрим подмножество языка EXPRESS, непосредственно относящееся к спецификации объектно-ориентированных данных. EXPRESS включает в себя также довольно развитую императивную часть, предназначенную для определения поведенческих свойств объектов и задания ограничений на них. Однако в силу предмета статьи эти подробности будут опущены, а их описание может быть найдено в оригинале стандарта языка

Язык EXPRESS поддерживает набор стандартных, встроенных в него элементарных типов данных INTEGER, REAL, NUMBER, LOGICAL, BOOLEAN, BINARY и STRING для представления, соответственно, целых, вещественных и произвольных числовых данных, логических и булевых значений, последовательностей двоичных данных и строк. Для перечислимых типов предусмотрена специальная конструкция ENUMERATION. Агрегатные типы ARRAY, SET, BAG и LIST предоставляют возможность определения различного рода контейнеров, таких как массивы, множества, мультимножества и списки. Опционально могут быть заданы их размеры, способы индексации элементов, условие множественности эквивалентных элементов для массивов и списков, а также допустимость разреженности элементов в массивах. Селективные типы, вводимые оператором SELECT, позволяют использовать переменные и константы, принимающие значения одного из альтернативных типов, объявленных в списке оператора. Новые производные типы данных создаются на основе стандартных и предопределенных типов с помощью конструкции TYPE. Допускается произвольная вложенность определений пользовательских типов, которая, в частности, обеспечивает создание многомерных массивов, вложенных селективных и агрегатных конструкций.

Типы GENERIC, AGGREGATE, а также ARRAY, SET, BAG и LIST OF GENERIC обеспечивают обобщенную реализацию функций и процедур с использованием абстракций простых и агрегатных данных.

Для объектных типов используется конструкция ENTITY, предусматривающая разнообразные модели простого и множественного наследования с помощью квалификаторов AND, ANDOR, ONEOF. При специфицировании объектного типа задаются атрибуты и ассоциации различной кратности (EXPLICIT), обратные ассоциации (INVERSE), а также производные вычисляемые свойства объектов (DERIVED). Последние определяются типами и выражениями, которые могут включать в себя значения явных атрибутов, константы, исполняемые операторы, включая вызов функций и процедур, как стандартных, так и пользовательских.

Ограничения целостности данных задаются непосредственно при определении объектного типа с помощью конструкции WHERE, определяющей логические условия в виде выражений логического типа, а также с помощью квалификатора UNIQUE, приписывающего условие уникальности атрибутам, ассоциациям и производным свойствам в популяциях родственных объектов. Для задания глобальных ограничений над разнородными объектами предусмотрена конструкция RULE, позволяющая описать ограничение в виде формальной спецификации функции логического типа.

Определения глобальных констант, простых и объектных типов данных, глобальных ограничений объединяются в разделе информационной схемы модели (SCHEMA). Посредством конструкций импорта USE и REFERENCE достигается возможность использования в одной схеме определений из других схем, что обеспечивает разработку сложных информационных моделей путем иерархической композиции отдельных схем. Таким образом, охватываются разнообразные практически содержательные случаи объектно-ориентированного моделирования прикладных данных.

Ниже представлен пример информационной модели на языке EXPRESS — схема ActorResource, специфицирующая информацию о персонах и организациях, участвующих в совместном проекте, их ролях в нем и отношениях между ними.

SCHEMA ActorResource;

TYPE ActorSelect = SELECT (Organization, Person);

END_TYPE;

TYPE AddressTypeEnum = ENUMERATION OF (

END_TYPE;

TYPE Label = STRING(255);

END_TYPE;

TYPE ActorRole = Label;

END_TYPE;

ENTITY Address

ABSTRACT SUPERTYPE OF (ONEOF(PostalAddress, TelecomAddress));

Purpose : AddressTypeEnum;

UserDefinedPurpose : OPTIONAL STRING;

INVERSE

OfPerson : SET OF Person FOR Addresses;

OfOrganization : SET OF Organization FOR Addresses;

WHERE

WR1 : (Purpose <> AddressTypeEnum.USERDEFINED) OR

((Purpose = AddressTypeEnum.USERDEFINED) AND

EXISTS(UserDefinedPurpose));

END_ENTITY;

ENTITY PostalAddress

SUBTYPE OF(Address);

AddressLines : LIST [1:?] OF Label;

END_ENTITY;

ENTITY TelecomAddress

SUBTYPE OF(Address);

TelephoneNumbers : OPTIONAL LIST [1:?] OF Label;

FacsimileNumbers : OPTIONAL LIST [1:?] OF Label;

ElectronicMailAddresses : OPTIONAL LIST [1:?] OF Label;

WWWUrls : OPTIONAL LIST [1:?] OF Label;

WHERE

WR1 : EXISTS (TelephoneNumbers) OR EXISTS (FacsimileNumbers) OR

EXISTS (ElectronicMailAddresses) OR EXISTS (WWWUrls);

END_ENTITY;

ENTITY Organization;

Id : INTEGER;

Name : Label;

Description : OPTIONAL STRING;

Roles : LIST [0:?] OF UNIQUE ActorRole;

Addresses : LIST [1:?] OF UNIQUE Address;

INVERSE

IsRelatedBy : SET OF OrganizationRelationship FOR RelatedOrganizations;

Relates : SET OF OrganizationRelationship FOR RelatingOrganization;

Engages : SET OF Person FOR EngagedIn;

UNIQUE

UR1 : Id;

END_ENTITY;

ENTITY OrganizationRelationship;