Адаптация 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 предоставляет ряд механизмов расширения стандартной
функциональности.
Первый механизм – разработка дополнительных
сценариев на языке Basic Script.
PLM-система Enovia SmarTeam
предоставляет встроенную среду разработки SmartScript
Editor на языке программирования Visual
Basic Script (рис. 1).
рис.
1. Среда разработки SmarTeam SmartScript
Editor
Данная среда позволяет проверить синтаксис кода и
откомпилировать проект. Также среда имеет подсветку синтаксиса. Данный подход
имеет ряд достоинств и недостатков. Качественное отличие метода от всех
остальных заключается в общем хранилище исходных файлов, находящемся на сервере
SmarTeam в специализированной директории, к которой
автоматически открывается доступ у всех пользователей системы. Таким образом,
все клиенты работают в общем файловом пространстве на сервере со скриптами (сценариями), для работы которых не требуется трансляция
либо компиляция, следовательно, после завершения этапа кодирования сценарий
готов к работе. Первый подход имеет также ряд других положительных особенностей:
-
весь программный код находится в одном файле;
-
нет необходимости использовать дополнительные средства проектирования;
-
изменения в исходный код можно вносить без компиляции проекта.
Разработка сценариев на языке Visual Basic в стандартном редакторе является очень удобной в плане
организационной структуры, но имеет ряд недостатков. Ключевая проблема данного
метода – отсутствие удобных механизмов проектирования. Функционал встроенного
редактора является очень ограниченным и не отвечает современным требованиям по
многим критериям. Ниже представлен ряд проблем c
которыми приходится сталкиваться при разработке скриптов
в стандартном редакторе SmartScript Editor:
·
ограниченная функциональность среды разработки;
·
отсутствие полноценного отладчика;
·
отсутствие автоматической генерации кода и подсказок;
·
отсутствие автоматического форматирования исходного кода.
Несмотря на описанные выше проблемы ключевой минус
данного подхода – свободный доступ к исходным кодам. Как уже было отмечено,
файлы Visual Basic не нуждаются в компиляции
и трансляции, и, таким образом, из них не формируются файлы в бинарном формате.
Все это приводит к тому, что коммерческим структурам, предоставляющим свои
услуги предприятию, очень сложно защитить свою интеллектуальную собственность
от копирования и вмешательства извне.
Большую часть недостатков подхода к проектированию
сценариев с использованием встроенного редактора на языке 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 с другими системами, реализуется
с помощью 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.