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

Моделирование: методы, алгоритмы, технологии

УДК 004.7:004.422.8

Л.К. Птицына, Н.Г. Смирнов

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

По мере нарастания темпов конкуренции формируется стратегия ведения бизнеса, предусматривающая гибкое и оперативное реагирование на изменение рыночных условий и повышение требований заказчиков. Указанная стратегия реализуется посредством адаптации архитектуры гетерогенной сети к моделям бизнес-деятельности корпорации. В настоящее время сервис-ориентированная архитектура (Service Oriented Architecture - SOA) [1-6] признается в качестве приоритетного направления адаптации архитектуры корпоративных гетерогенных сетей к бизнес-процессам в целях обеспечения устойчивого конкурентного преимущества в сфере профессиональной деятельности. К корпоративным гетерогенным сетям относятся сложные крупномасштабные сети организаций (учреждений, предприятий, фирм), объединяющие территориально рассредоточенные разнотипные и согласованно функционирующие программные и аппаратные компоненты, созданные и действующие в соответствии с разнородными технологиями.

Сервис-ориентированная архитектура

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

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

Согласно [1, 3, 4] сервисам ставятся в соответствие следующие признаки:

1) мера связанности сервисов между собой и бизнесом отражается зависимостями в отношениях между предметом автоматизации и логикой;

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

3)внутренняя логика сервисов изолируется от окружающей среды;

4) сервисами допускается композиция, которая может оформляться в виде сервиса следующего уровня;

5) любой сервис может использоваться многократно;

6) каждый сервис должен являться самоуправляемым и обнаруживаемым;

7) нейтральность сервиса по отношению к обращающимся модулям должна обеспечиваться отсутствием собственного состояния.

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

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

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

В настоящее время ведущие позиции среди сервисов, соответствующих концепции SOA, занимаются web-сервисами (web-службами). Подобная ситуация объясняется тем, что любой web-сервис идентифицируется строкой URI и является программной системой с общедоступными интерфейсами, определяемыми на языке XML.

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

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

языка XHTML, представляющего собой интеграцию языка XML и языка разметки гипертекста HTML (Hypertext Markup Language);

языка запросов к данным, структурированным в виде XML, XQL (XML Query Language);

языка описания структуры XML документа XSD (XML Schema Definition), разработанного для создания в памяти объектов, соответствующих структуре XML документов.

В качестве транспортного протокола для web-служб используется широко распространенный протокол передачи гипертекстовых документов НТТР (HyperText Transfer Protocol). Обмен сообщениями регламентируется простым протоколом доступа к объектам SOAP (Simple Object Access Protocol), который может использоваться с любым протоколом прикладного уровня. Формат сообщений, используемые протоколы и адрес, по которому находятся сервисы, регламентируется спецификацией языка описания сервисов WSDL

(Web Services Description Language). Стандартом для индексирования web-сервисов является спецификация универсального описания, обнаружения и интеграции UDDI (Universal Description Discovery & Integration). В систему стандартов SOA для реализации совместной работы служб вводится спецификация языка исполнения бизнес-процессов BPEL (Business Process Execution Language).

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

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

Формирование моделей интеграции сервис-ориентированных средств

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

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

При сопоставлении спецификаций языка BPEL и языка унифицированного моделирования UML 2.0 (Unified Modeling Language) выясняется, что на разработку каждого из них существенное влияние оказала нотация моделирования бизнес-процессов BPMN (Business Process Modeling Notation). В связи с этим в качестве основы для расширения выбирается система элементов моделирования деятельности языка UML 2.0, тем более, что расширяемость позиционируется в качестве одного из его ключевых свойств.

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

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

Узлами управления являются начальный узел, узел решения, узел слияния, узел разделения, узел соединения, узел финала деятельности и потока.

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

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

Группа элементов, именуемая специальные действия, предусматривается для случаев моделирования различного поведения. К указанной группе относятся элементы создания и разрушения объектов и связей, чтения и записи переменных, передачи сигнала, приема события.

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

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

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

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

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

щ (к / X к / =1 2 ..., к/

К

2 Щ

к

где к, - дискретное время выполнения /-го дей-

ствия; К. - верхняя граница дискретного времени выполнения /-го действия; г - номер некоторого действия; I - общее число действий.

Плотность вероятности щ(к.), к. = 1, 2, ..., К{ может определяться посредством импорта результатов работы системы мониторинга в инфраструктуре гетерогенной сети либо путем анализа конечной цепи Маркова, марковского или полумарковского процесса, основные этапы которого раскрываются в [8]. Последние два пути определения плотности вероятности ориентируются на те случаи, когда рассматриваемое действие описывается в дискретном пространстве состояний, соответствующих множеству происходящих событий.

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

Плотность вероятности указывается внутри графического элемента узла действия.

Вводимые расширения относятся и к потоку управления. На дугах, исходящих из каждого узла решения, указываются Pjl, ] = 1, 2, ..., 3; I = 1, 2, ..., Lj вероятности выбора альтернативных вариантов поведения в ходе деятельности, которые удовлетворяют условию полной группы несовместных событий:

ч

£Р),1 = 1, j = 1, 2, ..., 3,

I=1

где ]' - номер узла решения; Lj - число альтернативных вариантов поведения после решения _/; 3 - число узлов решения.

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

1. Позиционирование вида деятельности в среде SOA.

2. Выделение множества действий D (^|=1) в деятельности сервис-ориентированных средств.

3. Описание каждого действия ё/, г = 0, 1, 2, ..., I плотностью вероятности щ(к.), к. = 1, 2, ..., К/, удовлетворяющей условию (1).

4. Формирование потока управления из узлов координации действий сервис-ориентированных средств.

5. Описание каждого альтернативного варианта всех узлов решения соответствующей веро-

ятностью ру,1,= 1, 2, ..., 3; I = 1, 2, ..., Lj с обязательным выполнением условия (2). Указанные вероятности могут определяться с помощью считывания соответствующих результатов работы системы мониторинга или оценки вероятности событий, происходящих при выполнении действий в деятельности сервис-ориентированных средств. Если любой из указанных путей определения считается неприемлемым, то вероятности альтернативного выбора считаются варьируемыми параметрами, принимающими случайные значения на интервале [0,1] при выполнении условия (2).

6. Формирование матрицы инциденций для узлов разъединения и узлов соединения A размера (пхп), где п - общее число узлов разъединения и узлов соединения; а. j = 0, если узлы не связаны через узлы действий; а/, j = 1, если _/-му узлу предшествуют узлы действий, следующие в последовательности узлов после /-го узла; а/, j = -1, если узлы действий, предшествующие /-му узлу, следуют после j-го узла.

7. Описание спецификаций всех узлов соединений, характеризующих взаимодействие сервис-ориентированных средств.

При вариации содержания выполняемых операций представленных шагов образуется многовариантный набор моделей интеграции сервис-ориентированных средств.

Показатели качества совместной работы служб и методы их оценки

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

В соответствии с концепцией SOA принимается гипотеза о взаимной независимости времени выполнения действий в деятельности.

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

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

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

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

тах к

0,1, ...,

и(к0, 1, ..., т) = 2 и(к0, 1, ..., (т-1)) Х

тт к

0,1, ...,

хит (к0, 1, ..., т - к0, 1, ..., (т-1)Х к0, 1, ..., т = тт(к0 + к1 + ... + кт X ...,

тах(к0 + к1 +... + кт), т = 0,1, ..., М,, и(к0) =

где к0 1 т - дискретное время выполнения последовательности т действий; и(к0 1 ... т) -плотность вероятности времени выполнения последовательности (т+1) действий.

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

ч

и(к1, 2, ..., I, ..., ь,)=2 рии1 (к1);

; 1=1

к1, 2, ..., 1, ..., Ь, = ттк1, ..., тахк1;

, 1 1

1 = 1,2, ..., Ь,,

где и(к1 2 I ь ) - плотность вероятности

к1 2 1 ь времени выполнения Ь, альтернативных действий.

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

4. Представление спецификаций узлов соединений модели интеграции сервис-ориентированных средств в базисе функций л(#), v(N), «М из Ш, где N - степень параллельности, М - число выполненных действий, по окончании которых завершается соединение параллельных действий.

5. Выделение в модели групп узлов параллельных действий, замена каждой группы новым узлом укрупненного действия с определением эквивалентной характеристики в виде плотности вероятности времени его выполнения по формулам (5), (6), если соединение осуществляется согласно булевой функции л^), или по формулам (7), (8), если узел соединения описывается булевой функцией v(N), или по формулам (9), (10), (11), (12), если соединение проводится в соответствии с функцией «М из

N к1,2, ..., п, ..., N

ил(к1, 2, ..., п, ..., N) = П( 2 ип (кп )) -

п=1 кп =1

N к1,

2, ..., п, ..., N

1

-П( 2 ип (кп)),

п=1 кп =1

к1, 2, ..., п, ..., N =

= тах(тт кьтт к2, ..., тт кп, ...,т1п kN), ...,

п

, . ., тах(тахк1,тахк2, ...,тахкп, ...,тахkN), п

uv (к1, 2, ..., п, ..., N ) =

N к1,2, ..., п, ..., N-1

=П (1 - 2 ипОкп)) -

п=1 кп =1

N к1,2, ..., п, ..., N

-П (1 - 2 ип {кп)),

п=1 кп =1

к1, 2, ..., п, ..., N =

= тт

, .., тт(тах к^тах к2, ...,тах кп, ...,тах kN),

п

иМN (к1, 2, ..., п, ..., N ) = = иМN (к1, 2, ..., п, ..., N ) --иМ,N (к1, 2, ..., п, ..., N -1),

^1,2, ..., п, ..., N

иМ ,N

г=1

при М = N,

4

к

-1,2, ..., п, ..., N

где

иМ,N

г=1

при М = 1,

иМ, N (к1, 2, ..., п, ..., N ) = = N, М, N, к-, 2, ..., п, ..., N ) при 1< М < N

С(М,М,1МО,к1 2,...,я,.... к0) =

\ 2, ..., и.....ЛГ

X Му (г), если М =1;

г=1

2, ..., и,

X мл (г)>если М

г=1

^Ш^и,...,«.....

2.....„, ...,ЛГ) +

+(1-£//А(Ч 2, ...,п, ...,#))* хв(М-1,М,1МО-\,к1 2, ..., в> ..., дг)>

если М < Ы",

к1,2, ..., п, ..., N

иМЮ (к1, 2, ..., п, ..., N ) = £ иШЮ (г),

г=1

ШЮ = 1, 2, ..., N ;

к 2 п N - время выполнения параллельных действий; иЛ (к 2 п N) - плотность вероятности времени выполнения параллельных действий при соединении согласно булевой функции л(N); иV (к1 2 п N) - плотность вероятности времени выполнения параллельных действий при соединении согласно булевой функции v(N); "м N (к 2 ... п ... N) - плотность вероятности времени выполнения параллельных действий при соединении согласно функции «М из Ш; иМ,N(к1, 2, ..., п, ..., N) - функция распределения времени выполнения параллельных действий при соединении согласно функции ««М из

6. Формированиепоследовательностиузлов укрупненных действий и определение и (ко 1 I I) плотности вероятности времени выполнения деятельности согласно соотношению (3).

7. Определение показателей качества совместной работы служб:

Е[к0,1, ..., г, ..., I] =

тах к

-0,1, ..., г, ..., I

£ к0, 1, ..., г, ..., 1и(к0, 1, ..., г, ..., I ^

ттк

0,1, ..., г, ..., I

Ю[ко, 1, ..., г, ..., I ] =

тах к

-0,1, ..., г, ..., I

£ (к0, 1, ..., г, ..., I -

тт к

0,1, ..., г, ..., I

- Е[к0, 1, ..., г, ..., I]) и(к0, 1, ..., г, ..., I),

= 1 -

Я(к0, 1, ..., г, ..., I > С) = С £

и (к0,

1, ..., г, ...,I

тт кп

"-0,1, ..., г, ..., I

где С - верхняя граница допустимого времени выполнения деятельности; Щк0 1 г / ], Юк 1 г I] - соответственно математическое ожидание и дисперсия времени выполнения деятельности в среде сервис-ориентированной архитектуры; Я(к0 1 ^ I > С) - риск срыва временного регламента.

Для подтверждения корректности определения показателей качества совместной работы служб целесообразно воспользоваться модифицированным методом свертки, раскрытым в [8].

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

Каждый из определенных выше показателей может включаться в представительное множество критериев качества совместной работы служб SOA, формируемых на основе теории исследования операций [9].

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

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

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

На рис. 1 приводится модель сервисной деятельности в случае, когда запрос клиента может выполняться одним из L сервис-ориентированных средств, развернутых на серверах с различными характеристиками производительности и сконфигурированных в среде исполнения крупногранулярных процессов. В рассматриваемой модели действие 0 ассоциируется с инициализацией сервисной деятельности, последующие L действий - с альтернативным выполнением сервисов, а завершающее (L+1) действие - с сохранением статуса транзакции и тарификацией. Клиентской стороной ставится цель выполнения сервисной деятельности и получения информации относительно ее качества, а администратором гетерогенной сети - балансировка нагрузки сервисного обслуживания. В соответствии с предложенным методом математическое ожидание, дисперсия времени реализации сервисной деятельности и риск срыва временного регламента определяются с помощью следующих соотношений:

L

u(k1, 2, ..., l, ..., L) = 2plul(k^ (16) l=1

k1, 2, ..., l, ..., L = minkl, maxkl; l =1 2 L ; l l

u(k0, 1, 2, ..., l, ..., L ) =

K

K0

= 2u0(k0)u(k0, 1, 2, ..., l, ..., L -k0),

k0

k0, 1, ..., l = min(k0 + k1, 2, ..., lX ..., ,..., max(k0 + ¿1, 2, ..., l), l = 1,..., L;

u (k0, 1, ..., l, ..., L,(L+1)) =

max k0,1, ..., l, ..., L

= 2 u

min ¿0,1, ..., l, ..., l

*u(L+1)(k0, 1, ..., l, ..., L, (L +1) - k0, 1, ..., l, ..., LX

k0, 1, ..., l, ..., L, (L +1) = = min(k0 + k1 + ... + kl + ... + kL + k( l+1)X ..., , ..., max(k) + ¿1 +... + kl +... + kL + k( l+1));

E[k0, 1, ..., l, ..., L, (L +1)] =

max k0,1, ..., l, ..., L,

= 2 k0, 1, ..., l, ..., L,

mink0,1, ..., l, ..., L,

*u(k0, 1, ..., l, ..., L, (L+1));

ß[k0, 1, ..., l, ..., L, (L+1)] =

max k0,1, ..., l, ..., L,

2 (k0,1,..., l,..., L, (L+1) -

mink0,1, ..., l, ..., L,

2 (20) -E[k0, 1, ..., l, ..., L, (L+1)]) *

*u (k0, 1, ..., l, ..., L, (L +1));

Ä(k0, 1, ..., l, ..., L, (L +1) > C) =

C

=1 - 2 u (k0, 1, ..., l, ..., L, (L+1)).

mink0,1, ..., l, ..., L,

В среде автоматизированной разработки программных проектов NetBeans 6.5 при реализации совместной работы служб на языке BPEL анализируемый процесс представляется в виде, представленном на рис. 2.

На рис. 3 изображена модель сервисной деятельности в случае, когда, для выполнения запроса клиента требуется реализация нескольких сервис-ориентированных средств, допускающих параллельную работу служб, которым соответствует N действий. Действия 0 и (N+1) рассматриваются в той же интерпретации, как и в модели на рис. 1.

На практике параллельная работа служб именуется реализацией партнерских сервисов. При вариации функциональной спецификации узла соединения образуется ряд типовых профилей интеграции сервис-ориентированных средств, среди которых базовыми являются варианты, описываемые функциями a(N), v(N) , «M из N». Первые два из указанных профилей являются частными случаями третьего варианта: функция a(N) соответствует функции «M из N» при M = N, а функции v(N) - «Mиз N» приM = 1.

Если для успешного выполнения исследуемой деятельности требуется информация от всех параллельно реализуемых партнерских сервисов, то спецификация соединения описывается булевой функцией a(N) . В подобной ситуации партнер-

4

Рис. 1. Типовая модель альтернативных действий

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

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

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

Рис. 2. Типовая модель альтернативных действий на языке BPEL

Рис. 3. Типовая модель параллельных действий

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

При описании узла соединения спецификацией л(N) математическое ожидание, дисперсия времени совместной работы служб и риск срыва регламента определяются соответственно соотношениями (5), (6), (22)-(26):

и (к0, 1, 2, ..., п,

к

= 2 и0 (к0 )ил (к0,

1, 2,

, N ) =

, п, ..., N - Ы

к

к0, 1, ..., п = т1п(к0 + к1 + .. + кпX ..., , ...,тах(к0 + к1 +... + кп), п = 0, 1, ..., N;

и (к0, 1, ..., п, ..., N, (N+1)) =

тах к

0, 1, ..., п, ..., N

2 и

™п к0, 1, ..., п, ..., N

х(к0, 1, ..., п, ..., N, (N+1) - к0, 1, ..., п, ..., NX

к0, 1, ..., п, ..., N, (N+1) = = тт(к0 + к1 +... + кп +... + kN + к( N+\^),...

, ..., тах(к0 + к1 +... + кп +... + ^ + к( ^^+1));

Е[ к0, 1, ..., п,..., N,(N+1)] =

тах к.

0,1, ..., п, ..., N,

2

тт кп

<0, 1, ..., п, ..., N,

10,1, ..., п, ..., N,

хи (к0, 1, ..., п, ..., N, (N+1)); Дк0, 1, ..., п, ..., N, (N+1)] =

тах к0,1, ..., п, ..., N,

2

тт к.

0,1, ..., п, ..., N,

2

- Е[к0, 1, ..., п, ..., N, (N+1)]) х

хи (к0, 1, ..., п, ..., N, (N+1));

Жк0, 1, ..., п, ..., N,

С

= 1 - 2 и (к0, 1, ..., п, ..., N, (N+1)).

т1п к0,1, ..., п, ..., N,

Если узел соединения характеризуется функцией v( N), то числовые характеристики времени совместной работы служб и риск срыва регламента находятся с помощью выражений (7), (8), (27), (23)-(26):

и(к0, 1, 2, ..., п, ..., N ) =

К

2 и0 (к0 (к0,

1, 2, ..., п, ..., N ~ Л0

к

0

4

Partnern...

И

nyOperation

Рис. 4. Типовая модель параллельных действий на языке BPEL

к0, 1, ..., п = тт(к0 + к +... + кп), ..., , ..., тах(к0 + к +... + кп), п = 0, 1, ..., N.

Когда спецификация узла соединения представляется функцией «М из М», тогда статистические показатели времени совместной работы служб и риск срыва регламента вычисляются по формулам (9)-(12), (28), (23)-(26):

u(ko

1, 2,

, N

) =

Ко

= £ u0(k0)uM, N (k0, 1, 2,

kn

, N

ко, 1, ..., п = т1п(к0 + к +... + кп), ..., , ...,тах(к0 + к +... + кп), п = 0, 1, ..., N.

При реализации совместной работы служб на языке ВРЕЬ в среде NetBeans 6.5 последние три типовых варианта крупно-гранулярных процессов формируются согласно схеме на рис. 4.

В результате развития технологических основ создания программных продуктов:

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

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

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

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

СПИСОК ЛИТЕРАТУРЫ

- ko),

1. Леснова, Л. Сервис-ориентированная архитектура: подход IBM [Текст] / Л. Леснова // Connect! Мир связи. -2008. -№ 3. -С. 104-105.

2. Черняк, Л. Загадка SOA [Текст] / Л. Черняк // Открытые системы. -2007. -№ 7. -С. 18-25.

3. Thomas, Erl. Service-Oriented Architecture (SOA): Concepts, Technology, and Design [Text] / Erl. Thomas. -Prentice Hall, 2005. -760 р.

4. Фейгин, Д. Концепция SOA [Текст] / Д. Фейгин // Открытые системы. -2004. -№ 6. -С. 14-18.

5. Дубова, Н. SOA: подходы к реализации [Текст] / Н. Дубова // Открытые системы. -2004. -№ 6. -С. 19-25.

6. Дубова, Н. Репетиция оркестра web-сервисов

[Текст] / Н. Дубова // Открытые системы. -2004. -№ 11. -С. 30-36.

7. Леоненков, А.В. Самоучитель UML 2 [Текст] / А.В. Леоненков. -СПб.: БХВ-Петербург, 2007. - 576 с.

8. Птицына, Л.К. Программное обеспечение компьютерных сетей. Моделирование механизмов синхронизации параллельных вычислительных процессов в системах мониторинга и управления: Учеб. пособие [Текст] / Л.К. Птицына, Н.В. Соколова. -СПб.: Изд-во Политехн. ун-та, 2010. -213 с.

9. Катулев, А.Н. Исследование операций: принципы принятия решений и обеспечение безопасности [Текст] / А.Н. Катулев, Н.А. Северцев. -М.: Физматлит, 2000. -320 с.