Для современных технологий САПР характерны две магистральные тенденции. Первая — обеспечение сквозной автоматизации проектирования изделия, охватывающей все этапы его жизненного цикла: от возникновения потребности в нем до утилизации. Эта тенденция направлена на решение проблемы повышения качества проектных решений за счет интегрированного представления концептуальной информации об изделии. В САПР AutomatiCS, ориентированной на проектирование технической структуры систем управления тепловых электростанций, эта тенденция реализована единой моделью проекта, которая представляет собой иерархическое описание процесса проектирования. Вторая тенденция — к распределенной реализации проектных процедур — отражает специфику организации команды субъектов проектирования, которая зачастую является виртуальной в том смысле, что ее участники, объединенные общей задачей в рамках единой модели проекта, организационно и территориально разобщены. На пересечении этих двух тенденций возникает естественная проблема управления сотрудничеством (Collaboration Management, CM), которая заключается в организации удаленного доступа к разделяемой концептуальной информации на ролевой основе. Решение здесь осложняется тем, что САПР AutomatiCS, как и большинство систем такого класса, поддерживает уникальный формат единой модели проекта, оптимизированный для хранения и локальной обработки и не предназначенный для исполнения удаленных запросов по сети.

Излагаемый ниже подход к решению этой проблемы основан на использовании технологии XML. Ядром XML-технологий является расширяемый язык разметки (eXtensible Markup Language), претендующий на статус фактического стандарта обмена в Web (сейчас таким статусом обладает HTML). В отличие от своего предшественника XML позволяет определять структуру и семантику документа в терминах собственных элементов разметки. Технология XML опирается на платформо-независимые мировые стандарты представления и обмена информации в Web и обладает рядом существенных преимуществ, среди которых следует выделить неограниченные возможности специализации (обусловленные тем, что XML — это технология описания структуры произвольных документов), а также наличие непроцедурных средств построения запросов к этим документам.

Эти уникальные возможности XML-технологии позволили использовать расширяемый язык разметки для спецификации протокола обмена фрагментами виртуального XML-документа «Единая модель проекта» AutomatiCS (участники проекта извлекают эти фрагменты по запросу в соответствии с определенными для каждого из них правами доступа). В качестве средства построения запросов использован язык XPath, который является предпочтительным стандартом формирования XML-запросов. Его синтаксис, предполагающий иерархическую адресацию элементов документа и их фильтрацию при помощи предикатных выражений, позволяет выделить произвольный фрагмент иерархической структуры проекта. Например, запрос

ProjectElementsEl[@Name="Bтopuчный-Пpuбop" or ParentsParent=ProjectElementsEl[@Name= "Bтopuчный-Пpuбop"]@Number]

позволяет выбрать из проекта элемент «Bтopuчный-Пpuбop» и все его подчиненные элементы.

Запрос вида

ProjectElementsEl[@Name="Пuтaнue-Caпфupa" and TrebovaniaTr[@NamPar="Мощн" and @ZnPar="Equal" and @BelPar>"0.8"]]

выбирает из проекта те элементы «Пuтaнue-Caпфupa», в списке требований которых есть требование равенства мощности значению, большему 0,8.

На рисунке показана архитектура XML-сервера, обеспечивающего возможность однорангового обмена проектной информацией (B2B, Business to Business). Его компоненты — ядро, обеспечивающее лексико-синтаксический разбор строки поступившего от клиента запроса, интерпретацию запроса, его исполнение в контексте виртуального XML-документа «Единая модель проекта», формирование результирующего документа XML, разбор полученного документа и «перекачку» данных из него в объектную модель. Драйвер обеспечивает представление объектной модели в виде виртуального XML-документа, а также «девиртуализацию» на стороне клиента. Такое архитектурное решение является симметричным, то есть может быть реализовано на сервере и на клиенте, и открытым. Последнее означает, что так как специфика виртуального источника данных инкапсулирована его драйвером, взаимодействие с которым осуществляется по стандартному интерфейсу, для функционального масштабирования сервера, которое вызвано появлением нового источника, достаточно написания нового драйвера.

Е. С. Целищев,
Е. Р. Пантелеев,
Н. Б. Ильичев,
В. В. Пекунов,
М. А. Первовский
Ивановский государственный энергетический университет
E-mail: