Адаптация PLM системы Enovia SmarTeam к специфике предприятия на основе 

интеграции механизмов  расширения  базового функционала

И.П. Скирневский,
учеб. маст.,
igorskir@yandex.ru,
Э.С. Аметова,
программ., evelinaametova@gmail.com,
С.Г. Цапко,
доц., к.т.н., serg@aics.ru,
ФГБОУ ВПО НИ ТПУ, г. Томск

Адаптация PLM-системы SmarTeam  к специфике конкретного предприятия реализуется за счет специальных механизмов. Первый механизм – разработка дополнительных сценариев на языке Basic Script. PLM-система Enovia SmarTeam предоставляет встроенную среду разработки SmartScript  Editor на языке программирования Visual Basic Script. Большую часть недостатков подхода к проектированию сценариев с использованием встроенного редактора на языке Visual  Basic компенсирует разработка программных компонентов посредством COM-технологии. В докладе предложен подход к расширению базового функционала PLM-системы SmarTeam с использованием указанных механизмов, который позволяет компенсировать недостатки каждого механизма в отдельности.

 

Adapting SmarTeam PLM-system to specifics of particular factory is realized through special mechanisms. The first mechanism is developing additional scripts with Basic Script language. PLM-system Enovia  SmarTeam provides integrated development environment  SmartScript  Editor with the programming language Visual Basic Script. Developing software components through COM-technology compensates most of the disadvantages of the approach to the design of scripts using built-in editor with Visual Basic language. The report presents a technique for expansion of basic functional of SmarTeam PLM-systems using these mechanisms, which allows to compensate the shortcomings of each mechanism individually.

Введение

Начиная с 2008 года ОАО «ИСС» приступило к реализации проекта внедрения решений Dassault Systèmes для разработки элементов конструкции и бортовых кабельных систем космических аппаратов. Таким образом, использование PLM-системы Enovia SmarTeam в качестве ядра ЕИП стало стандартом для предприятия. Однако несмотря на то, что PLM-система Enovia SmarTeam успешно внедрена практически во всех структурных подразделениях предприятия и успешно функционирует, выполняя свои базовые функции, зачастую требуется расширение функционала. Это реализуется за счет создания специальных программ – сценариев или скриптов, которые реагируют на действия пользователя либо системы. Примерами таких программ могут послужить дополнительные обработчики событий, либо интеграции между различными CAD и EDA системами и PLM-системой Enovia SmarTeam, которые не предусмотрены в рамках стандартных интеграций. Методов решения данных проблем множество. Однако в данном докладе будет подробно рассмотрено два из них.

PML система Enovia Smarteam предоставляет ряд механизмов расширения стандартной функциональности.

Разработка программных компонентов стандартными средствами PLM-системы Enovia SmarTeam

Первый механизм – разработка дополнительных сценариев на языке Basic Script. PLM-система Enovia SmarTeam предоставляет встроенную среду разработки SmartScript Editor на языке программирования Visual Basic Script (рис. 1).

рис. 1. Среда разработки SmarTeam SmartScript Editor

Данная среда позволяет проверить синтаксис кода и откомпилировать проект. Также среда имеет подсветку синтаксиса. Данный подход имеет ряд достоинств и недостатков. Качественное отличие метода от всех остальных заключается в общем хранилище исходных файлов, находящемся на сервере SmarTeam в специализированной директории, к которой автоматически открывается доступ у всех пользователей системы. Таким образом, все клиенты работают в общем файловом пространстве на сервере со скриптами (сценариями), для работы которых не требуется трансляция либо компиляция, следовательно, после завершения этапа кодирования сценарий готов к работе. Первый подход имеет также ряд других положительных особенностей:

-          весь программный код находится в одном файле;

-          нет необходимости использовать дополнительные средства проектирования;

-          изменения в исходный код можно вносить без компиляции проекта.

Разработка сценариев на языке Visual Basic в стандартном редакторе является очень удобной в плане организационной структуры, но имеет ряд недостатков. Ключевая проблема данного метода – отсутствие удобных механизмов проектирования. Функционал встроенного редактора является очень ограниченным и не отвечает современным требованиям по многим критериям. Ниже представлен ряд проблем c которыми приходится сталкиваться при разработке скриптов в стандартном редакторе SmartScript Editor:

·      ограниченная функциональность среды разработки;

·      отсутствие полноценного отладчика;

·      отсутствие автоматической генерации кода и подсказок;

·      отсутствие автоматического форматирования исходного кода.

Несмотря на описанные выше проблемы ключевой минус данного подхода – свободный доступ к исходным кодам. Как уже было отмечено, файлы Visual Basic не нуждаются в компиляции и трансляции, и, таким образом, из них не формируются файлы в бинарном формате. Все это приводит к тому, что коммерческим структурам, предоставляющим свои услуги предприятию, очень сложно защитить свою интеллектуальную собственность от копирования и вмешательства извне.

Разработка программных компонентов посредством COM-технологии

Большую часть недостатков подхода к проектированию сценариев с использованием встроенного редактора на языке Visual Basic компенсирует разработка программных компонентов посредством COM-технологии. В ней используется удаленный вызов процедур. Под термином «удаленный вызов процедур» понимают класс технологий, которые позволяют компьютерным программам вызывать функции или процедуры в другом адресном пространстве. Наибольшая эффективность использования метода удалённого вызова процедур достигается в тех приложениях, в которых существует интерактивная связь между удалёнными компонентами с небольшим временем ответов и относительно малым количеством передаваемых данных.

COM-объекты (Component Object Model – объектная модель компонентов) – это набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением для использования во внешних программных продуктах. Такое определение соответствует термину интерфейса программирования приложений, называемого API (Application Programming Interface – интерфейс программирования приложений). Представить API приложения в виде набора COM-объектов позволяют специальные инструменты: встроенные в приложения редакторы программного кода или внешние среды разработки IDE (от англ. Integrated Development Environment) (рис. 2).

рис.2. Общая схема взаимодействия через COM API интерфейс

Для разработки программных компонентов в PLM-системе Enovia SmarTeam была выбрана среда разработки Microsoft Visual Studio Express Edition. Данная среда предоставляется бесплатно. Microsoft Visual Studio обладает большими возможностями, такими как различные инструменты программирования и отладки. Все это повлияло на выбор именно этой среды разработки; другие среды разработки в Windows на языке С++ (или C#) со схожим функционалом (например, Embarcadero C++ Builder) являются платными.

Все функции и обработчики событий хранятся в DLL библиотеках (библиотека динамической компоновки), что позволяет защитить код программы от несанкционированного доступа, так как конечному пользователю предоставляются уже скомпилированные DLL файлы.

Достоинства подхода:

-          многофункциональная среда разработки;

-          легко читаемый, разделенный код;

-          наличие качественного отладчика;

-          наличие автоматической генерации кода и подсказок;

-          наличие автоматического форматирования исходного кода.

Недостатки подхода разработки компонент посредством COM-технологии:

-          необходимость установки и настройки дополнительных программ;

-          необходимость разработки дополнительных программ, для регистрации COM-объектов в системе.

COM-объект должен быть зарегистрирован на компьютере, где его предполагается использовать. Для ОС Windows регистрация COM-объекта заключается в его занесении в системный реестр. Регистрация COM-объектов для задач проектирования программных компонентов в PLM-системе Enovia SmarTeam выполняется с помощью системной утилиты regasm.exe, которая является частью программной платформы Microsoft.Net.

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

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

Совместное использование стандартной среды разработки SmartScript и COM-технологии при адаптации PLM-системы SmarTeam к специфике предприятия

При совместном использовании стандартной среды разработки SmartScript и COM-технологии основной программный код, реализующий такие функции как обработка событий, интеграция PLM-системы SmarTeam с другими системами, реализуется с помощью COM-технологии; вспомогательные сценарии (скрипты) реализуются на Visual Basic.

Использование стандартных средств PLM-системы SmarTeam позволило компенсировать один из главных недостатков COM-технологии, а именно производить актуализацию динамических библиотек находящихся на клиентских машинах. Для этого на языке Visual Basic в стандартном редакторе PLM-системы SmarTeam SmartScript был реализован скрипт, позволяющий произвести проверку актуальности DLL библиотек, при необходимости обновить их и скопировать в заданную директорию недостающие либо новые DLL-файлы. После получения полного пакета DLL скрипт реализует регистрацию библиотек в системе.

В результате использования совмещенного подхода к расширению базового функционала PLM-системы SmarTeam проектировщик получил удобную среду разработки, компенсируя при этом временные затраты на перерегистрацию и актуализацию DLL библиотек.

Заключение

На текущий момент Dassault Systems распространяет новый продукт Enovia V6, основанный на облачных вычислениях. Таким образом, многие проблемы, возникающие при работе с клиентскими программными продуктами, исчезают. Все пользователи системы получают полный доступ и функционал через веб-интерфес, а все расширения для программного продукта находятся на сервере и недоступны для пользователя. При работе в системах подобного класса, использующих удаленный сервер и сервисы, обслуживающие запросы клиентов через web-интерфейс, выбор технологии расширения стандартного функционала будет сформирован по совершенно другим критериям.

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

Литература

1.  Норенков, И.П., Кузьмин П.К. Информационная поддержка наукоемких изделий. CALS-технологии. М.: Изд-во МГТУ им. Н.Э. Баумана, 2002. 320 с.

2.  Комисаренко А.Л., Саломатина А.А. ИПИ-технологии в приборостроении/ Приложение II. Методические рекомендации по выполнению СРС. Под ред. к.т.н., доцента Е.И. Яблочникова - СПб: ГУИТМО, 2008.

3.  Вичугова А.А., Дмитриева Е.А., Цапко Г.П. Разработка модели данных PDM-системы ENOVIA SMARTEAM для управления спецификациями при создании радиоэлектронной аппаратуры//Прикладная информатика: научно-практический журнал. - 2010. - Вып. 5 (29). - С. 23-29.

4.  Кошелев В.В., Инструментальные средства настройки и адаптации PDM-системы SmarTeam. URL: http://forum.bee-pitron.com/attachment.php? attachmentid=14&d= 1053432431.