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

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

Автореферат диссертации по теме "Моделирование и разработка сервис-ориентированных приложений"

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

Аунг Ауиг Хейн

МОДЕЛИРОВАНИЕ И РАЗРАБОТКА СЕРВИС-ОРИЕНТИРОВАННЫХ

ПРИЛОЖЕНИЙ

05.13.11 - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Автор:

1 ^ мар т

Москва-2013

005050535

Работа выполнена в Национальном исследовательском ядерном университете «МИФИ»

Научный руководитель: доктор технических наук, профессор

Щукин Борис Алексеевич

Официальные оппоненты: Торхов Валерий Леонидович

доктор технических наук, профессор, председатель правления ОАО АКБ «Авангард», член комитета Ассоциации Российских Банков по информационным и интернет технологиям

Шевчук Сергей Сергеевич кандидат технических наук, главный специалист департамента информационных технологий ОАО «Ингосстрах»

Ведущая организация: Федеральное государственное бюджетное

образовательное учреждение Московский Государственный Индустриальный

Университет (МГИУ)

Защита состоится «06» марта 2013 г. в 15 час. 00 мин. на заседании диссертационного совета Д.212.130.03 при Национальном исследовательском ядерном университете «МИФИ», расположенном по адресу: 115409, г. Москва, Каширское шоссе, 31.

С диссертацией можно ознакомиться в библиотеке Национального исследовательского ядерного университета «МИФИ». :' Автореферат разослан «05> февраля 2013 г.

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

Ученый секретарь диссертационного совета д.т.н., доцент

Леонова М.Н.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ Актуальность темы. В последнее время становится популярной покомпонентная сборка приложений на базе сервис-ориентированной архитектуры (SOA, Service-Oriented Architecture). Концепция SOA основана на том, что бизнес-приложение состоит из большого количества компонентов. Каждый такой компонент представляет собой сервис, являющийся модулем системы SOA. Использование сервис-ориентированного подхода позволяет крупному предприятию получить преимущества при дальнейшем развитии своей 1Т-инфраструктуры.

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

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

Построение информационных систем на базе веб-сервисов привело к понятию архитектуры, ориентированной на веб-сервисы (Web Services Architecture - WSA), разновидности сервис-ориентированной архитектуры. В диссертации исследуются вопросы разработки и моделирования веб-сервисов, используемых в рамках WSA, поэтому в дальнейшем под словом «сервис» понимается именно веб-сервис.

з

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

Следует отметить работы К. Бохана и М. Худолея, посвященные построению моделей корпоративных приложений на базе иерархических сетей Петри, работы А. Martens, R. Hamadi, В. Benatallah, P. Xiong, Y. Fan, M. Zhou, связанные с моделями композитных сервисов, и множество других.

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

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

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

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

Методами исследований диссертационной работы являются методы теории сетей Петри.

Научная новизна диссертации заключается в следующем: • Разработаны модели веб-сервисов и их композиций на базе простых и

раскрашенных сетей Петри

• Разработаны модели статического и динамического обращения к сервису.

• Предложен и продемонстрирован метод разработки веб-сервисов «сверху-вниз», в процессе которого сначала разрабатывается синтаксическое описание сервиса, а затем выполняется кодирование его методов.

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

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

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

Основные положения, выносимые на защиту

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

• Модели веб-сервисов и мобильных приложений, построенных с их использованием.

Апробация работы. Основные результаты диссертации докладывались и обсуждались на:

• XIX международном научно-техническом семинаре «Современные технологии в задачах управления, автоматизации и обработки информации». Алушта, 2010

• XIV международной телекоммуникационной конференции студентов и молодых ученых «Молодежь и наука». Научная сессия НИЯУ МИФИ-2011

• VIII Курчатовской молодежной научной школе, Москва, 2011 г

• XX международном научно-техническом семинаре «Современные технологии в задачах управления, автоматизации и обработки информации». Алушта, 2011

Внедрение результатов исследований

Работа по теме диссертации велась в сотрудничестве с сервисным центром компании БПЦ (www.bpc.ru). Методы и модели, представленные в диссертации, использованы при разработке:

1. Системы моделирования процессов . инкассации банкоматов, выполненной в виде композиции 4 веб-сервисов и использованной в качестве прототипа при разработке промышленного варианта;

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

Публикации

По теме диссертации опубликовано 7 печатных работ в период с 2010 по 2012 г, в том числе 3 в российских периодических изданиях, рекомендованных ВАК, тезисы 4 докладов включены в сборники трудов научно-технических конференций. Основные положения диссертационной работы отражены в опубликованных соискателем результатах. Структура и объем диссертации

Диссертация состоит из введения, четырех глав, заключения и списка литературы и приложений. Общий объем основного текста, без учета приложений — 120 страниц, с учетом приложений — 150. Диссертация содержит 62 рисунка, 4 таблицы и 34 листинга программного кода. Список литературы включает 63 источника.

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении обоснована актуальность темы диссертации, её научная новизна и практическая значимость, сформулирована цель работы.

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

Веб-сервис - это программный модуль, идентифицируемый с помощью URI (Unified Resource Identifier), внешние интерфейсы и связи которого определены и описаны с помощью XML. Другие программные системы должны иметь возможность находить описания сервисов. Эти программные системы могут взаимодействовать с веб-сервисом в стиле, определенном в его описании, используя XML-сообщения, передаваемые по некоторому интернет протоколу. Отсюда видно, что технология веб-сервисов базируется на

6

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

Существуют два вида архитектуры - базовая и расширенная, они отличаются набором операций. Базовая архитектура веб-сервисов предполагает наличие, по крайней мере, трех организаций: провайдера сервиса, регистра сервисов, обеспечивающего регистрацию и средства поиска сервисов, и клиента, запрашивающего сервис. Базовая архитектура (Basic Architecture) включает следующие технологические операции:

• обмен сообщениями

• описание веб-сервисов

• публикация и поиск описаний веб-сервисов.

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

• XML (Расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных)

• SOAP (Протокол обмена сообщениями на базе XML)

• WSDL (Язык описания веб-сервисов)

• UDDI (Универсальный интерфейс распознавания, описания и интеграции)

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

Базовым протоколом, обеспечивающим взаимодействие в среде веб-сервисов, является протокол SOAP (Simple Object Access Protocol). Протокол SOAP — это основанный на языке XML стандарт для обмена сообщениями в распределенных средах (WWW). Он предназначен для удаленного вызова методов. SOAP можно использовать с разными транспортными протоколами, включая HTTP, SMTP.

Интерфейс для доступа к веб-сервису описывается на языке описания WSDL (Web Services Description Language) основанном на XML, и содержит всю информацию, необходимую для доступа к данному сервису. С точки зрения WSDL-документа веб-сервис представляет собой коллекцию портов, которые, в свою очередь, являются коллекцией абстрактных операций и сообщений. Абстракция операций и сообщений позволяет связывать их с различными протоколами и форматами данных типа SOAP, HTTP GET/POST или MIME.

UDDI - это каталог веб-сервисов, доступный через Интернет.

В рамках концепции семантического веб'а W3C ввел понятие «семантического веб-сервиса». Семантический веб-сервис строится на базе стандартного веб-сервиса, над которым строится семантическое описание.

Суть семантического описания сервиса состоит в том, что синтаксические элементы, определяемые в WSDL описании сервиса, привязываются к терминам глобального информационного ресурса, так называемой онтологии предметной области. Эта привязка сводится к определению входов/выходов сервиса в терминах онтологии, определению предусловий выполнения сервиса и эффектов от его выполнения. Одному семантическому описанию может соответствовать несколько синтаксических описаний, программный код для которых, в свою очередь, может быть реализован в нескольких вариантах, с использованием разных языков программирования и рыполняться На разных платформах. Даже определение входов/выходов сервиса в терминах онтологии, при условии, что онтология принимается как потребителями, так и производителями сервиса, существенно упрощает и уточняет поиск сервисов. Более того, в перспективе можно говорить о вызове сервиса не только по адресу (URL), но и по его семантическому описанию.

Для разработки веб-сервисов созданы специальные среды. При использовании этих сред обычно предполагается, что процесс создания сервиса начинается с разработки программного кода, по которому автоматически генерируется интерфейс сервиса в виде WSDL-описания. Этот подход к разработке веб-сервисов очень популярен, но перспективность его вызывает сомнения. Более перспективен подход к созданию сервисов, который начинается с разработки и утверждения его интерфейса, который, в соответствии с рекомендацией W3C, представляется в виде WSDL документа. К такому подходу подталкивает и перспектива разработки веб-сервисов как

8

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

Кроме «простых» сервисов, методы которых не используют обращения к другим сервисам, широкое применение находят и композитные сервисы, которые при исполнении могут обращаться, причем неоднократно, к другим сервисам. Разработка композитных сервисов может проводиться непосредственно на языках типа Java, С# или с использованием специальных языков, ориентированных на композицию.

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

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

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

9

информацию мониторинга, производит соединение по конкретному URL.

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

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

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

/" Л Psoapjn БОАР-запрос

to - t„- Аутентификация

Pin ( f^/no 1 • • • tP Г /по 1 Разбор 50АР-запроса и выбор операции

Opl Opn Операции

t4o Utojf^ (J^-i- t"oufo Формирование ответа

Сбой Sp Pbag J^ Pout Ответ

tout toutx* Формирование SOAP-ответа

Psoap_out { J SO АР-ответ

Рис. 1 Общая модель веб-сервиса в виде сети Петри-Маркова

Подсеть {pSoap_m; L ta) - моделирует конфликтную ситуацию при аутентификации. Требуется задать вероятность срабатывания перехода 4- BepftJ и вероятность срабатывания перехода ta-Bep(Q. При этом BepftJ + BepftJ = I.

Подсеть {р,„; ?........ Л„о } - моделирует ситуацию выбора операции. При каждом

обращении к сервису выполняется только одна операция. Требуется задать вероятность срабатывания перехода i¡„„-Bep(¿,„0), при этом X Bep(íino) = 1.

В языке семантического описания веб-сервиса ОШ,-8 введено понятие атомарного процесса, соответствующего операции \VSDL. В соответствии с СШЬ-Б, модель процесса задается четверкой вида <1, О, Р, Е>, I - вход процесса, О - выход процесса, Ри£ -предусловия и эффекты. Р — предусловие выполнения процесса - логическое выражение, отражающее условия, накладываемые на состояние объектов предметной области, при соблюдении которых выполнение процесса будет успешным. Е - эффект выполнения процесса - логическое выражение, связывающее входы процесса с изменением состояния объектов предметной области в результате успешного выполнения процесса. В соответствии с этим представлением об атомарном процессе модель операции, выполненная в виде сети Петри-Маркова, выглядит следующим образом (рис. 2):

Рис. 2 Модель операции веб-сервиса в виде сети Петри-Маркова

Подсеть {р0 ¡п, ¡р, (/,} - моделирует конфликтную ситуацию при анализе предусловий. Операция выполняется штатным образом, то есть получается правильный выход и корректные изменения в предметной области (например, правильное списание средств со счета), если предусловия операции выполнены. Требуется задать вероятность срабатывания перехода 1Р - Вер(1р) и вероятность срабатывания перехода 1Р - Вер(1р). При этом Вер(1р) + Вер(1р) = 1.

Подсеть {рг; и, /г} - моделирует конфликтную ситуацию, возникающую при отработке эффектов. Переход и срабатывает при неудачной попытке изменения внешней базы данных. При этом, Вер(1е) + Вер(и) = 1.

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

11

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

Рис. 3 Последовательный вызов операций веб-сервисов

Проблема заключается в том, что даже сервисы, имеющие на выходе и входе семантически идентичные сообщения, могут применять различную синтаксическую разметку. Например, выходное сообщение сервиса WS_1 представлено с использованием элементов XML, а вход сервиса WS_2 требует той же самой информации, представленной с использованием атрибутов XML. В данном случае приходится программировать преобразование. Чтобы упростить программирование клиента, можно определить композитный веб-сервис с операцией 1_2 с входным сообщением Mes_l и выходным сообщением Mes_2 (рис. 4).

Рис. 4 Вызов композитного веб-сервиса

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

12

>',. ЬаГИ

working off effects

11)111 111111 «ü.

WS-lOpJ ЩжГ 1 J 1 ч d

input (PlT-

w

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

: : . 4: S; Вероятность

|м„ц,о 0 0, 0 0, 0) 0.19|

Kto, 1 1 1, о 0, 0) 0. 2l|

К (0,1 0 1,1 0, 0) 0.12|

Из (0,1 0 0,1 1,0) 0.19|

|м4 (0, о 0, 0, 0, 0,1) 0.18

М5(0, 1 1 0, 0 1,0) 0.11|

Рис. 6 Вероятность маркировки

Рис. 7 Граф достижимости маркировки

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

Рис. 8 Статическое связывание клиента и веб-сервиса

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

Рис. 9 Модель взаимодействия без непосредственного связывания с веб-сервисом

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

установлению связи с веб-сервисом. Модель этого варианта взаимодействия представлена на рис. 10.

input (5 ... . output (resuit); action (#2 "

Рис. 10 Модель взаимодействия путем возвращения URL

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

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

Jobs Management Model Cjstlnfo SetStatus

Places

Job Admin (office.)

start - Status "Started to perform job" done - Status "Job completed" fail - Status "Job not completed"

1Л1 - inputs erf operations О -Output of operation

T1/T2 -¿nalyze SMS messages T3/T4- - Transmit SOAP Messages TT< -Start job T6 - Complete job

Get!nfo/SetStatus - Operations of web service

Not«: Places and Transactions in blue color representee or.nflict situations.

-,'h"; Transactions in black represent the ■ formation and analysis of SOAP messages

employee (out J cfficej

Рис. 11 Одноцветная модель взаимодействия мобильного приложения и веб-сервиса

На рис. 12 показано общее представление иерархической многоцветной модели взаимодействия мобильного приложения и веб-сервиса. В иерархических элементах модели (Employee, Mobile, GPRS, Web Service) детально рассматривается функциональность взаимодействующих компонентов моделируемой системы и передаваемые данные между ними.

Был разработан и отмоделирован простейший протокол взаимодействия мобильного приложения и веб-сервиса: если сообщение не было получено во время, отведенное для ожидания ответа, то посылается повторный запрос к веб-сервису. В реальной системе сообщения довольно часто теряются в канале GPRS. Анализировалась надежность взаимодействия при разном количестве повторных запросов и разных временах ожидания ответа. Для получения статистических результатов моделирования использован монитор, определяемый пользователем (User-defined monitors), который является более гибким по сравнению со стандартными мониторами CPN Tools, но требует дополнительного программирования. На рис.13 и 14 представлены примеры оформления результатов моделирования в виде столбиковых диаграмм.

job Management Model Mobile Application employee GSM/GPRS Network web Service SetStatus Getlnfo

1 ' ("<job><id>29</i<Jxtype>l</typ9></job>","+71234567892")++ 1* i"<job><id>30</id><tYp9>l</type></job>","+71234567592")++ l'("<Job><id>31</i(i><type>l</typ0X/jci5>,V'+7I334567892")++

.......i><id>29</id>«point> 11:19:02 PM«/point»</jDb>","+71234567692")++

.><id>30</'id><cancel/></job>","+71234567892")++ 14 office","+71234567892")++

l'( s'V+71122334451")

-j \ v^failed___H|

~R3P /W^V 1'("29'V'0S:19:02 PM","123" "A456", 4. jobs Ш "Moscow")<3>94 4--job

19:02 PM","123"."A456","MOSC : 19:02 PM","123'VB456","Mosc 3l"."12:00:00 PM","lll","C4S6","Moscaw")

Рис. 12 Многоцветная модель взаимодействия мобильного приложения и веб-сервиса

Transaction occuring (Timer 10 sec)

1 \

F I I т. шш

Time (sec) j 0-10 ! 11-20 | 21-30 ; 31-40 j 41-50 ; 8 TianjToum i i 3 % 3 i

I s Lost Count j 1 I 1 1 0 j 0

Рис. Гистограмма количества транзакций и Рис. 14 Гистограмма количества транзакций и

потери (таймер 5 сек) потери (таймер 10 сек)

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

В работе над диссертацией анализировались две платформы для создания веб-сервисов. Платформа J2EE (Java 2 Enterprise Edition) позволяет создавать веб-сервисы на основе Java-приложений (Java класс, EJB компонент) для любых архитектур и операционных систем. Платформа Microsoft .NET

позволяет создавать веб-сервисы с помощью таких языков программирования как Visual Basic и С# на ASP.NET технологии. Анализ показывает, что J2EE является единственной платформой, действительно позволяющей создавать веб-сервисы для любых операционных систем, в то как Microsoft еще только создает интерпретатор CLR (Common Language Runtime) для выполнения своего промежуточного кода на операционных системах, отличных от Windows.

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

• Создать приложение, реализующее функциональность веб-сервиса;

• Развернуть приложение на сервере и протестировать его;

• Сгенерировать WSDL описание веб-сервиса;

• Выполнить семантическое аннотирование веб-сервиса (необязательно);

• Создать клиентское приложение для доступа к веб-сервису.

Данный подход не конструктивен, когда разрабатываются крупные

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

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

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

• Определение \VSDL описания веб-сервиса:

• Генерация скелета программного кода;

• Создание программного кода, реализующего функциональность веб-сервиса;

• Развертывание приложения на сервере;

• Семантическое аннотирование веб-сервиса (необязательно);

• Создание клиентского приложения для доступа к веб-сервису.

Используя подход «сверху-вниз», получается ясный, четко

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

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

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

Разработка системы моделирования процесса инкассации осуществляется по походу «сверху-вниз». Разработанная система выполняется в виде композиции 4 веб-сервисов:

• Оепега1еКэдиез1и'8 - веб-сервис для генерации потока запросов на выдачу наличности;

• PrognosisManagementWS - веб-сервис для формирования потока инкассации и оценки эффективности работы банкомата при заданном потоке;

• Рк^поз15\\'8 - веб-сервис отработки потока запросов текущей инкассации;

• OptimizeResultWS - веб-сервис определения оптимальной политики инкассации.

Реализация веб-сервисов для системы прогнозирования инкассации выполнена с использованием языка программирования Java. При реализации веб-сервисов в качестве средства разработки использовано средство NetBeans IDE, которое предоставляют возможность генерации «скелета» программного кода по существующему WSDL описанию. В данной разработке веб-сервис для формирования потока инкассации является композитным. С целью тестирования функционального взаимодействия между программными компонентами, развернутыми на различных платформах, в данной разработке реализовано клиентское приложение на языке С# на платформе .NET с помощью программного средства Microsoft Visual Studio 2008.

Разработка системы оперативного управления заданиями сотрудников сервисного центра компании БПЦ происходила в условиях, когда база данных центра уже несколько лет находилась в условиях промышленной эксплуатации. Задача заключалась в том, чтобы создать мобильное приложение, взаимодействующее с этой базой через специальный веб-сервис. Сотрудники центра, работающие в «полевых» условиях, должны взаимодействовать с этой базой через мобильное приложение по каналам GPRS, используя этот веб-сервис. Так как информационное окружение, в котором должен функционировать сервис, четко определено, то при разработке веб-сервиса применялся подход «снизу вверх». Основными компонентами данной системы являются веб-сервис, выполняющий различные операции с офисной базой данных, и мобильное приложение. Основные программные компоненты были реализованы на базе технологии .NET с использованием средства Microsoft Visual Studio 2008. Веб-сервис разработан на языке С# на платформе .NET Framework 3.5, а программные модули мобильного приложения - на платформе .NET Compact Framework 3.5.

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

20

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

Листинг. 1 Формат SOAP-запроса

<?xml version="l.О" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schémas.xmlsoap.org/soap/envelope/"> <soap:Header>

<authenticationHeader xmlns="http://sc.bpc.ru">

<phoneNumber>string</phoneNumber> </authenticationHeader> </soap:Header> <soap:Body>

<getInfo xmlns-"http://sc.bpc.ru">

<jobID>int</jobID> </getInfo> </soap:Body> </soap : Envelope> _;________

При разработке веб-сервиса был реализован метод, который считывает идентификационную информацию запрашивающей стороны из этого SOAP-запроса и проверяет, разрешен ли этому пользователю вход в веб-сервис. Особенностью данного решения является то, что этот метод не является веб-методом (то есть он не декларирован в качестве операции WSDL) и, прежде всего, выполняет функцию аутентификации при вызове любого веб-метода данного веб-сервиса. Если запрашивающая сторона не зарегистрирована в базе офиса, то вызываемый веб-метод возвращает SOAP-ответ, содержащий сообщение о том, что доступ к веб-сервису запрещен, а в протокол нарушения правил доступа заносится запись о факте несанкционированного доступа. Пример данного сообщения представлен в листинге. 2, а формат записи о факте несанкционированного доступа — в листинге. 3.

Листинг. 2 Пример сообщения, которое содержится в SOАР-ответе

<error>

<message>Invalid user access to this Web service</message> <source>MobileWebService</source> </error>___

Листинг. 3 Формат записи о факте несанкционированного доступа

<unauthorizedAccess>

<date>yyyymmdd</date> <time>hhmmss</time> <phoneNumber>string</phoneNumber> </unauthorizedAccess>_

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

Отладка разработанного мобильного приложения проводилась на одном из существующих эмуляторов в комплекте средства разработки Windows Mobile 6 Software Development Kit, называемом Windows Mobile 6 Professional Emulator.

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

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

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

В приложении вынесен акт о внедрении, а также исходные коды, разработанные в ходе данной диссертационной работы.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

2. Рассмотрены вопросы построения композитных сервисов.

3. Разработаны модели статической и динамической композиции веб-сервисов.

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

5. Разработано приложение, выполненное на базе композиции веб-сервисов, на платформе J2EE по методу «сверху-вниз».

22

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

ОСНОВНЫЕ ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ Публикации в журналах, входящих в перечень ВАК:

1. Аунг Аунг Хейн, Щукин Б.А., «Моделирование сервис-ориентированного приложения с помощью раскрашенных сетей Петри», Естественные и технические науки, № 6,2011 г. Стр. 527-529.

2. Аунг Аунг Хейн, Щукин Б.А., «Моделирование сервис-ориентированного приложения на эмуляторе», Естественные и технические науки, № 6, 2011 г. Стр. 523-526.

3.Аунг Аунг Хейн, Щукин Б. А., «Обеспечение информационной безопасности при взаимодействии с веб-сервисом», Безопасность информационных технологий, №1,2012 г., С. 124-127.

Работы, опубликованные в сборниках трудов конференций:

4. Аунг Аунг Хейн, Климов В.В., «Задача связи сервис-ориентированного приложения и мобильного устройства». В сборнике докладов «VIII Курчатовская молодежная научная школа», Москва, 2011 г. Часть 3. С. 166-170.

5. Аунг Аунг Хейн, Щукин Б.А., «Веб-сервис для моделирования процесса инкассации», Труды XIX международного научно-технического семинара «Современные технологии в задачах управления, автоматизации и обработки информации». Алушта, 2010, стр. 251-252.

6. Аунг Аунг Хейн, «Разработка взаимодействия мобильного устройства и веб-сервиса», XIV международная телекоммуникационная конференция студентов и молодых ученых «Молодежь и наука». Научная сессия НИЯУ МИФИ-2011.

7. Аунг Аунг Хейн, Щукин Б.А., «Моделирование взаимодействия мобильного приложения и веб-сервиса», Труды XX международного научно-технического семинара «Современные технологии в задачах управления, автоматизации и обработки информации». Алушта, 2011, стр. 37-38.

Подписано в печать:

01.02.2013

Заказ № 8122 Тираж - 100 экз. Печать трафаретная. Типография «11-й ФОРМАТ» ИНН 7726330900 115230, Москва, Варшавское ш., 36 (499) 788-78-56 wvvw.autoreferat.ru

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

ИСПОЛЬЗУЕМЫЕ СОКРАЩЕНИЯ.

ВВЕДЕНИЕ.

1 ТЕХНОЛОГИИ ВЕБ-СЕРВИСОВ.

1.1 Концепции архитектуры, ориентированной на веб-сервисы.

1.2 Технологии веб-сервисов.

1.2.1 Архитектура веб-сервисов.

1.2.2 Стандарты технологии веб-сервисов.

1.3 Семантические веб-сервисы.

1.4 Языки описания композиций.

1.5 Веб-сервисы и вопросы безопасности.

1.6 Постановка задачи диссертации.

1.7 Выводы.

2 МОДЕЛИРОВАНИЕ СЕРВИС-ОРИЕНТИРОВАННЫХ ПРИЛОЖЕНИЙ.

2.1 Сети Петри.

2.1.1 Модель веб-сервиса.

2.1.2 Модель операции.

2.1.3 Модель композитного веб-сервиса.

2.2 Раскрашенные сети Петри.

2.2.1 Моделирование композиций веб-сервисов.

2.2.2 Взаимодействие без непосредственного связывания с веб-сервисом.

2.2.3 Методика моделирования сервис-ориентированных приложений.

2.3 Моделирование взаимодействия мобильного приложения с веб-сервисом.

2.3.1 Задача построения модели.

2.3.2 Модель мобильного приложения как сеть Петри.

2.3.3 Модель мобильного приложения как многоцветная сеть Петри.

2.4 Выводы.

3 СРЕДСТВА И МЕТОДЫ РАЗРАБОТКИ ВЕБ-СЕРВИСОВ.

3.1 Основные платформы для разработки веб-сервисов.

3.1.1 Платформа J2EE.

3.1.2 Платформа .NET.

3.1.3 Сравнительный анализ .NET и J2EE.

3.2 Разработка веб-сервисов по методу «снизу-вверх».

3.2.1 Создание приложения, реализующего функциональность веб-сервиса.

3.2.2 Развертывание и тестирование веб-сервиса на сервере.

3.2.3 Генерация WSDL описания веб-сервиса.

3.2.4 Формирование семантического описания сервиса.

3.2.5 Создание клиентского приложения для доступа к веб-сервису.

3.2.6 Преимущества и недостатки подхода «снизу вверх».

3.3 Разработка веб-сервисов по методу «сверху-вниз».

3.3.1 Состав WSDL документа.

3.3.2 Генерация программных компонентов по WSDL описанию.

3.3.3 Преимущества и недостатки подхода «сверху вниз».

3.4 Выводы.

4 РАЗРАБОТКА СЕРВИС-ОРИЕНТИРОВАННЫХ ПРИЛОЖЕНИЙ В ТЕХНОЛОГИИ .NET и Java.

4.1 Разработка системы прогнозирования инкассаций банкоматов.

4.1.1 Функциональные характеристики модулей.

4.1.2 Архитектура системы.

4.1.3 Определение WSDL описаний веб-сервисов.

4.1.4 Реализация веб-сервисов на технологии Java.

4.1.5 Вызов Java веб-сервисов из .NET клиента.

4.2 Разработка системы оперативного управления заданиями.

4.2.1 Общее описание разработанной системы.

4.2.2 Проектирование приложения.

4.2.3 Программная реализация.

4.2.4 Обеспечение безопасности разработанной системы.

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

4.3 Выводы.

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

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

SOA

Ориентация на компонентную сборку приложений if < > • , - ■ , J ■ г •J , і - * я *

Рис. В.1 Сервис-ориентированная архитектура предприятия

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

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

Построение информационных систем на базе веб-сервисов привело к понятию архитектуры, ориентированной на веб-сервисы (Web Services Architecture - WSA), разновидности сервис-ориентированной архитектуры. В диссертации исследуются вопросы разработки и моделирования веб-сервисов, используемых в рамках WSA, поэтому в дальнейшем под словом «сервис» понимается именно веб-сервис.

Повторное использование программных компонентов, реализованных в виде веб-сервисов, построение среды для их удобного связывания - основа архитектуры, ориентированной на веб-сервисы (WSA).

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

Построение среды для удобного связывания сервисов привело к созданию понятия сервисной шины предприятия.

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

Следует отметить работы [1] К. Бохана и М. Худолея, посвященные построению моделей корпоративных приложений на базе иерархических сетей Петри, работы [2] и [3] А. Martens, R. Hamadi, В. Benatallah, P. Xiong, Y. Fan, M. Zhou, связанные с моделями композитных сервисов, и множество других.

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

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

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

Для достижения поставленной цели диссертации было выполнено:

1. изучение состояния стандартизации веб-сервисов;

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

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

4. анализ основных платформ разработки J2EE и .NET.

Были решены следующие задачи:

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

2. Разработаны модели статической и динамической композиции сервисов;

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

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

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

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

1. Разработаны модели веб-сервисов и их композиций на базе простых и раскрашенных сетей Петри

2. Разработаны модели статического и динамического обращения к сервису.

3. Предложен и продемонстрирован метод разработки веб-сервисов «сверху-вниз», в процессе которого сначала разрабатывается синтаксическое описание сервиса, а затем выполняется кодирование его методов.

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

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

5. Модели веб-сервисов и мобильных приложений, построенных с их использованием.

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

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

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

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

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

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

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

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

11 сервисов.

Материалы диссертации опубликованы в 7 печатных работах, из них 3 статьи в журналах, включенных в перечень ВАК РФ [19-21], тезисы 4 докладов включены в сборники трудов научно-технических конференций [2225].

Диссертация состоит из введения, четырех глав, заключения и списка литературы и приложений. Общий объем основного текста, без учета приложений — 122 страницы, с учетом приложений — 152. Диссертация содержит 62 рисунка, 4 таблицы и 34 листинга программного кода. Список литературы включает 59 источников.

Заключение диссертация на тему "Моделирование и разработка сервис-ориентированных приложений"

4.3 Выводы

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

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

ЗАКЛЮЧЕНИЕ

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

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

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

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

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

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

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

Разработано два приложения с использованием технологии веб-сервисов с использованием языков программировав Java и С#. Первое приложение, выполненное на базе композиции веб-сервисов, использовалось в качестве прототипа при разработке подсистемы инкассации банкоматов системы SmartVista компании БПЦ. Второе приложение, выполненное в виде веб-сервиса и мобильных клиентов, разработано для сервисного центра компании БПЦ и внедрено в промышленную эксплуатацию для оперативного управления действиями сотрудников, работающих в «полевых» условиях. На второе приложение получен акт о внедрении.

Библиография Аунг Аунг Хейн, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Бохан K.JL, Худолей М.С. Модели корпоративных сервисов на основе иерархических сетей Петри, Электронный ресурс. Режим доступа: http://www.khai.edu/csp/nauchportal/Arhiv/REKS/2010/REKS610/Bokhan.pdf.

2. PengCheng Xiong, YuShun Fan, and MengChu Zhou. A Petri Net Approach to Analysis and Composition of Web Services, Fellow, IEEE Электронный ресурс. Режим доступа: http://www.cc.gatech.edu/~pxiong3/Papers/TSMCA2009.pdf.

3. Web Services Architecture Электронный ресурс. // W3C Working Group Note 11 February 2004. Режим доступа: http://www.w3.org/TR/ws-arch/, свободный. - Загл. с экрана. - Яз. англ.

4. Web Services Business Process Execution Language Version 2.0 Электронный ресурс. // OASIS Standard 11 April 2007. Режим доступа: http://docs.oasis-open.0rg/wsbpel/2.O/OS/wsbpel-v2.O-OS.pdf, свободный. - Загл. с экрана. - Яз. англ.

5. Web Services Choreography Description Language (WS-CDL), Version 1.0 Электронный ресурс. // W3C Candidate Recommendation 9 November 2005, -Режим доступа: http://www.w3.org/TR/ws-cdl-10/, свободный. Яз. англ.

6. Web Services Coordination (WS-Coordination) Version 1.2 Электронный ресурс. // OASIS Standard, 2 February 2009. Режим доступа: http://docs.oasis-open.org/ws-tx/wstx-wscoor-l.2-spec-os.pdf, свободный. - Яз. англ.

7. Ran Shupring, Canberra, Australia, A Model for Web Services Discovery with QoS, ACM SIGecom Exchanges, Volume 4, Issue 1. March 2003, p 1-10.

8. OWL-S: Semantic Markup for Web Services Электронный ресурс. // W3C Member Submission 22 November 2004. Режим доступа: http://www.w3.org/Submission/OWL-S/, свободный. - Загл. с экрана. - Яз. англ.

9. SOAP Version 1.2 Part 0 Электронный ресурс. // W3C Recommendation 27 April 2007. Режим доступа: http://www.w3.org/TR/soapl2-partO/, свободный. - Загл. с экрана. - Яз. англ.

10. Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language Электронный ресурс. // W3C Recommendation 26 June 2007. -Режим доступа: http://www.w3.org/TR/wsdl20/, свободный. Яз. англ.

11. The UDDI Technical White Paper Электронный ресурс. // OASIS,2003. -Режим доступа: http://www.uddi.org/pubs/IruUDDITechnicalWhitePaper.pdf , свободный. Яз. англ.

12. Рэй Э., Изучаем XML. Пер. с англ. - СПб.: Символ-Плюс, 2001. - 408 е., ил.

13. W3C XML Schema Definition Language (XSD) 1.1 Part 1: Structures Электронный ресурс. // W3C Recommendation 5 April 2012. Режим доступа: http://www.w3.org/TR/xmlschemall-l/. - Яз. англ.

14. Document Object Model (DOM) Level 3 Core Spécification Электронный ресурс. // W3C Recommendation 07 April 2004. Режим доступа: http://www.w3.org/Til/DOM-Level-3-Core/. - Яз. англ.

15. Simple API for XML (SAX) Электронный ресурс. Режим доступа: http://www.saxproject.org/.

16. Аунг Аунг Хейн, Щукин Б.А., «Моделирование сервис-ориентированного приложения с помощью раскрашенных сетей Петри», Естественные и технические науки, № 6, 2011 г. стр. 527-529.

17. Аунг Аунг Хейн, Щукин Б.А., «Моделирование сервис-ориентированного118