Введение
В настоящее время коммерческие продукты класса систем имитационного моделирования бизнес-процессов, представленные на рынке (AnyLogic, ARIS, G2), являются Desktop-приложениями. При разработке сложных имитационных моделей в команде дополнительными требованиями к системам имитационного моделирования (СИМ) выступают следующие: поддержка многопользовательского режима, доступ к модели через сеть Интернет, проведение экспериментов через сеть Интернет.
Сравнительный анализ систем (таблица 1) показал, что наибольшей функциональностью СИМ бизнес-процессов (БП) обладают продукты AnyLogic, BPsim. В направлении сервисно-ориентированной архитектуры развивается только G2 с технологией Telewindows. За основу динамической модели бизнес-процесса SaaS-сервиса ИМ была взята мультиагентная модель процесса преобразования ресурсов [1-2, 4]. Таким образом, актуальной является задача анализа организации вычислений SaaS-сервиса ИМ.
Таблица 1. Сравнительный анализ СИМ БП
№ |
Параметр |
ARIS |
G2 |
AnyLogic |
BPsim |
1 |
Проектирование концептуальной модели предметной области |
НЕТ |
НЕТ |
НЕТ |
+ |
2 |
Язык описания бизнес-процессов |
|
|
|
|
2.1 |
- Описание ресурсов, средств, преобразователей |
+ |
+ |
+ |
+ |
2.2 |
- Иерархическая модель БП |
+ |
+ |
+ |
+ |
3 |
Мультиагентная модель |
НЕТ |
НЕТ |
+ |
+ |
4 |
Имитационное моделирование |
+ |
+ |
+ |
+ |
5 |
Экспертное моделирование |
НЕТ |
+ |
НЕТ |
+ |
6 |
Организация распределенной многопользовательской работы |
|
|
|
|
6.1 |
Многопользовательский режим |
НЕТ |
+ |
+ |
+ |
6.2 |
Проведение экспериментов на сервере через сеть Интернет |
НЕТ |
+ |
НЕТ |
НЕТ |
6.3 |
Web-интерфейс СИМ |
НЕТ |
НЕТ |
НЕТ |
НЕТ |
6.4 |
Сервисно-ориентированная архитектура |
НЕТ |
+ |
НЕТ |
НЕТ |
6.5 |
Формирование html-страниц |
+ |
НЕТ |
НЕТ |
НЕТ |
6.6 |
Поддержка Java |
НЕТ |
+ |
+ |
НЕТ |
7 |
Ориентированность на непрограммирующего пользователя |
+ |
НЕТ |
НЕТ |
+ |
8 |
Стоимость, тыс. долларов |
50 |
70 |
13 |
7 |
Проведение анализа моделей организации и распределения вычислений систем имитационного моделирования
На данный момент технология SaaS (Software as a service) является наиболее удобной в использовании, оптимальной в плане производительности и требований ресурсов от клиентской части приложения (со стороны конечного пользователя системы, в нашем случае это аналитик и/или лицо, принимающее решения).
RunTheModel.com
На рынке СИМ есть несколько ведущих продуктов, но для широкого круга потребителей известна одна наиболее удобная в обращении программа AnyLogic. Работает эта система на виртуальной машине Java. Пользователь может установить пакет AnyLogic к себе на компьютер и пользоваться им напрямую, либо через браузер (предварительно выгрузив модель в виде java-аплета). Первое решение уже давно используют практически все, стандартный способ использования программ, второй уже более интересный (так как не требует наличия на машине у пользователя самой СИМ). Но в данном случае это не является SaaS-решением, так как требуется установить на стороне клиента необходимый Java-плагин, и только после этого мы сможем произвести необходимые расчеты, при этом требуются ресурсы компьютера пользователя. Это главное отличие от SaaS-решения.
В последней версии системы AnyLogic [9] появился следующий функционал:
- возможность размещать модели пользователя на Интернет-ресурсе [7] RunTheModel.com. На данном портале пользователи могут размещать модель, загружать к себе на компьютер, проигрывать у себя на компьютере и обсуждать на портале с коллегами. Функция размещения на портале доступна непосредственно из AnyLogic;
- компиляция в среде исполнения Java-аплета.
На рис. 1 показано, как происходит работа пользователя при работе с подобным Интернет-ресурсом. Java-машина в данном случае должна быть предустановленна на клиентской машине, и Java-машина производит все вычисления именно на стороне клиента, что также не является оптимальным решением (в случае слабой вычислительной мощности клиентской машины и маленького объема оперативной памяти).
Рис. 1. Порядок работы в случае использования Java-машины и сервера с моделями
Сервер в данном случае выступает хранилищем Интернет-ресурса и решает задачу организации коллективной работы с копией модели (аплетом).
G2 Telewindows
G2 - динамическая экспертная система, содержащая встроенный движок имитационного моделирования ReThink. Версия программы G2 Telewindows [8] предлагает пользователю возможности удаленного рабочего стола при работе с G2-приложением, когда пользователь ставит на своей стороне необходимую программу, после чего она соединяется с сервером, и там производятся вычисления (рис. 2).
Рис. 2. Организация вычислений на основе G2 Telewindows
В версиях G2 (7.0 и выше) имеется возможность реализации компонентов в виде элементов управления ActiveX, которые позволяют разрабатывать web-интерфейсы для использования и администрирования G2-приложений [8].
Явные плюсы - это защищенный канал передачи данных, но главный минус - необходимость устанавливать дополнительное программное обеспечение клиенту. G2 Telewindows реализован на основе клиент-серверной технологии.
Предлагаемый подход к организации SaaS ИМ
Облачные вычисления (cloud computing) [3, 6] - это модель обеспечения повсеместного и удобного сетевого доступа по требованию к общему пулу конфигурируемых вычислительных ресурсов, которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами и/или обращениями к провайдеру [3, 6].
SaaS предлагает нам программное обеспечение, как сервис. То есть от клиента требуется только вводить начальные данные, после этого они посылаются на сервер, он их принимает и запускает всю обработку данных у себя, таким образом, клиент не тратит свои ресурсы, что является оптимальным с точки зрения производительности. Схема работы SaaS-сервиса имитационного моделирования представлена на рис. 3.
Рис. 3. Организация вычислений SaaS имитационного моделирования
Несмотря на внешнюю схожесть рис. 2 и 3 технологические отличия заключаются в следующем:
- SaaS-сервер ИМ БП выставляет минимальные требования к клиентской машине - наличие Интернет-браузера, вариант с G2 требует предустановленного G2, G2 Telewindows, что в свою очередь требует определенных вычислительных ресурсов;
- применение G2 Telewindows позволяет на клиенте наблюдать за проведением эксперимента в том виде, как бы он проходил на сервере, а при реализации SaaS-сервера ИМ БП, с целью минимизации обмена трафика ответ сервера будет содержать окончательные результаты эксперимента с минимумом анимации в процессе эксперимента.
Разработка SaaS-сервиса имитационного моделирования
За основу сервиса имитационного моделирования взята трехуровневая архитектура, состоящая из следующих элементов: клиентской части, агента мониторинга, сервера имитационного моделирования, базы данных сервера имитационного моделирования [4].
Выбор средств реализации: SaaS-сервис имитационного моделирования должен полностью использовать веб-технологии. Таким образом, мы имеем 3 уровня взаимодействия. Первый уровень - это клиент. Здесь мы используем стандартные для браузера технологии html для верстки того, что видит пользователь (отображение), css для того, чтобы все выглядело структурно и красиво и, конечно, один из главных компонентов, описывающих поведение страницы, ее реакции - язык Javascript, который также участвует в динамическом формировании контента. Главная особенность - использование SVG компонентов для отрисовки узлов и линий их соединяющих.
На стороне сервера использовался язык программирования ruby и соответственно платформа Ruby on Rails. Главная задача - соединить существующий движок имитационного программирования Bpsim с существующим веб-приложением. Интерфейсом послужил обмен jSon-файлами. Клиент в браузере создает имитационную модель, наполняет ее данными и после этого отправляет серверу, сервер принимает сообщение и выкладывает эти данные движку BPsim, тот их считывает, обрабатывает и выдает результат также в виде jSon файла, сервер этот файл отправляет клиенту и клиент строит графики и выдает необходимую статистику.
Заключение
Полученные данные в ходе этой работы позволили провести анализ организации распределенной работы с системами имитационного моделирования бизнес-процессов (таких как AnyLogic и G2) и выделить требования к новой системе, ориентированной на работу в сети Интернет, построенной на основе ядра системы BPsim. Был проведен сравнительный анализ существующих систем моделирования с точки зрения ориентации на работу в сети Интернет. Проведена разработка прототипа SaaS-сервиса имитационного моделирования бизнес-процессов.
Рецензенты:
- Шабунин Сергей Николаевич, д.т.н., профессор кафедры Высокочастотных средств радиосвязи и телевидения, ФГАОУ ВПО "Уральский федеральный университет им. первого Президента России Б. Н. Ельцина", г. Екатеринбург.
- Доросинский Леонид Григорьевич, д.т.н., профессор, заведующий кафедрой Информационных технологий, ФГАОУ ВПО "Уральский федеральный университет им. первого Президента России Б. Н. Ельцина", г. Екатеринбург.