автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.18, диссертация на тему:Формализация потоков работ и ее применение

кандидата технических наук
Нестеренко, Алексей Константинович
город
Москва
год
2007
специальность ВАК РФ
05.13.18
Диссертация по информатике, вычислительной технике и управлению на тему «Формализация потоков работ и ее применение»

Автореферат диссертации по теме "Формализация потоков работ и ее применение"

На правах рукописи

Нестеренко Алексей Константинович

ФОРМАЛИЗАЦИЯ ПОТОКОВ РАБОТ И ЕЕ ПРИМЕНЕНИЕ

Специальность 05.13.18 - математическое моделирование, численные методы и комплексы программ

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

шт

Москва - 2007 оозоТаУго'

Работа выполнена в отделе систем математического обеспечения Вычислительного Центра им А А Дородницына РАН

Научный руководитель

доктор физ -мат наук, профессор Серебряков Владимир Алексеевич

Официальные оппоненты"

доктор физ -мат наук, член-корреспондент

РАН, профессор

Флеров Юрий Арсеньевич

доктор техн наук, профессор Паринов Сергей Иванович

Ведущая организация

Институт системного программирования РАН

Защита состоится « И Б » _ 2007 года в

1 0 час на заседании диссертационного совета К212.156 02 в Мос-

ковском физико-техническом институте (государственном университете) по адресу 141700, г Долгопрудный Московской обл, Институтский пер, д 9, ауд 903 КПМ

С диссертацией можно ознакомиться в библиотеке Московского физико-технического института (государственного университета)

Автореферат разослан « Р. Ч »_А-у^дМА_2007 г

Ученый секретарь

диссертационного совета ^ ¿-—? Федько О С

Общая характеристика работы

Актуальность темы

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

Для эффективного решения задач автоматизированной координации деятельности большая часть усилий разработчиков программного обеспечения на текущий момент сконцентрирована вокруг теории автоматизированных потоков работ (Workflow) и систем, способных эффективно решать задачи их исполнения и координации (Workflow Management Systems) Количество подобных информационных систем, в основу которых на формальном уровне заложена базовая концепция интеграции распределенных ресурсов (как программных систем, так и человеческих ресурсов) для выполнения некоторой общей задачи, увеличивается очень быстрыми темпами

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

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

Цель работы

Целью работы является разработка моделей, методов и технологий автоматизации управления потоками работ Практической составляющей работы является разработка комплекса программ, автоматизирующего моделирование и исполнение потоков работ, используемого при решении ряда задач автоматизации научной деятельности В работе исследованы и решены следующие задачи

1 Обзор подходов к моделированию потоков работ, их сравнительный анализ

2 Построение модели потока работ на базе онтологического подхода к задаче описания информационных систем

3 Разработка формального языка описания потоков работ на базе предложенной модели

4 Выбор графического представления для визуального моделирования описаний потоков работ

5 Реализация программного комплекса, автоматизирующего моделирование потоков работ с помощью разработанного формального языка

6 Реализация комплекса программ по управлению потоками работ, описанными с помощью предложенного формального языка

7 Апробация полученных результатов в ряде прикладных задач по автоматизации научных вычислительных процессов

Научная новизна

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

1 Описание потоков работ базируется на формализованной онтологической модели информационной системы Данный подход обеспечивает полноту и выразительность получаемой модели потока работ

2 Представлен формальный алгебраический язык описания потоков работ Данный язык делает возможным разработку алгоритмов верификации и оптимизации описанных на нем потоков работ, а также средств его интерпретации в рамках исполняющей системы

3 Предложена графическая запись потока работ на базе спецификации ВРМЫ 1 0 для визуального представления моделей потоков работ в средствах моделирования

4. Разработана технология моделирования описаний потоков работ (формальное высокоуровневое описание и исполняемое низкоуровневое), реализован программный комплекс для автоматизации процесса моделирования потоков работ

5 Реализован программный комплекс по управлению автоматизированными потоками работ, базирующийся на новейших интеграционных технологиях, таких как интеграция распределенных информационных систем с помощью Web-сервисов

Практическая ценность

Построенная формальная онтологическая модель потока работ представляет собой каноническую модель, позволяющую решать проблему сопоставления описаний потоков работ, сделанных с помощью различных технологий моделирования, их взаимного преобразования и сравнения

Представленная алгебраическая форма записи описаний потоков работ позволяет разрабатывать различные автоматизированные анализаторы и интерпретаторы описаний потоков работ (в том числе, в целях их верификации и оптимизации)

Предложенные методы и средства моделирования полностью автоматизируют процесс разработки описаний потоков работ от формального, высокоуровневого описания до непосредственно исполняемого кода

Разработанный комплекс программ по управлению потоками работ позволяет автоматизировать сложные распределенные процессы с использованием как человеческих ресурсов, так и взаимодействия с другими информационными системами и хранилищами данных При этом средства динамической отладки потоков работ позволяют в кратчайшие сроки получать стабильно работающие процессы

Реализованные программные средства имеют широкий круг применения в области автоматизации научных вычислительных процессов

Апробация работы

Основные результаты работы докладывались и обсуждались на следующих научных конференциях и семинарах

Научно-практический семинар "Новые технологии в информационном обеспечении науки" (Таруса, 2003-2005).

Всероссийская научная конференция "Электронные библиотеки перспективные методы и технологии, электронные коллекции" (Санкт-Петербург, 2003, Пущино, 2004; Суздаль, 2006) Всероссийская научная конференция "Научный сервис в сети Интернет" (Новороссийск, 2004)

Международный коллоквиум Spring Young Researcher's Colloquium On Database and Information Systems - SYRCoDIS, St -Petersburg, Russia, 2004

Международная конференция The 8th World Multi-Conference on Sys-temics, Cybernetics and Informatics - SCI 2004, Orlando, Florida, 2004 Научная конференция МФТИ (Долгорудный, 2005-2006).

Международная конференция "Порядковый анализ и смежные вопросы математического моделирования" (Владикавказ, 2006) Научные семинары отдела систем математического обеспечения Вычислительного Центра им А А Дородницына РАН (Москва, 20012007)

Публикации

По теме диссертации опубликовано 12 работ, в том числе одна из списка изданий, рекомендованного ВАК РФ

Структура и объем работы

Диссертация состоит из введения, шести глав, заключения, списка использованных источников, включающего 50 наименований, одного приложения Работа изложена на 100 страницах

Краткое содержание работы Введение

Во введении обоснована актуальность темы исследования, описаны решаемые проблемы, рассматриваются базовые возможности систем управления потоками работ в применении к решению задачи автоматизации деятельности Введение дает характеристику основных проблем и задач, возникающих при этом

Глава I. Обзор технологий моделирования потоков работ

В главе 1 приведен обзор существующих технологий моделирования потоков работ

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

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

Метод SADT (Structured Analysis and Design Technique) создан Дугласом Россом (SoftTech, Inc) в 1969 г и поддерживается Министерством обороны США, которое было инициатором разработки семейства стандартов IDEF (Integrated DEFinition Methods) Метод SADT реализован в одном из стандартов этого семейства - IDEF0 Это процессный метод моделирования При этом модель потока работ описывается при помощи

диаграмм Все диаграммы модели SADT взаимосвязаны и организованы в иерархию Вершина иерархии описывает систему в целом, это самое общее описание, а листья - самые детализированные описания После описания системы в целом проводится разбиение ее на крупные фрагменты Этот процесс называется функциональной декомпозицией, а диаграммы, которые описывают каждый фрагмент и взаимодействие фрагментов, называются диаграммами декомпозиции

В конце 1980-х годов был разработан метод моделирования IDEF3, являющийся частью семейства стандартов IDEF С помощью этого метода стало возможным моделировать последовательность действий в рамках некоторого процесса

К настоящему времени количество средств, методов и технологий моделирования потоков работ сильно увеличилось Качественно новым шагом в моделировании потоков работ стало появление графического языка Business Process Modelmg Notation (BPMN), представленного консорциумом Business Process Management Initiative (BPMI) в 2003 году Целью этого проекта является создание общего подхода к описанию потоков работ в виде диаграмм, понятных различным категориям специалистов от аналитиков и экспертов до разработчиков программного обеспечения Модель BPMN проста в использовании и понимании Поднимаясь на более высокий уровень сложности описания, можно постепенно подойти к естественному отображению BPMN-диаграмм в исполняемый язык описания потоков работ (такой как BPEL 1 1 или BPML).

Глава II. Онтологический подход к проблеме моделирования потоков работ

В главе 2 представлен подход к моделированию потоков работ, основанный на онтологиях информационных систем

Наиболее полная онтология для описания информационных систем была представлена в работе «Ontological Foundations of Information Systems» (Weber R , Melbourne, 1997) Онтология BWW (Bunge, Wand and Weber ontology) исходит из следующего предположения все методы моделирования информационных систем (Information Systems Analysis and Design - ISAD) должны быть в состоянии описать все понятия «реального мира», которые могут быть интересны пользователям информационных систем, в противном случае методика моделирования является неполной Если модель неполна, аналитик (разработчик) должен соответствующим образом усложнить модель, для того, чтобы разработанная на базе нее информационная система адекватно отражала ту часть «реального мира», для автоматизации которой она предназначена

Онтология BWW фокусируется на модели представления, которая определяет набор понятий, их связей и характеристик, достаточных для описания структуры и поведения информационных систем

-5-

В работе «Ontological Foundations of Information Systems» вводятся два основных критерия «онтологической» оценки выразительности и целостности метода моделирования информационных систем онтологическая полнота и онтологическая ясность При этом можно делать предположения о качестве той и или иной методики моделирования информационных систем по степени соответствия этим критериям

Онтологическая полнота имеет место при отсутствии в грамматике ISAD дефицита конструкций Дефицит возникает, когда по крайней мере для одного понятия канонической онтологии не существует отражающей его грамматической конструкции анализируемой грамматики ISAD

Онтологическая ясность характеризуется отсутствием следующих аномалий

1 Перегрузка конструкций присутствует в грамматике ISAD в случае, если некоторой грамматической конструкции ISAD соответствует более одного понятия канонической онтологии

2 Избыточность конструкций присутствует в грамматике ISAD в случае, если более одной грамматической конструкции ISAD представляют одно и то же понятие канонической онтологии

3 Лишние конструкции присутствуют в грамматике ISAD в случае, если они не соответствуют никаким понятиям канонической онтологии.

Анализ выразительности существующих методик моделирования информационных систем с помощью выявления несоответствий выбранной канонической онтологии широко применяется для анализа средств моделирования потоков работ. Для выражения степени отклонения техники моделирования от канонической онтологии по указанным выше критериям вводятся следующие коэффициенты, которые представляют собой процентное отношение количества конструкций конкретной «аномальной» группы к количеству всех конструкций анализируемой грамматики ISAD:

относительная степень дефицита (relative degree of deficit, DoD), относительная степень перегрузки (relative degree of overload, DoO), относительная степень избыточности (relative degree of redundancy, DoR),

относительная степень присутствия лишних конструкций (relative degree of excess, DoE)

Следующая таблица представляет результаты исследования различных технологий моделирования потоков работ с помощью канонической онтологии BWW

•Техника ч моделирования. "(¿вторы - исследований! 4 Rclativc DoD <„'. Relative DoO Relative DoR Relative DoE

Petri Net (1962) [Green and Rosemann, 2000] 28% 59% 3% 43%

BPML1 0 (2002) [Arkin, 2002] 29% 65% 28% 3%

BPMN 1.0(2004) [Recker, 2006, Rosemann, 2006] 51% 35% 28% 25%

EPC (1992) [Keller, 1992, Scheer, 2000] 3% 62% 43% 28%

WSCI 1.0 (2002) [Arlan, 2002] 29% 49% 18% 8%

ebXML 1.01 (2001) [Arkrn, 2002] 15% 13% 14% 5%

BPEL 1.1 (2003) [Andrews, 2003] 32% 49% 13% 6%

Табл 1. Онтологическая оценка методик моделирования потоков работ

Из таблицы видно, что анализ методик моделирования потоков работ с помощью онтологического подхода дает различные результаты, с достаточно большой степенью отклонения по некоторым из коэффициентов (например, коэффициент дефицита для ВРМЫ 1 0 или коэффициент перегрузки для ВРЕЬ 1 1) Эти отклонения по большей части обусловлены тем, что «область покрытия реального мира» для информационных систем по автоматизации потоков работ уже, чем для всего класса информационных систем (онтология BWW) Поэтому для получения онтологической объективной оценки необходимо выполнить сужение онтологии В\У\У на предметную область систем управления потоками работ.

В главе 2 предложен вариант такого сужения На следующей диаграмме приведен фрагмент ЦМЬ-диаграммы классов основных сущностей разработанной онтологической модели потока работ

Онтология В\ЛЛЛ/

Х7

Х7

ЯР

»interface» System

«interface» Subsystem

1

w

Онтологическая модель потока работ

V

CampoxKeAdtvity

Рис 1 Базовые сущности онтологической модели потока работ

Верхняя часть диаграммы представляет базовые понятия онтологии в то время как нижняя часть - их генерализацию на понятия потока

работ

Из приведенного примера видно, что основными классами сущностей являются

Событие, возникающее в результате смены состояний потока работ Внутренние события возникают в результате выполнения действий (например, событие сообщения в результате его генерации), в то время как внешние поступают в поток работ извне (например, событие таймера)

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

В приложении приводится полное описание структуры и семантики элементов разработанной онтологической модели

Глава III Алгебраическая и графическая запись онтологической модели потока работ

Формализация потока работ в виде онтологической модели позволяет полностью описать семантику базовых понятий потока работ При этом полученная семантическая модель не определяет представления описания потока работ в форме удобной для анализа человеком или автоматизированными анализаторами В связи с этим в рамках данной работы была разработана формальная алгебраическая запись потока работ, семантика которого определена описанной онтологической моделью

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

1 множество идентификаторов событий £ = {а, Ь,С,...},

2 множество идентификаторов действий Q = {А, В, С,. .},

3 начальное действие Д, eil,

4 множество формул VF.

Каждая из формул множества имеет следующую структуру

А = (действие) ,Ае Q Действия в свою очередь могут быть простыми и составными (действие)

[(условие активации)]

((простое действие) | (составное действие))

Условие активации действия задает логическое выражение на подмножестве событий с использованием логических операторов '&' (конъюнкция), 'I' (дизъюнкция),''' (отрицание), а так же скобок для расстановки приоритетов Значение события х считается истиной (true), если до мо-

мента вычисления условия была инициирована генерация этого события с помощью простого действия СКЕАТЕ(х), х е £

Составное действие строится из действий потока работ с использованием следующих основных правил. 1. '&' - параллельная активация,

2 " - последовательная активация,

3 - простой исключающий выбор (активируется первое действие с истинным или отсутствующим условием активации),

4 '||' - исключающий выбор с ожиданием (активируется то действие, для которого условие активации станет истинным за более короткий промежуток времени),

5 '*' - итерация (циклическая активация действия до тех пор, пока остается истинным условие активации действия)

(составное действие) .=

Наиболее важными простыми действиями являются действия генерации события С REATE (х), íeS и ожидания генерации набора событий с поддержкой логической комбинации ожидаемых событий WAIT(x& у...), х, у,... е Т. Эта пара действий позволяет обеспечить синхронизацию отдельных подпроцессов потока работ, а так же промоделировать базовый поток данных

Приведем пример алгебраической записи потока работ, представленного следующей диаграммой

£('][{í)ействие)~^ (операция) (действие) £)'] (операция) :.= '&' | Т | *||* | ' ' | '*'

i i i i* i

Действие (/

Действие (С)

Действие (Е

Рис 2 Пример потока работ

Описанный поток работ включает в себя три действия Два из них (А и В) выполняются параллельно Последнее действие С выполняется после синхронизации двух параллельных ветвей процесса. Алгебраическая запись такого потока работ имеет вид

2 = {о, Ь)

А0 = А&В&С А = A'.CREATE(a) В = B'.CREATE(b) С = WAIT {а & Ъ) С'

В данном примере введены дополнительные действия А', В', С £ Q, которые определяют «полезную» работу, выполняемую действиями А, В, С € Q Полное описание синтаксиса и примеры использования алгебраической записи для описания типовых шаблонов потоков работ приведены в главе 3

Поскольку алгебраическая форма записи потока работ сложна для восприятия разработчиком описаний, в главе 3 проводится анализ возможности использования в этих целях некоторого удобного графического представления В результате анализа различных существующих графических языков для описания потоков работ в качестве базового был выбран стандарт BPMN 1 0 (Business Process Modeling Notation) Главный аргумент в пользу данного стандарта - покрытие метамоделью BPMN базовых понятий потока работ в смысле разработанной формальной онтологической модели Это гарантирует полноту описания потока работ с использованием данного графического языка На следующей диаграмме представлено описание приведенного ранее простого синхронизирующегося потока работ в представлении BPMN 1 О

Рис 3 Пример диаграммы потока работ на языке BPMN 1 О

Как видно из диаграммы, специализированные конструкции BPMN, такие как шлюзы (элементы запуска параллельного исполнения действий и последующей синхронизации), представляют собой удобные макросредства для записи конструкций с синхронизирующими событиями алгебраической формы вида А = A' CREATE (а) Это упрощает процесс разработки модели потока работ и делает его более наглядным

Глава IV Метод получения исполняемого описания потока работ по его модели

Имея описание потока работ на формальном языке, можно переходить к следующему этапу - получение по описанию модели процесса «программного кода» При этом первоочередная задача - выбор среды функционирования потока работ, включая представление интерфейсов его участников Среда функционирования потока работ обеспечивает привязку абстрактной модели потока работ к реальным участникам (программным компонентам) и структурам оперативных данных процесса

Большинство созданных на текущий момент систем управления потоками работ в качестве среды функционирования автоматизированных участников потока работ (сервисов) придерживаются сервис-ориентированной модели взаимодействия, представленной архитектурой Web-сервисов (WSA) Web-сервисы — это распределенные компоненты, обрабатывающие XML-сообщения, передаваемые по протоколу SOAP Интерфейс Web-сервисов описывается с помощью языка WSDL Web-сервисы обеспечивают интероперабельность между программными компонентами, которые могут размещаться в различных инфраструктурах

На текущий момент существует ряд XML-языков для описания исполняемых потоков работ в виде композиций Web-сервисов В главе 4 проводится обзор существующих стандартов описания исполняемых потоков работ Наиболее быстрыми темпами развивается язык BPEL (Business Process Execution Language for Web-services) К своему нынешнему виду BPEL эволюционировал из слияния XLANG, созданного в Microsoft, и разработанного в IBM языка WSFL Позже некоторые дополнения были предложены BEA, а потому и эту компанию включают в число авторов BPEL

В главе 4 рассматривается задача трансляции описаний потока работ на формальном языке в исполняемые языки, поддерживаемые различными исполняющими платформами Возможность такой трансляции обуславливается тем, что разработанный формальный язык описания потоков работ представляет собой базис любого исполняемого языка (такого, как BPEL, XLANG/s, BPML и т д ), поскольку он следует онтологической модели, описывающей общие сущности для всех типов потока работ По-

этому множество понятий исполняемых языков описания потоков работ состоит из

1 Понятий формального языка описаний потоков работ

2 Дополнительных контекстно-зависимых понятий Под контекстно-зависимыми понятиями подразумеваются понятия, присутствие которых в языке обусловлено внешней средой функционирования исполняемого процесса В частности язык ВРЕЬ описывает композиции Web-cepвиcoв, что делает его зависимым от базовых понятий \Veb-сервисной архитектуры

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

В рамках диссертационной работы были реализованы средства базовой автоматизированной трансляции описаний потока работ на формальном языке в язык ВРЕЬ При этом был разработан внутренний ХМЬ-формат для записи описаний процесса на формальном языке, который путем расширения, включает так же дополнительные элементы описания, необходимые транслятору В результате трансляции такой ХМЬ-записи процесса получается «скелетная» реализация потока работ на языке ВРЕЬ, которая дорабатывается разработчиком до исполняемого описания Ниже приводится пример трансляции описания простого действия асинхронной отправки сообщения внешней системе (например, \\^еЬ-сервису) из формального языка в язык ВРЕЬ

конструкция - Внутреннее ХМЬ- . . представление > '> Запись на языке ВРЕЬ • ,,

Ж/УВД <Беп(1 еуеп!г="х" рагНс1раМ="жгч1се" ¡Шег/асе-'ъ сгУ1се1п1егГасе" орегаШп="%е тсеОрегаюп" /> <уапаЫе пате="х" Г> <туоке три1.Уаг1аЫе="х" раПпег1лпк="5егу!се" роЛТуре-'ветсеМегГасе " орега1юп="зетсеОрегаюп" />

Табл 2 Пример трансляции элемента описания потока работ в язык ВРЕЬ

В качестве дальнейшей работы планируется полная поддержка трансляции в исполняемый язык ВРЕЬ 1 1, а так же в другие языки различных исполняющих платформ

Глава V. Разработка средств моделирования потоков работ

В главе 5 описывается реализованный комплекс программных средств для автоматизации процесса моделирования потоков работ Данный комплекс включает в себя

визуальные средства моделирования потоков работ на формальном языке, используя выбранный графический язык ВРМЫ 1 О, базовые средства автоматизированной трансляции описаний процесса на формальном языке в исполняемый язык ВРЕЬ 1 1, визуальные средства разработки описаний потоков работ на языке ВРЕЬ 1 1

Общая архитектура редактора описаний потоков работ на формальном языке представлена следующим набором уровней-Объектное представление

На данном уровне определен состав классов объектов, зависимости между ними, их атрибуты, соответствующие разработанной онтологической модели потока работ Эта модель является базовым представлением структуры диаграммы в оперативной памяти при ее визуализации и редактировании Визуальное представление

На данном уровне элементам объектной модели сопоставляются графические фигуры, представляющие их на диаграмме в рамках выбранного графического представления ВРМИ 1 О Объектно-визуальное отображение

Уровень является связующим звеном между объектным и визуальным представлением диаграммы Он позволяет построить двунаправленное отображение путем определения для каждого класса объектов управляющего элемента отображения ХМЬ-объектное отображение

Функционал данного уровня позволяет сохранять объектное представление диаграммы во внутреннем ХМЬ-формате, а так же выполнять обратное построение объектной модели по ХМЬ-данным Таким образом, данный уровень предоставляет базовые средства загрузки/выгрузки диаграмм на жесткий диск Экспорт/импорт в различных форматах

Функционал данного уровня делает возможным трансформацию внутреннего ХМЬ-представления диаграммы к различным внешним форматам (включая бинарные) - экспорт Так же он позволяет приво-

дить описания диаграмм во внешних форматах к внутреннему ХМЬ-представлению - импорт

Визуальный интерфейс редактора описаний потоков работ на формальном языке поддерживает полный набор необходимых функции для эффективного моделирования процессов

Результатом работы редактора описаний потоков работ является внутреннее ХМЬ-представление описания потока работ, которое включает в себя как все синтаксические конструкции, определяемые онтологической моделью и формальным языком описания потоков работ, так и дополнительные элементы и их атрибуты, содержащие необходимые инструкции транслятора

На текущий момент поддерживается базовая автоматизированная трансляция описаний потоков работ из внутреннего ХМЬ-представления в описание на языке ВРЕЬ 1 1 При этом происходит автоматизированное построение «скелетной» реализации процесса на языке ВРЕЬ, после чего требуется его доработка до исполняемого описания путем учета всех технических требований языка В дальнейшем планируется поддержать полную автоматизированную трансляцию в этот язык, а также в другие исполняемые языки, такие как ХЬАИО/з, ХРБЬ 2 О

Для возможности визуальной разработки исполняемых потоков работ на языке ВРЕЬ 1.1 реализованы программные средства с поддержкой средств синтаксической и структурной верификации, а также механизмов управления уровнями детализации редактируемых описаний Таким образом, реализованный комплекс программных средств полностью автоматизирует процесс разработки описаний потоков работ, а так же позволяет осуществлять экспорт созданных описаний в различных внешних форматах (включая базовую трансляцию в язык ВРЕЬ 11)

Глава VI Реализация предложенных моделей и алгоритмов в виде комплекса программ по управлению потоками работ

В главе 6 описывается архитектура разработанного комплекса программ по управлению потоками работ Данное решение следует ряду \*/еЬ-стандартов для поддержки открытой модульной архитектуры Реализованная система включает следующие модули административный \УеЬ-портал, модуль исполнения потоков работ, включающий

• подсистему исполнения потоков работ,

• сервер динамической отладки потоков работ,

• подсистему мониторинга,

• подсистему безопасности,

модуль публикации описаний потоков работ,

хранилище описаний потоков работ и оперативных данных

Вычислительные сервисы, сервисы преобразования данных и другие автоматизированные участники рабочего процесса представлены Web-сервисами, следующими архитектуре WSA и стандартам WSDL (Web Services Description Language) и SOAP (Simple Object Access Protocol)

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

Регистрация новых описаний потоков работ и их размещение в репо-зитории системы управления осуществляется посредством административного Web-сервиса, после чего информация о зарегистрированном процессе и списке активных экземплярах доступна для просмотра и модификации

Разработанная система исполнения потоков работ имеет развитые средства визуальной отладки При этом реализована клиент-серверная архитектура, состоящая из сервера отладки, визуального клиента и XML-протокола для их взаимодействия

Все состояния исполняющегося процесса протоколируются для последующего анализа

Управление безопасностью доступа к операциям потока работ осуществляется посредством подключаемых модулей безопасности

Система исполнения потоков работ включает в свой состав ряд системных Web-сервисов, выполняющих такие функции, как трансформация данных, управление списками задач пользователей и тд Данный набор функциональных компонент позволяет автоматизировать сложные научные вычислительные процессы

В конце главы приведены примеры практического внедрения и использования разработанной системы исполнения автоматизированных потоков работ Наиболее успешные факты внедрения системы имели место в следующих проектах

1 Проект «Автоматизация гидроакустических исследований и мониторинга» совместно с ТОЙ ДВО РАН (2005 г)

В течение длительного периода времени на стационарном гидрофизическом полигоне ТОЙ ДВО РАН «мыс Шульца» проводятся комплексные океанологические наблюдения Полученные сведения описывают разнообразные гидрофизические процессы в прибрежной области и являются основой для дальнейшего изучения шельфовой зоны Японского моря Разработанная система исполнения потоков

работ использовалась для прототипирования потока работ по сбору, обработке и размещению в хранилище экспериментальных данных

2 Проект «Информационный портал поддержки использования результатов фундаментальных исследований» при поддержке РФФИ (2003-2006 г)

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

3 Проект «Электронная Земля научные информационные ресурсы и информационно-коммуникационные технологии» по программе фундаментальных исследований Президиума РАН «Разработка фундаментальных основ создания научной распределенной информационно-вычислительной среды на основе технологий GRID» (2004-2006 г) Проект имеет своей целью создание на основе технологий IT-инфраструктуры сетевой распределенной информационно-аналитической системы по наукам о Земле, обеспечивающей единообразный доступ к объединяемым в рамках проекта информационно-аналитическим и другим ресурсам. Создаваемая инфраструктура должна предоставлять возможность использования этих ресурсов для решения фундаментальных и прикладных задач, компьютерного моделирования и параллельных вычислений Система исполнения потоков работ использовалась для описания и исполнения потоков работ по доступу к геофизическим данным и их аналитической обработке

4 Проект «Разработка среды электронного взаимодействия федеральных органов исполнительной власти и хозяйствующих субъектов» в рамках Федеральной Целевой Программы «Электронная Россия» (2003-2005 г )

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

Заключение

В заключении приведены основные результаты диссертационной работы

Приложение

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

между ними

Основные результаты работы

1. Предложена унифицированная модель потока работ, описывающая на формализованном уровне основные понятия потока работ, их характеристики и взаимосвязи между ними

2 Предложен формальный алгебраический язык описания потоков работ, соответствующий разработанной модели и поддерживающий графическое представление в рамках графического языка описания потоков работ BPMN 1.0

3 Разработана технология моделирования потоков работ, включающая стадию моделирования и описания на формальном языке и стадию автоматизированного получения исполняемого кода на языке BPEL 1 1.

4 Реализован программный комплекс моделирования потоков работ, автоматизирующих весь процесс получения исполняемого описания потока работ.

5 Предложенные модели и алгоритмы реализованы в виде комплекса программ, обеспечивающего автоматизированное управление потоками работ и использующего Web-сервисные технологии Разработаны средства интерпретации описаний потоков работ, средства динамической отладки потоков работ, мониторинга их исполнения и протоколирования состояний исполняющегося потока работ для последующего анализа

6 Разработанные модели, методы и технологии успешно использованы в ряде проектов РАН и в рамках проектов Федеральной Целевой Программы «Электронная Россия»

Список публикаций по теме диссертации

1 Сысоев ТМ, Бездушный А А, Бездушный АН, Нестеренко А К Служба управления содержанием системы ИСИР, основанная на

XML-технологиях // Новые технологии в информационном обеспечении науки Труды X научно-практического семинара /Библиотека по естественным наукам РАН -М БЕН РАН, 2003 - С 160-181

2 Нестеренко А К, Бездушный А А , Сысоев Т М, Бездушный А Н Возможности службы управления потоками работ по манипулированию ресурсами репозитория ИСИР // Новые технологии в информационном обеспечении науки Труды X научно-практического семинара. /Библиотека по естественным наукам РАН - М БЕН РАН, 2003 - С 206-231

3 Бездушный А А , Бездушный А Н, Нестеренко А К, Серебряков В А , Сысоев ТМ Архитектура RDFS-системы Практика использования открытых стандартов и технологий Semantic Web в системе ИСИР // Электронные библиотеки перспективные методы и технологии, электронные коллекции Труды V всероссийской научной конференции /НИИ Химии СПбГУ - СПб , 2003 - С 45-60

4 Нестеренко А К, Сысоев Т М, Бездушный А А , Бездушный А Н, Серебряков В А Интеграция распределенных данных на основе технологий Semantic Web и рабочих процессов // Электронные библиотеки перспективные методы и технологии, электронные коллекции Труды VI всероссийской научной конференции /Институт математических проблем биологии РАН -М,2004 - С 263-271

5 Нестеренко А К, Сысоев Т М, Бездушный А А , Бездушный А Н Интеграция информационных потоков посредством координирующих рабочих процессов // Научный сервис в сети Интернет- Сборник трудов всероссийской научной конференции -М МГУ, 2004 - С 165167

6 Нестеренко А К Служба управления потоками работ на базе стандартов WfMC // Интегрированная система информационных ресурсов архитектура, реализация, приложения Сборник трудов /Вычислительный Центр им А А Дородницына РАН - М ВЦ РАН, 2004 - С 96-112

7 Bezdushny А А , Bezdushny А N, Nesterenko А К, Serebriakov VA , Sysoev ТМ Integrated System of Information Resources of the Russian Academy of Sciences // The 8th World Multi-Conference on Systemics, Cybernetics and Informatics SCI 2004, Orlando, Florida - 2004 - P. 462467

8 Бездушный A H, Кулагин MB, Серебряков В A , Бездушный A A , Нестеренко A К, Сысоев ТМ Предложения по наборам метаданных для научных информационных ресурсов // Журнал "Вычислительные Технологии" -2005 -Т10, вып7-С 29-48

9 Нестеренко А К Использование технологии потоков работ для моделирования научных вычислительных процессов // Современные про-

блемы фундаментальных и прикладных наук Труды XLVIII научной конференции /Моек физ-тех ин-т.-М.,2005 -С 33-35 10 Нестеренко А К Использование механизмов интеграции приложений для автоматизации процессов управления информационными ресурсами // Порядковый анализ и смежные вопросы математического моделирования Труды IV международной научной конференции /Институт прикладной математики и информатики - Владикавказ, 2006 - С 66-76

11. Нестеренко А К, Данилина А А, Сысоев ТМ, Бездушный АН, Серебряков В А Автоматизация процессов интеграции распределенных информационных ресурсов // Электронные библиотеки перспективные методы и технологии, электронные коллекции Труды VIII всероссийской научной конференции /Ярославский государственный университет им П Г. Демидова - Ярославль, 2006 - С 279-290

12. Нестеренко А К Использование парадигмы Model-View-Controller в задаче реализации средств моделирования бизнес-процессов // Современные проблемы фундаментальных и прикладных наук. Труды XLIX научной конференции /Моек физ -тех ин-т - М, 2006 - С 61-63

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

Нестеренко Алексей Константинович

ФОРМАЛИЗАЦИЯ ПОТОКОВ РАБОТ И ЕЕ ПРИМЕНЕНИЕ

Подписано в печать 18 04 07 Формат 60 х 84 '/16 Печать офсетная Уел печ л 1,0 Уч -изд л 1,0 Тираж 80 экз Заказ № 33

Размножено на ризографе ООО «Мария», Московская обл г Лобня, ул Вокзальная, 22, ИНН 5025001421

Оглавление автор диссертации — кандидата технических наук Нестеренко, Алексей Константинович

Содержание.

Введение.

1 Обзор технологий моделирования потоков работ.

1.1 Графические языки моделирования потоков работ.

1.1.1 Structured A nalysis and Design Technique.

1.1.2 Data Flow Diagrams.

1.1.3 Диаграммы деятельности UML.

1.1.4 Business Process Modeling Notation.

1.2 XML-языки моделирования потоков работ.

1.2.1 XML Process Definition Language.

1.2.2 Business Process Modeling Language.

2 Онтологический подход к проблеме моделирования потоков работ.

2.1 Онтологическая модель информационной системы.

2.2 Онтологическая оценка выразительности.

2.3 Онтологическая модель потока работ.

2.3.1 События.

2.3.2 Состояния.

2.3.3 Действия.

2.3.4 Поток работ и вложенный поток работ.

3 Алгебраическая и графическая запись онтологической модели потока работ.

3.1 Формальный язык описания потоков работ.

3.1.1 Структура описания.

3.1.2 Составные действия.

3.1.3 Простые действия.

3.1.4 Пример описания потока работ.

3.2 Оценка выразительности языка описания потоков работ.

3.2.1 Шаблоны потоков работ.

3.2.2 Шаблон 1 «Последовательность».

3.2.3 Шаблон 2 «Парахчельное выполнение».

3.2.4 Шаблон 3 «Синхронизация».

3.2.5 Шаблон 4 «Исключающий выбор».

3.2.6 Шаблон 5 «Простое слияние».

3.2.7 Шаблон 6 «Множественный выбор».

3.2.8 Шаблон 7 «Синхронизирующее слияние».

3.2.9 Шаблон 8 «Множественное слияние».

3.2.10 Шаблон 9 «Дискриминатор».

3.2.11 Шаблон 10 «Произвольные циклы».

3.2.12 Шаблон 11 «Подразумеваемое завершение».

3.2.13 Шаблон 12 «Множественные экземпляры без синхронизации».

3.2.14 Шаблон 13 «Множественные экземпляры с синхронизацией и известным на момент моделирования количеством экземпляров».

3.2.15 Шаблон 14 «Множественные экземпляры с синхронизацией и известным на момент исполнения количеством экземпляров».

3.2.16 Шаблон 15 «Множественные экземпляры с синхронизацией с неизвестным заранее количеством экземпляров».

3.3 Графическое представление потока работ.

4 Метод получения исполняемого описания потока работ но его модели.

4.1 Использование Web-сервисной архитектуры как среды функционирования потока работ

4.2 Языки описания композиций Web-сервисов.

4.2.1 Web Services Flow Language.

4.2.2 Business Process Execution Language for Web Services.

4.2.3 Web Services Choreography Interface.

4.3 Метод трансляции формального описания потока работ в язык BPEL.

5 Разработка средств моделирования потоков работ.

5.1 Разработка описаний потоков работ на формальном языке.

5.2 Трансляция формальных описаний в язык BPEL.

5.3 Разработка описаний потоков работ на языке BPEL.

6 Реализация предложенных моделей и алгоритмов в виде комплекса программ но управлению потоками работ.

6.1 Архитектура системы управления потоками работ.

6.2 Проект «Автоматизация гидроакустических исследований и мониторинга».

6.3 Проект «Информационный портал поддержки использования результатов фундаментальных исследований».

6.4 Проект «Электронная Земля: научные информационные ресурсы и информационно-коммуникационные технологии».

6.5 Проект «Разработка среды электронного взаимодействия федеральных органов исполнительной власти и хозяйствующих субъектов».

Введение 2007 год, диссертация по информатике, вычислительной технике и управлению, Нестеренко, Алексей Константинович

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

• автоматизированная подготовка входных и выходных данных каждого этапа процесса;

• координация потока управления и потока данных;

• полная автоматизация отдельных участков потока работ (способность взаимодействия с «программными» исполнителями заданий в рамках некоторого унифицированного интерфейса);

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

• эффективная реакция потока работ на возникновение непредвиденных обстоятельств на пути его выполнения (например, недоступность в данный момент тех или иных ресурсов), в том числе четко регламентированные действия по устранению последствий некорректно выполненного этапа процесса;

• хорошая управляемость процессом с доступом к данным любого активного этапа;

• четкое ролевое разделение участников процесса (в том числе поддержка динамической взаимозаменяемости исполнителей в случае недоступности нужных ресурсов);

• возможность сбора статистики выполнения процесса для последующей оптимизации.

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

• построение автономных систем управления потоками работ (вне контекста конкретного варианта их использования) требует строгой формализации описаний потоков работ на некотором языке;

• поскольку основной контингент пользователей подобных систем составляют исполнители на местах, аналитики, менеджеры (т.е. люди неискушенные в программировании маршрута потока работ с использованием некоторых формальных языков), система разработки потоков работ должна предоставлять развитые средства по созданию и модификации описаний потоков работ. При этом должен использоваться наиболее интуитивно понятный обычному пользователю способ формирования потоков работ - визуальные диаграммы (так как практически каждый управляющий процессом человек привык использовать для таких целей некоторое прикладное средство, такое как, например, диаграммы деятельности UML[33]). Итого, помимо эффективного «языка программирования» потоков работ пользователям должна быть представлена удобная графическая нотация для их описания с достаточным уровнем абстракции;

• система управления потоками работ должна предоставлять создателям описаний потоков работ полный набор средств для проверки их работоспособности до начала опытной эксплуатации. Такие средства должны включать как простые статические верификаторы корректности созданных описаний потоков работ, так и динамические отладчики;

• интерактивные средства взаимодействия с пользователями являются особо важной составляющей частью системы, поскольку именно пользователи управляют ходом выполнения потока работ;

• большую важность имеют задачи обеспечения безопасности данных и поддержки транзакционности автоматизированных потоков работ.

По данным направлениям организациями-законодателями теоретических основ систем управления потоками работ выполняется большая работа по стандартизации универсальных решений и технологий. Но на данный момент па рынке программных продуктов сложилась непростая ситуация со стандартизацией процесса построения систем управления потоками работ. Существует несколько конкурирующих спецификаций языков описания процессов произвольной сложности и типов. Между тем следование каноническим спецификациям и стандартам дает ряд очевидных преимуществ как в случае систем управления потоками работ, так и в случае других практических решений:

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

• переносимость и интероперабельность: модели потоков работ, созданные в рамках одной системы, могут частично или полностью работать под управлением другой (возможно, удаленной) системы.

• универсальность: расширяемость стандартов делает возможным применение единого механизма описания потока работ в различных сферах деятельности.

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

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

Целыо диссертационной работы является разработка моделей, методов и технологий автоматизации управления потоками работ. Практической составляющей работы является разработка комплекса программ, автоматизирующего моделирование и исполнение потоков работ, используемого при решении ряда задач автоматизации научной деятельности. В работе исследованы и решены следующие задачи:

1. Обзор подходов к моделированию потоков работ, их сравнительный анализ.

2. Построение модели потока работ на базе онтологического подхода к задаче описания информационных систем.

3. Разработка формального языка описания потоков работ на базе предложенной модели.

4. Выбор графического представления для визуального моделирования описаний потоков работ.

5. Реализация программного комплекса, автоматизирующего моделирование потоков работ с помощью разработанного формального языка.

6. Реализация комплекса программ по управлению потоками работ, описанными с помощью предложенного формального языка.

7. Апробация полученных результатов в ряде прикладных задач по автоматизации научной деятельности.

Научная новизна работы заключается в создании новых технологий и методов реализации систем управления потоками работ. В отличие от большинства существующих систем автоматизации потоков работ и бизнес-процессов, разработанный программный комплекс имеет следующие особенности:

1. Описание потоков работ базируется па формализованной онтологической модели информационной системы. В диссертационной работе предложен оригинальный подход к построению модели потока работ: онтологическая модель информационной системы в целом была адаптирована к области задач, решаемых системами управления потоками работ. Данный подход обеспечивает полноту и выразительность полученной модели потока работ.

2. Представлен формальный язык описания потоков работ. Данный язык делает возможным разработку алгоритмов верификации и оптимизации описанных на нем потоков работ, а также средств его интерпретации в рамках исполняющей системы.

3. Предложена графическая запись потока работ на базе спецификации BPMN 1.0[34] для визуального представления моделей потоков работ в средствах моделирования.

4. Рассмотрена задача автоматизированной трансляции описаний потоков работ на формальном языке в существующие языки описания потоков работ различных исполняющих платформ. Эта задача решена автором в виде реализации автоматизированной трансляции в язык описания композиций Web-сервисов BPEL[42].

5. Разработана технология моделирования описаний потоков работ (формальное высокоуровневое описание и исполняемое низкоуровневое), реализован программный комплекс для автоматизации процесса моделирования потоков работ.

6. Реализован программный комплекс по управлению автоматизированными потоками работ, базирующийся па новейших интеграционных технологиях, таких как интеграция распределенных информационных систем с помощью \УеЬ-сервисов[37].

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

Представленное формальное описание потоков работ позволяет разрабатывать различные автоматизированные анализаторы и интерпретаторы описаний потоков работ (в том числе, в целях их верификации и оптимизации).

Предложенные методы и средства моделирования полностью автоматизируют процесс разработки описаний потоков работ от формального, высокоуровневого описания до непосредственно исполняемого кода.

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

Реализованные программные средства имеют широкий круг применения в области автоматизации научной и производственной деятельности.

Основные научные и практические результаты, выносимые на защиту

В диссертационной работе представлены следующие результаты, выносимые на защиту:

1. Предложена унифицированная модель потока работ, описывающая на формализованном уровне основные понятия потока работ, их характеристики и взаимосвязи между ними.

2. Предложен формальный язык описания потоков работ, соответствующий разработанной модели и поддерживающий графическое представление в рамках графического языка описания потоков работ BPMN 1.0.

3. Разработана технология моделирования потоков работ, включающая стадию моделирования и описания на формальном языке и стадию автоматизированного получения описания потока работ на языке описания композиций Web-сервисов BPEL 1.1.

4. Реализован программный комплекс моделирования потоков работ, автоматизирующих весь процесс получения исполняемого описания потока работ.

5. Предложенные модели и алгоритмы реализованы в виде комплекса программ, обеспечивающего автоматизированное управление потоками работ и использующего Web-сервисные технологии. Разработаны средства интерпретации описаний потоков работ, средства динамической отладки потоков работ, мониторинга их исполнения и протоколирования состояний исполняющегося потока работ для последующего анализа.

6. Разработанные модели, методы и технологии успешно использованы в ряде проектов РАН и в рамках проектов Федеральной Целевой Программы «Электронная Россия».

Публикации

По теме диссертации опубликовано 12 работ:

1. Сысоев Т.М., Бездушный А.А., Бездушный А.Н., Нестеренко А.К. Служба управления содержанием системы ИСИР, основанная на XML-технологиях // Новые технологии в информационном обеспечении науки: Труды X научно-практического семинара. /Библиотека по естественным наукам РАН. - М.: БЕН РАН, 2003. - С. 160-181.

2. Нестеренко А.К., Бездушный А.А., Сысоев Т.М., Бездушный А.Н. Возможности службы управления потоками работ по манипулированию ресурсами репозитория ИСИР // Новые технологии в информационном обеспечении науки: Труды X научно-практического семинара. /Библиотека по естественным наукам РАН. -М.: БЕН РАН, 2003.-С. 206-231.

3. Бездушный А.А., Бездушный А.Н., Нестеренко А.К., Серебряков В.А., Сысоев Т.М. Архитектура RDFS-системы. Практика использования открытых стандартов и технологий Semantic Web в системе ИСИР // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: Труды V всероссийской научной конференции. /НИИ Химии СПбГУ. - СПб., 2003. - С. 45-60.

4. Нестеренко А.К., Сысоев Т.М., Бездушный А.А., Бездушный А.Н., Серебряков В.А. Интеграция распределенных данных на основе технологий Semantic Web и рабочих процессов // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: Труды VI всероссийской научной конференции. /Институт математических проблем биологии РАН. - М., 2004. - С. 263-271.

5. Нестеренко А.К., Сысоев Т.М., Бездушный А.А., Бездушный А.Н. Интеграция информационных потоков посредством координирующих рабочих процессов // Научный сервис в сети Интернет: Сборник трудов всероссийской научной конференции. - М.: МГУ, 2004.-С. 165-167.

6. Нестеренко А.К. Служба управления потоками работ па базе стандартов WfMC // Интегрированная система информационных ресурсов: архитектура, реализация, приложения: Сборник трудов. /Вычислительный Центр им. А.А. Дородницына РАН. -М.: ВЦ РАН, 2004.-С. 96-112.

7. Bezdushny A.A., Bezdushny A.N., Nesterenko A.K., Serebriakov V.A., Sysoev T.M. Integrated System of Information Resources of the Russian Academy of Sciences // The 8th World Multi-Conference on Systemics, Cybernetics and Informatics SCI 2004, Orlando, Florida.-2004.-P. 462-467.

8. Бездушный A.H., Кулагин M.B., Серебряков В.А., Бездушный А.А., Нестеренко А.К., Сысоев Т.М. Предложения по наборам метаданных для научных информационных ресурсов // Журнал "Вычислительные Технологии". - 2005. - Т. 10, вып.7 - С. 29-48.

9. Нестеренко А.К. Использование технологии потоков работ для моделирования научных вычислительных процессов // Современные проблемы фундаментальных и прикладных наук: Труды XLVIII научной конференции. /Моск. физ.-тех. ин-т. -М., 2005. - С. 33-35.

10.Нестеренко А.К. Использование механизмов интеграции приложений для автоматизации процессов управления информационными ресурсами. // Порядковый анализ и смежные вопросы математического моделирования: Труды IV международной научной конференции. /Институт прикладной математики и информатики. - Владикавказ, 2006. - С. 66-76.

11. Нестеренко А.К., Данилина А.А., Сысоев Т.М., Бездушный А.Н., Серебряков В.А. Автоматизация процессов интеграции распределенных информационных ресурсов // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: Труды VIII всероссийской научной конференции. /Ярославский государственный университет им. П.Г. Демидова. - Ярославль, 2006. - С. 279-290.

12. Нестеренко А.К. Использование парадигмы Model-View-Controller в задаче реализации средств моделирования бизнес-процессов И Современные проблемы фундаментальных и прикладных наук: Труды XLIX научной конференции. /Моск. физ.-тех. ип-т.-М„2006.-С. 61-63.

В работах с соавторами личный вклад автора заключается в создании методов моделирования потоков работ, формальных способов описания потоков работ, разработке теоретических основ их записи на формальном языке. Автором предложен онтологический подход к описанию модели потока работ с использованием технологий Semantic Web, описана архитектура системы управления потоками работ, являющейся частью Интегрированной Системы Информационных Ресурсов[3,7] (ИСИР), создан соответствующий комплекс программ.

Апробация

Основные результаты работы докладывались и обсуждались на следующих научных конференциях и семинарах:

• Научно-практический семинар "Новые технологии в информационном обеспечении науки" (Таруса, 2003-2005).

• Всероссийская научная конференция "Электронные библиотеки: перспективные методы и технологии, электронные коллекции" (Санкт-Петербург, 2003; Пущно, 2004; Суздаль, 2006).

• Всероссийская научная конференция "Научный сервис в сети Интернет" (Новороссийск, 2004).

• Международный коллоквиум Spring Young Researcher's Colloquium On Database and Information Systems - SYRCoDIS, St.-Petersburg, Russia, 2004.

• Международная конференция The 8th World Multi-Conference on Systemics, Cybernetics and Informatics - SCI 2004, Orlando, Florida, 2004.

• Научная конференция МФТИ (Долгопрудный, 2005-2006).

• Международная конференция "Порядковый анализ и смежные вопросы математического моделирования" (Владикавказ, 2006).

• Научные семинары отдела систем математического обеспечения Вычислительного Центра им. А.А. Дородницына РАН (Москва, 2001-2007).

Краткое содержание работы

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

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

В главе 3 представлена разработанная формальная запись потока работ, семантика которого определена описанной онтологической моделью. Для возможности визуального моделирования потоков работ на формальном языке использован графический язык описания потоков работ BPMN 1.0.

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

В главе 5 описывается реализованный комплекс программных средств для автоматизации процесса моделирования потоков работ. Представлена архитектура системы моделирования потоков работ, поддерживаемый набор функций.

В главе 6 описывается архитектура разработанного комплекса программ по управлению потоками работ. Данное решение следует ряду Web-стандартов для поддержки открытой модульной архитектуры. В конце главы приводятся примеры наиболее успешного внедрения программного комплекса в ряде проектов РАН.

В заключении приведены основные результаты диссертационной работы.

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

Заключение диссертация на тему "Формализация потоков работ и ее применение"

ЗАКЛЮЧЕНИЕ

В данной диссертационной работе получены следующие научные и практические результаты:

1. Разработана унифицированная онтологическая модель потока работ. Данная модель покрывает все базовые понятия потока работ, поскольку следует общей онтологии информационных систем BWW. В работе представлены UML-диаграммы классов разработанной онтологической модели, приведено описание их атрибутов и раскрыт их семантический смысл. Созданная модель потока работ может быть использована в целях:

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

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

- сопоставления описаний потоков работ, выполненных на различных языках описания потоков работ (как графических, так и текстовых), их взаимного сравнения и преобразования.

2. Для возможности разработки описаний потоков работ, соответствующих созданной онтологической модели, было разработано формальное описание потока работ. Данное описание является удобной формой представления потока работ, допускающей его анализ автоматизированными анализаторами. Это обеспечивает возможность:

- построения строгих алгоритмов структурной верификации описаний потоков работ до начала их исполнения;

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

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

3. Был проведен анализ возможности использования графического языка для разработки формальных описаний потоков работ. В качестве такого языка был использован стандарт BPMN. Было проведено сопоставление его метамодели и понятий разработанной онтологической модели потока работ. В результате была предложена методика использования данного языка для визуальной разработки формальных описаний.

4. Для возможности автоматизированного исполнения потока работ различными исполняющими платформами, был разработан общей метод трансляции описания потока работ на формальном языке в язык конкретной исполняющей системы. В частности была реализована автоматизированная трансляция в язык описания композиций Web-сервисов BPEL.

5. Предложенные подходы к моделированию потоков работ были реализованы в виде комплекса программ, автоматизирующего весь процесс разработки описаний потоков работ: начиная со стадии создания формального описания, и заканчивая трансляцией в язык BPEL с последующей доработкой.

6. В рамках данной диссертационной работы была реализована система управления потоками работ, обеспечивающая решение задач автоматизации деятельности научных и производственных коллективов. Данная система на архитектурном уровне следует разработанным методам, алгоритмам и технологиям и была использована в ряде проектов РАН для автоматизации научной деятельности. При этом разработанный комплекс программ позволил достичь высокой степени эффективности в задаче автоматизации процессов в различных прикладных областях.

В заключение автору хотелось бы поблагодарить всех сотрудников отдела систем математического обеспечения Вычислительного Центра им. А.А. Дородницына РАН, принимавших участие в разработке Интегрированной Системы Информационных Ресурсов РАН[3], частью которой являются созданные в данной работе методы и технологии. Особо хочу поблагодарить моего научного руководителя д.ф.-м.н. В.А. Серебрякова и к.ф.-м.н. А.Н. Бездушного, без которых данная работа не могла бы осуществиться.

Библиография Нестеренко, Алексей Константинович, диссертация по теме Математическое моделирование, численные методы и комплексы программ

1. Нестеренко А.К., Сысоев Т.М., Бездушный А.А., Бездушный А.Н. Интеграция информационных потоков посредством координирующих рабочих процессов // Научный сервис в сети Интернет: Сборник трудов всероссийской научной конференции. М.: МГУ, 2004. -С. 165-167.

2. Бездушный А.Н., Кулагин М.В., Серебряков В.А., Бездушный А.А., Нестеренко А.К., Сысоев Т.М. Предложения по наборам метаданных для научных информационных ресурсов // Журнал "Вычислительные Технологии". 2005. - Т. 10, вып.7 - С. 29-48.

3. Нестеренко А.К. Использование технологии потоков работ для моделирования научных вычислительных процессов // Современные проблемы фундаментальных и прикладных наук: Труды XLVIII научной конференции. /Моск. физ.-тех. ин-т. М., 2005. - С. 33-35.

4. Берников Г.Н. Обзор стандарта IDEF0,2005. // http://www.idefinfo.ru/content/view/12/48/

5. Берников Г.Н. Обзор стандарта IDEF3,2005. // http://www.idefinfo.ru/content/view/18/51/

6. W.M.P. van derAalst, А.Н.М. ter Hofstede, В. Kiepuszewski, А.P. Barros Workflow Patterns // Department of Technology Management, Eindhoven University of Technology. 2002.

7. Weber R. Ontological Foundations of Information Systems // Monograph №4. /Australia: Melbourne, Vic., Coopers & Lybrand and the Accounting Association of Australia and New Zealand.-1997.

8. Wand Y., Weber R. An ontological model of an information system // IEEE Transactions on Software Engineering Journal. 1990. - 16(11). - P. 1281-1291.

9. Jan R., Michael R., Marta I., Peter G. Business Process Modeling: A Maturing Discipline? // Business Process Management Center Report. /Faculty of Information Technology, Queensland University of Technology. 2006.

10. Roberto P., Andrea P., Anna L.G. Conceptual design of web application families: the BWW approach // University of Lecce. 2005.

11. Giancarlo G., Heinrich H., Gerd W. On the General Ontological Foundations of Conceptual Modeling // ER 2002, 21st International Conference on Conceptual Modeling. /Springer, Berlin. -2002.-P. 65-78.

12. Nicola G. Formal Ontology and Information Systems // Proceedings of FOIS'98, Trento, Italy, 6-8 June 1998. /Amsterdam, IOS Press. 1998. - P. 3-15.

13. Peter G., Michael R. Ontological Analysis of Business Systems Analysis Techniques: Experiences and Proposals for an Enhanced Methodology // Queensland University of Technology, Australia. Idea Group Publishing, 2005.

14. Guizzardi G. Ontological Foundations for Structural Conceptual Models // CTIT PhD Thesis Series. /Enschede, The Netherlands. 2005.

15. Guizzardi G., Wagner G. A Unified Foundational Ontology and some Applications of it in Business Modeling // Centre for Telematics and Information Technology, Univ. of Twente Enschede, The Netherlands. 2005.

16. Eva S., Birger A., Paul J., Erik P., Benkt W. Towards a Framework for Comparing Process Modelling Languages // Department of Computer Science, University of Skovde. 2002.

17. Neelam G. Introduction to Software Specifications and Data Flow Diagrams // The University of Arizona.-2004.

18. Peter F.G., Michael R. Perceived ontological weaknesses of process modeling techniques: further evidence // School of Commerce, The University of Queensland, Ipswich Australia. 2005.

19. Extensible Markup Language (XML) 1.0 (Fourth Edition), W3C Recommendation, 2006. // http://www.w3.org/TR/2006/REC-xml-20060816/

20. OMG Unified Modelling Language 2.0, 2001. // http://www.omg.org/cgi-bin/doc7formal/01-09-67

21. OMG Business Process Modeling Notation Specification 1.0, 2004. // http://bpmn.omg.org/Documents/BPMN%20Vl-0%20May%203%202004.pdf

22. Workflow Management Coalition, Workflow Standard, Process Definition Interface, XML Process Definition Language 2.00, 2005. // http://www.wfmc.org/standards/docs/TC-1025xpdl22005-10-03 .pdf

23. BPML working draft, 2002. // http://xml.coverpages.org/bpml.html

24. Web Services Architecture. // http://www.w3.org/2002/ws/

25. SOAP Version 1.2 Part 1: Messaging Framework. // http://www.w3.org/TR/2003/REC-soapl2-partl-20030624/

26. Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language. // http://www.w3.org/TR/2004/WD-wsdl20-20040326/

27. Universal Description, Discovery and Integration Specification. // http://www.uddi.org

28. Web Services Flow Language 1.0 Specification. // http://xml.coverpages.org/wsfl.html/

29. Business Process Execution Language for Web Services 1.1 Specification. // http://www-106.ibm.com/developerworks/library/ws-bpel/

30. Web Service Choreography Interface (WSCI) 1.0, W3C Note, 2002. // http://www.w3.org/TR/wsci/

31. WS-Security Specification. // http://www.oasis-open.org/committees/tchome.php?wgabbrev=wss

32. Web Services Addressing (WS-Addressing), W3C Member Submission, 2004. // http://www.w3.org/Submission/ws-addressing/

33. Web Services Transaction (WS-Transaction) Specification. // http://www-106.ibm.com/developerworks/webservices/library/ws-transpec/

34. WS-ReliableMessaging Specification // http://www.oasis-open.org/committees/tchome.php?wgabbrev=wsrm

35. XSL Transformations (XSLT) Version 1.0, W3C Recommendation, 1999. // http://www.w3.org/TR/xslt

36. Object Management Group (OMG), XMI Mapping Specification, v2.1, 2005. // http://www.omg.org/docs/formal/05-09-01.pdf

37. XML Schema 1.1 Part 2: Datatypes, W3C Working Draft, 2006. // http://www.w3.org/TR/xmlschemal 1-2/1. СПИСОК ИЛЛЮСТРАЦИЙ

38. Рис. 1. Функциональный блок диаграммы IDEF0.14

39. Рис. 2. Метод функциональной декомпозиции стандарта IDEF0.15

40. Рис. 3. Описание сценария процесса с помощью стандарта IDEF3.15

41. Рис. 4. Диаграмма потоков данных.16

42. Рис. 5. Описание потока работ в виде диаграммы деятельности UML.17

43. Рис. 6. Описание потока работ в нотации BPMN.19

44. Рис. 7. Базовые сущности онтологической модели потока работ.28

45. Рис. 8. Пример потока работ.37

46. Рис. 9. Пример диаграммы потока работ на языке BPMN.44

47. Рис. 10. Схема взаимодействия компонентов Web-сервисной архитектуры.50

48. Рис. 11. Структура WSFL-композиции WEB-сервисов.52

49. Рис. 12. WSCI-хореография.55

50. Рис. 13. Архитектура редактора описаний потоков работ на формальном языке.60

51. Рис. 14. Объектная метамодель редактора диаграмм па формальном языке.62

52. Рис. 15. Управляющие элементы объектно-визуального отображения.63

53. Рис. 16. Общая схема работы подсистемы экспорта и импорта.64

54. Рис. 17. Конвейеры трансформации.64

55. Рис. 18. Окно редактора описаний потоков работ.65

56. Рис. 19. Область построения диаграмм редактора описаний потоков работ.66

57. Рис. 20. Область атрибутов редактора описаний потоков работ.66

58. Рис. 21. Управляющее меню редактора описаний потоков работ.66

59. Рис. 22. Управляющее контекстное меню редактора описаний потоков работ.67

60. Рис. 23. Интерфейс древовидного редактора BPEL-описаний.69

61. Рис. 24. Интерфейс двумерного редактора BPEL-описаний.70

62. Рис. 25. Интерфейс управления шаблонами BPEL-описаний.71

63. Рис. 26. Интерфейс редактора XML-представления BPEL-описаний.72

64. Рис. 27. Сиитаксическая верификация BPEL-описапий.73

65. Рис. 28. Автоподстановка XML-текста.73

66. Рис. 29. Выбор Web-сервисов из реестра UDDI.74

67. Рис. 30. Компонентная схема системы исполнения потоков работ.76

68. Рис. 31. Интерфейс просмотра и модификации данных о зарегистрированном потоке работ 77

69. Рис. 32. Клиентский интерфейс интерпретатора описаний потоков работ.78

70. Рис. 33. Клиентский интерфейс модуля отладки потоков работ.79

71. Рис. 34. Протокол исполнения потока работ.79

72. Рис. 35. Базовая схема мониторинга.80

73. Рис. 36. Процедура электронных взаимодействий.85

74. Рис. 37. События потока работ.88

75. Рис. 38. Внутренние события потока работ.88

76. Рис. 39. Локальный и глобальный вектор событий.89

77. Рис. 40. Действия потока работ.90

78. Рис. 41. Простые действия потока работ.90

79. Рис. 42. Составные действия потока работ.90

80. Рис. 43. Поток работ и вложенный поток работ.92

81. Рис. 44. Состояния потока работ.93