p align="left">Вся работа над проектом велась под эгидой подкомитета 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; Name : Label; Description : OPTIONAL STRING; RelatingOrganization : Organization; RelatedOrganizations : SET [1:?] OF Organization; END_ENTITY; ENTITY Person; Id : INTEGER; FamilyName : OPTIONAL Label; GivenName : OPTIONAL Label; MiddleNames : OPTIONAL LIST [1:?] OF Label; PrefixTitles : OPTIONAL LIST [1:?] OF Label; SuffixTitles : OPTIONAL LIST [1:?] OF Label; Roles : LIST [0:?] OF UNIQUE ActorRole; Addresses : OPTIONAL LIST [1:?] OF UNIQUE Address; EngagedIn : SET OF Organization; UNIQUE UR1 : Id; WHERE WR1 : EXISTS(FamilyName) OR EXISTS(GivenName); END_ENTITY; END_SCHEMA; К настоящему времени в рамках международных программ по стандартизации прикладных информационных моделей и интероперабельности программных приложений накоплен значительный ресурс многопрофильных междисциплинарных моделей. Ресурс охватывает такие научные и промышленные области, как машиностроение, авиационную и космическую промышленность, судостроение, нефтегазовый комплекс, архитектуру и строительство, электронную промышленность, фармацевтику, геоинформатику. Значительная часть разработанных на языке EXPRESS спецификаций принята в качестве документов ISO-10303. Другая часть разрабатывается непосредственно промышленными альянсами для последующего представления в международную организацию по стандартам. К существенным особенностям прикладных информационных моделей следует отнести: · сложность и масштабность моделей, выражающиеся в большом количестве типов, определяемых в рамках одной информационной схемы, в применении альтернативных механизмов множественного наследования и полиморфного переопределения свойств объектных типов, а также в использовании вложенных агрегатных и селективных конструкций и двунаправленных ассоциаций; · необходимость поддержки запросов к данным в декларативном предикативном и навигационном стилях, а также эффективную реализацию базовых операций манипулирования ими; · широкий контекст использования моделей в приложениях, оперирующих как с данными одной многопрофильной информационной схемы, так и с данными нескольких независимых схем. Данные особенности обуславливают поиск эффективных решений для объектно-реляционного отображения и их систематизацию для комплексного использования в конкретных прикладных контекстах. 6. Общая систематизация подходов6.1 Классификация паттернов отображенияНезависимо от особенностей применяемых подходов нам видится ряд связанных между собой аспектов отображения прикладных данных из объектно-ориентированной модели в реляционную. Прежде всего, это технические вопросы семантического отображения в реляционную метамодель базовых конструкций языка EXPRESS, а именно: · элементарных базовых типов; · перечислимых типов; · ассоциативных связей между объектами; · селективных типов; · агрегатных типов; · вложенных структур данных, основанных на базовых, перечислимых, ассоциативных, селективных и агрегатных типах данных; · простых и сложных объектных типов в рамках модели множественного наследования; · информационных схем. Не менее существенными для практического применения являются часто противоречащие друг другу проблемы: · выбора стратегии отображения в соответствии с контекстом использования семантики информационной модели; · поддержки метаданных в реляционном представлении и их конструктивного применения в ходе пользовательских сессий; · эффективности реализации объектных запросов и операций манипулирования объектами (создание, модификация, удаление); · оптимизации используемых ресурсов, включая затраты памяти; · сопровождаемости решений и их гибкости по отношению к возможной эволюции используемых прикладных моделей. 6.2 Отображение информационных схем
Вопрос о выборе стратегии отображения в рамках схемо-зависимого (СЗ) или схемо-независимого (СН) подходов является наиболее принципиальным для систематизации методов объектно-реляционного отображения и их адекватного применения в приложениях. 6.2.1 Схемо-независимая стратегияСхемо-независимая стратегия ориентирована на использование единой реляционной схемы для представления произвольных прикладных данных, модели которых специфицированы на EXPRESS. Для приложений, оперирующих одновременно с несколькими перманентно изменяемыми прикладными моделями, применение схемо-независимая стратегии является наиболее предпочтительным. Сопровождение и администрирование реляционной базы данных с фиксированной системой таблиц, состав и структура которой не меняется, достаточно просты.
Страницы: 1, 2, 3, 4, 5, 6
|