УДК 004.435+004.046+004.942
А.О. Лубягина
О ПОДХОДЕ К ФУНКЦИОНАЛЬНОЙ ИНТЕГРАЦИИ СИСТЕМ НА ОСНОВЕ ТЕХНОЛОГИИ MDE*
Целью исследования является анализ возможностей подхода, основанного на использовании моделей (MDE), для решения задач интеграции гетерогенных компонент при проектировании комплексных информационных систем. Проведен анализ возможных уровней интеграции систем, по результатам которого выявлено преимущество функционального подхода, позволяющего объединить компоненты комплексной системы на уровне бизнес-логики. Рассматривается процесс проектирования интегрированной системы, автоматизирующей процесс мониторинга деятельности предприятий нефинансового сектора экономики центральными национальными банками, с использованием унифицированного языка моделирования (UML). Предлагается иной подход к проектированию комплексной системы, который основан на создании вертикальной иерархии метамоделей предметно-ориентированных языков (DSLs), описывающих разнородные подсистемы, и визуальных моделей, выполненных в графических нотациях метамоделей различных уровней. Показано преимущество использования предметно-ориентированных языков для проектирования и моделирования бизнес-процессов информационных систем по сравнению с классическим подходом, предполагающим использование UML. Приведено обоснование выбора использования DSM-платформы (языкового инструментария) MetaLanguage для реализации формально описанных метамоделей.
Информационная система; интеграция систем; модель-ориентированное проектирование; предметно-ориентированные языки; метамоделирование; иерархия моделей; иерархия языков.
A.O. Lubyagina
ON APPROACH TO SYSTEMS FUNCTIONAL INTEGRATION ON THE BASIS OF MDE TECHNOLOGY
The aim of the research is to analyze the possibilities of approach, based on the systematic use of models as essential artifacts throughout the software lifecycle (MDE) to meet the challenges of heterogeneous components integration in the design of complex information systems. The analysis of system integration possible levels was conducted, the results of which revealed the advantage of using the functional integration, which integrates systems at the logical business layer. The designing process of integrated system that automates the monitoring process of non-financial enterprises activities by national central banks, using the Unified Modeling Language (UML) was presented. The new approach to design of an integrated system was proposed, that based on the creation of vertical hierarchy of domain-specific languages (DSLs), describing heterogeneous subsystems, and visual models, made in metamodels graphical notations of different levels. The advantage of the DSLs' use for the design and business processes modelling of information systems was highlighted in comparison with the classical approach, based on the use of UML. The choice substantiation for using DSM-platform MetaLanguage for implementing formally described metamodels is given.
Information system; systems integration; MDE technology; domain-based languages; metamodeling; models hierarchy; languages hierarchy.
Введение. В настоящее время процесс разработки информационных систем (ИС) ориентирован на использование более высокого - комплексного - уровня интеграции, при котором функциональные возможности ИС расширяются включением в них множества подсистем. Растущие требования заказчиков приводят к
* Работа по созданию DSM-платформы ведётся при поддержке РФФИ: проекты № 12-07-00763-а и № 14-07-31330-мол а.
необходимости создания продуктов, реализующих более широкие функциональные возможности, чем существующие системы. Так, например, департамент банковского надзора (ДБН) обладает программным обеспечением (ПО), которое автоматизирует лишь некоторые операции процесса мониторинга деятельности нефинансовых предприятий (НП) и испытывает потребность в создании единой организационно-технической системы формирования и ведения сводной информации об анализируемых объектах. Комплексная система должна интегрировать унаследованные системы, чтобы решить задачу объединения и расширения их функционала, организации взаимодействия подсистем.
Анализ технологий функциональной интеграции систем. На сегодняшний день существует несколько направлений интеграции систем. Ниже описаны подходы к интеграции систем управления крупными промышленными предприятиями, предложенные А.А. Мусаевым и Ю.М. Шерстюк [1]:
♦ Организационная. Характеризуется рациональным сочетанием управленческой деятельности персонала по всем уровням интегрированной АСУ.
♦ Функциональная. Обеспечивает единство локальных целей функционирования, требует разработки общей функциональной структуры всей системы, декомпозиции системы на компоненты. Устанавливает для каждого компонента модели функционирования, а также функциональные и информационные связи между компонентами.
♦ Информационная. Требует единого подхода к сбору, представлению, хранению и использованию информации об объекте управления на всех уровнях иерархической системы управления. Обеспечивает взаимосвязанную циркуляцию информации между компонентами системы.
♦ Программная. Обеспечивает совместное функционирование программных средств, используемых для решения задач.
♦ Техническая. Обеспечивает объединение средств вычислительной техники, средств низовой автоматизации и локальных сетей ЭВМ, позволяющее проводить автоматическую реализацию всех направлений интеграции при распределённой обработке информации.
В свою очередь, TrowBridge, Roxburgh, Hohpe и др. [2] выделяют следующие уровни интеграции систем: интеграция данных, представления, процессов, а также функциональная и портальная интеграция.
В данной работе внимание акцентируется на функциональной интеграции, результатом реализации которой является объединение систем на уровне бизнес-логики. При этом обычно используются распределённые объекты/компоненты. Разработка, основанная на компонентах, включает в себя понятие коннектора (компоненты связаны друг с другом), формализма для описания взаимодействия между компонентами, формализма для описания развёртывания компонент и др.
Интеграция систем на основе технологии MDE. Перспективным подходом к решению вопросов функциональной интеграции систем является проектирование, управляемое моделями (MDE, Model-Driven Engineering), которое подразумевает систематическое использование моделей как основных сущностей на протяжении всего жизненного цикла ИС. Технология MDE фокусируется на архитектуре системы и соответствующих средствах автоматизации, которые позволяют работать на более высоких уровнях абстракции при проектировании ПО, что даёт возможность строить более простые модели и акцентировать внимание на поставленных задачах в рамках предметной области [3].
Один из классических подходов к проектированию ИС основан на использовании для создания моделей графического языка общего назначения - UML. Однако внесение изменений в конфигурацию ИС, разработанную с помощью автомати-
ческой генерации исполняемого кода по созданным аналитиками UML-моделям, для настройки на меняющиеся условия и требования заказчика, как минимум, требует проведения анализа с целью упрощения структуры UML-моделей и устранения недостатков путём проведения эквивалентных трансформаций и поиска методов рефакторинга для каждого конечного автомата UML [4].
Кроме того, результаты проектирования (разработанные модели), полученные с использованием классических методов, имеют в своей основе статическую модель предметной области, не позволяющую перейти на другой уровень абстракции, либо этот переход требует реинжиниринга [5].
Таким образом, подтверждается преимущество применения технологии MDE при проектировании ИС. В ядре MDE лежит концепция DSL (Domain Specific Languages), использование которой является лучшим решением, например, в ситуации, когда экспертам предметной области, обладающим знаниями об особенностях построения и протекания различных процессов, выполнения проектов, необходимо быстро получить общее понимание определённого вопроса, не прибегая к изучению и использованию всех выразительных возможностей мощного универсального (унифицированного) языка.
DSL увеличивает уровень абстракции модели от специфики платформы, а также позволяет разработчикам и пользователям работать с формальными моделями в привычных для них терминах. Специалисты в предметных областях, эксперты могут принимать активное участие не только в разработке моделей на этапе анализа предметной области и проектирования системы, но и в её настройке в ходе эксплуатации, адаптируя систему к своим потребностям [6].
Создание предметно-ориентированного языка для моделирования деятельности предприятий нефинансового сектора экономики. Для решения поставленных задач в рамках предлагаемого подхода необходимо создать иерархию языков и моделей, что предполагает выполнение следующих шагов:
♦ на основе данных, документов сферы анализа деятельности НП создаётся метамодель соответствующей предметной области;
♦ на основе метамодели (общецелевого языка описания деятельности нефинансовых предприятий) строятся языки моделирования работы производственных предприятий;
♦ на разработанном языке формируются конкретные модели, отображающие те или иные бизнес-процессы, протекающие в исследуемой предметной области.
Метамодель общецелевого языка представляет собой концептуальную модель предметной области. Диаграмма классов в нотации UML, представляющая фрагмент модели (основные объекты и связи между ними), показана на рис. 1.
Основные сущности модели: «ИС», которая интегрирует «Смежную систему», состоящую, в свою очередь, из подсистем. Первые два элемента имеют связь типа «агрегация», поскольку при прекращении эксплуатации (или остановки процесса разработки) ИС, подсистемы будут продолжать функционировать отдельно. Связи остальных сущностей имеют тип «ассоциация».
На рис. 2 представлена связь элементов метамоделей общецелевого и предметно-ориентированного языка моделирования бизнес-процессов системы анализа деятельности НП в виде иерархии классов.
Вводит данные
Получает
Обрабатывает Оформляет
м|
Поступающие Информация
данные ИС
. М________
Результаты I
обработки____|
М
■Получает результата
рабо
J
Рис. 1. Метамодель общецелевого языка описания деятельности НП
Сотрудник службы эксплуатации
Сотрудни СМП уровняДБН
Сотрудни СМП уровня ТУ
Операторы Off-line
Ввести
обеспечивающую
информацию
Подсистема 1
Подсистема 2
Подсистема N
М П !
Пользователь
М
Смежная , ситтема
Вводит данше М
Интегрирует
Вводит данные
Поступающие анные
Получает
ИС
^:
Обрабатывает
_____М
j Информация
Оформляет М
Результаты
обработки
Перечень Регистрацио
предприятии нная Анкетные
-участгоков информация данные НП
мониторила НП
is a
М
1 1
Рис. 2. Метамодель предметно-ориентированного языка моделирования деятельности нефинансовых предприятий
Для упрощения модели на рисунке показаны лишь некоторые сущности и отношения между ними. Конструкции, которыми оперирует каждый DSL, различны и не могут быть использованы одновременно в обеих предметных областях [6], поэтому данная модель является многоуровневой. Как видно, описанная метамодель предметно-ориентированного языка перегружена и сложна для понимания специалистами, не обладающими профессиональными знаниями в области программирования, применения языка UML.
Для реализации описанного в статье подхода предлагается использование DSM-платформы MetaLanguage [7], предоставляющей возможность интеграции нескольких языков в одной системе. Платформа обеспечивает все этапы модель-ориентированного проектирования ИС от разработки предметно-ориентированных языков моделирования до создания на их основе моделей, которые могут использоваться в конкретной реализации ИС, могут быть экспортированы в другую систему, а также могут быть использованы в сторонних приложениях за счёт реализации горизонтальных и вертикальных трансформаций [7].
Заключение. Растущие потребности заказчиков приводят к созданию все более крупномасштабных программных продуктов, включающих в себя системы с различным функционалом. Для выполнения первого этапа системной интеграции был проведён анализ, по результатам которого было выявлено преимущество использования функциональной интеграции, которая предполагает проектирование каждой отдельной подсистемы и их последующее объединение. Предложенный подход, основанный на использовании технологии MDE, способствует работе на более высоких уровнях абстракции для обеспечения простоты моделей, что особенно актуально в сфере анализа деятельности нефинансового сектора экономики, поскольку пользователями выступают сотрудники ДБН, не являющиеся ИТ-специалистами. Выполнено построение иерархии языков, в частности метаязыка, для описания DSL, метамодели предметно-ориентированного языка исследуемой предметной области. Для реализации описанного подхода предложено использование платформы MetaLanguage, которая позволяет производить многоуровневое и мультиязыковое моделирование, выполнять горизонтальные и вертикальные трансформации моделей.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Мусаев А.А., Шерстюк Ю.М. Интеграция автоматизированных систем управления крупных промышленных предприятий: принципы, проблемы, решения // Автоматизация в промышленности. - 2003. - № 10. - С. 40-45.
2. Krishnakumar Balasubramanian, Douglas C. Schmidt, Zoltan Molnar, Akos Ledeczi. System Integration using Model-Driven Engineering // Institute for Software Integrated Systems Vanderbilt University, Nashville. - P. 19.
3. Лядова Л.Н. Метамоделирование как основа средств разработки профессиональноориентированных информационных систем // Математика программных систем: Меж-вуз. сб. науч. статей. - Пермь: Изд-во Перм. гос. нац. исслед. ун-та, 2012. - Вып. 9.
- С. 20-32.
4. Волкова Е.Д., Страбыкин А.Д. Анализ и трансформации исполняемых UML моделей // Труды Института системного программирования РАН. - М., 2006. - С. 16.
5. Шевченко О.В. Анализ современных подходов проектирования информационных систем // Материалы IV Международной научно-технической конференции «Технологии разработки информационных систем ТРИС-2013». - Таганрог: Изд-во ЮФУ, 2013.
- Т. 1. - С. 89-93.
6. СуховА.О., Лядова Л.Н. О подходе к разработке профессионально-ориентированных систем на основе DSM-платформ // Материалы IV Межд. научно-технической конференции «Технологии разработки информационных систем ТРИС-2013». - Таганрог: Изд-во ЮФУ, 2013. - Т. 1. - С. 61-70.
7. Лядова Л.Н., Сухов А.О. Языковой инструментарий системы MetaLanguage // Математика программных систем: Межвуз. сб. научн. статей. - Пермь, 2008. - С. 40-51.
Статью рекомендовал к опубликованию д.ф.-м.н., профессор С.В. Русаков.
Лубягина Анна Олеговна - Национальный исследовательский университет «Высшая школа экономики»; e-mail: [email protected]; 614060, г. Пермь, бул. Гагарина, 37а; тел. +79504690159; кафедра информационных технологий в бизнесе; студентка.
Lubyagina Anna Olegovna - National Research University Higher School of Economics; e-mail: [email protected]; 37a, Gagarina street, Perm, 614060, Russia; phone: +79504690159; the department of information technologies in business; student.
УДК 681.51.01
О.Р. Норкин, С.С. Парфенова
КОНФЛИКТЫ ПРИ ПРОЕКТИРОВАНИИ ИНФОРМАЦИОННЫХ СИСТЕМ КАК СЛЕДСТВИЕ ФАКТОРА НЕОПРЕДЕЛЕННОСТИ
Рассматривается системный подход, как неотъемлемая часть методологии системного анализа. Данная методология, как правило, обязательно использует количественные методы анализа, способствующие наибольшей ясности мышления аналитика. Эти методы используют для идентификации, оптимизации и принятия управленческих решений. При этом возникает неопределенность, связанная с недостатком информации об исследуемой системе вообще и информационной системе в частности. Следствием являются проблемы при проектировании информационных систем, которые называют слабоструктурированными. Такие проблемы характеризуются недостатком объективной информации, принципиально неустранимым на момент принятия решения. Приводятся виды неопределенности, возникающие при анализе и оценивании сложных систем. Этапы исследования систем являются неотъемлемой частью процесса проектирования информационных систем и обладают рядом специфических особенностей. При этом возникают проблемы, связанные с разрешением конфликтов между входящими в нее подсистемами. Рассматриваются причины возникновения конфликтов. Авторы ссылаются на свой опыт применения изложенных в статье подходов по разрешению конфликтов в процессе организации распределенных вычислений.
Системный анализ; системный подход; оценка сложных систем; неопределенность; конфликт; проектирование информационных систем; распределенные вычисления.
O.R. Norkin, S.S. Parfenova
CONFLICTS IN THE DESIGN OF INFORMATION SYSTEMS AS A RESULT OF UNCERTAINTY FACTOR
The article discusses a systematic approach as an essential part of system analysis methodology. This methodology usually necessarily use quantitative methods of analysis, contributing to the greatest clear thinking analyst. These methods are used for the identification, optimization and management decisions. This raises the uncertainty associated with the a lack of information about the system under study in general and information system in particular. Therefore, have problems in the design of information systems, which are called semistructured. Such problems are characterized by a lack of objective information, fundamentally ineradicable at the moment of decision. The paper presents kinds of uncertainty arising in the analysis and evaluation of complex systems. Stages of research systems are integral to the design of information systems and have a number of specific features. This raises problems associated with resolution of conflicts between its subsystems. This article discusses the causes of conflict. The authors refer to their experience in using the approaches outlined in the article on conflict resolution in the distributed computing.
System analysis; system approach; the evaluation of complex systems; uncertainty; conflict; information systems; distributed computing.
В современных условиях развития науки и техники необходимо повышать уровень системности исследований и проектирования. Без системного подхода в настоящее время невозможно решение проблем в самых разных областях. Системный подход предполагает анализ проблемной ситуации и выбор лучшей альтернативы разнообразными методами оценки или оценивания сложных систем [1]. Оце-