Лабораторный практикум по дисциплине «Автоматизированные информационные системы в производстве»
Изучение методологии BPMN на примере программного продукта RunaWFE: Лабораторный практикум по дисциплине “Автоматизированные информационные системы в производстве”/ Уфимск. гос. авиац. техн. ун-т; Сост: Г.Г. Куликов, А.Г. Михеев, М. В. Орлов, Р.К. Габбасов, Д.В. Антонов.
Рассматриваются основные элементы и правила нотации BPMN, а также содержатся основные сведения, необходимые для работы с RunaWFE. Приводится порядок выполнения лабораторного практикума.
Предназначен для студентов старших курсов, обучающихся по направлениям подготовки 080801 – «Прикладная информатика (в экономике)» и 230102 – «Автоматизированные системы обработки информации и управления»
Введение
BPMS — Business Process Management System/Suite — системы управления бизнес-процессами.
Одним из способов организации управления бизнес-процессами в компании является использование BPMS. Целями использования таких систем являются повышение качества исполнения бизнес-процессов, сокращение временных затрат, получение возможности контроля деятельности для повышения качества управления, а также непрерывное совершенствование внутренних бизнес-процессов c возможностью их изменения "на лету".
BPMS предназначена для автоматизации бизнес-процессов, но автоматизация бизнес-процессов не является основной целью внедрения системы. С внедрением BPM-системы у компании появляется инструмент для управления бизнес-процессами, что позволяет повысить исполнительскую дисциплину, заставить компанию работать по установленным правилам и непрерывно совершенствовать бизнес-процессы. Бизнес-процессы, без должного управления и контроля, склонны терять свою эффективность.
BPM System в обязательном порядке включает моделирование бизнес-процессов, их исполнение (process engine, процессный “движок”) и мониторинг/анализ. Опционально может включать имитационное моделирование, движок бизнес-правил и многое другое, но в этом случае она уже является BPM Suite.
Одной из информационных технологий реализации является RunaWFE - информационная система управления бизнес-процессами, позволяющая построить эффективное взаимодействие сотрудников компании и контролировать их деятельность с целью повышения качества работы всей компании с помощью ресурсов локальной вычислительной сети организации. То есть система RunaWFE реализует концепцию BPM, что позволяет строить гибкие адаптивные информационные системы, способные оперативно меняться вместе с изменением бизнес-процессов компании.
Система RunaWFE является свободным программным продуктом с открытым кодом. Ее дистрибутивы и исходный код можно скачать через интернет с сайта разработчиков свободного программного обеспечения sourceforge по адресу http://sourceforge.net/projects/runawfe/files. Систему можно свободно установить на любое количество компьютеров без каких-либо ограничений.
Лабораторная работа №1. Ознакомление с интерфейсом системы RunaWFE
Цель работы
Целью работы является ознакомление с интерфейсом и средствами разработчика и пользователя системы RunaWFE.
Теоретические сведения
RunaWFE - свободная, масштабируемая, ориентированная на конечного пользователя система проектирования управления бизнес-процессами предприятия и административными регламентами при их реализации.
Основная задача системы: проектировать модели бизнес-процессов, раздавать задания исполнителям и контролировать их выполнение. Последовательность заданий определяется графом бизнес-процесса, который менеджер или бизнес-аналитик может быстро изменять при помощи редактора бизнес-процессов.
При помощи переменных бизнес-процесса в системе происходит передача информации между исполнителями заданий. В случае хранения документов в переменных бизнес-процесса, систему можно использовать для автоматизации документооборота предприятия.
Система RunaWFE состоит из серверной и клиентской частей.
Компоненты, относящиеся к серверной части системы, это:
- RunaWFE – сервер;
- Бот-станция.
Серверная часть системы может быть установлена на уже существующий аппаратный сервер. Платформой, на которой разворачивается RunaWFE-сервер является сервер JBoss. Пример состава программного обеспечения на сервере показан на рисунке 1.1.

На одном сервере может располагаться несколько серверных сетевых приложений. Во избежание конфликтов на уровне сетевого адаптера каждому из приложений присваивается один или несколько портов. В результате сетевой адрес этих приложений выглядит так: IP-адрес:порт. Например, чтобы обратиться к веб-интерфейсу сервера JBoss нужно будет в поле адреса набрать http://192.168.0.1:8080. По умолчанию большинство браузеров (IE, Mozilla Firefox, Opera, Google Chrome и др.) обращаются на порт 80.
Компоненты, относящиеся к клиентской части системы:
- Клиент (web-интерфейс);
- Клиент-оповещатель о поступивших заданиях;
- Графический редактор бизнес-процессов;
- Симулятор бизнес-процессов.
Взаимодействие между клиентской и серверной частями системы производится посредством локальной вычислительной сети, как показано на рисунке 1.2.

При помощи Web-интерфейса системы пользователь может:
- Получать, фильтровать, выполнять задачи, генерируемые экземплярами бизнес-процессов;
- Запускать новые экземпляры бизнес-процессов;
- Просматривать состояния выполняющихся экземпляров бизнес-процессов;
- Загружать файлы-архивы, содержащие определения бизнес-процессов в систему.
При помощи web-интерфейса системы администратор может:
- Создавать-удалять пользователей и группы пользователей;
- Включать (исключать) пользователей в группы;
- Раздавать права на объекты системы пользователям и группам пользователей;
- Принудительно останавливать экземпляры бизнес-процессов.
При помощи графического редактора бизнес-процессов аналитик может разрабатывать бизнес-процессы и экспортировать их в файлы-архивы в файловую систему.
Основные возможности системы:
- Работа с определениями и экземплярами бизнес-процессов;
- Работа со списками заданий;
- Визуализация форм, соответствующих заданиям;
- Работа с системой через web-интерфейс;
- Предоставление возможности работы с системой приложениям специального вида (ботам);
- Авторизация и аутентификация пользователей.
Возможности графического редактора:
- Редактирование графа бизнес-процесса;
- Создание и редактирование графических форм заданий;
- Создание и назначение ролей;
- Создание переменных.
Порядок выполнения работы
1.3.1 Создание и редактирование пользователей и групп
Для начала запустите сервер JBoss, для этого дважды кликните по ярлыку «Start Simulation» на рабочем столе. Запустится сервер JBoss (рис 1.1).

Через минуту дважды кликните на ярлыке «Simulation Web Interface». Откроется окно браузера (рис 1.2).

В поле «Пользователь» введите Administrator, а в поле «Пароль» - wf и нажмите кнопку «Войти». Перед Вами откроется интерфейс администратора сервера RunaWFE (рис 1.3).

Перейдите к списку исполнителей кликнув по надписи «Исполнители» в левой части экрана.
Откроется список исполнителей (рис 1.4)

Создайте группу пользователей «Users». Для этого кликните «Создать группу», Откроется интерфейс создания группы (рис 1.5).

В поле «Имя» введите слово «Users», и добавьте какое-нибудь описание этой группы, после чего нажмите кнопку «Применить».
Далее перейдите на вкладку «Система», кликнув по надписи «Система» в нижней части меню. Откроется интерфейс «Обладатели полномочий» (рис 1.6).

Добавьте созданную Вами группу в этот список. Для этого кликните по надписи «Добавить». Откроется список (рис 1.7), в котором найдите группу «Users». Установите напротив этой группы галку и нажмите «Добавить».

Теперь необходимо выдать группе некоторые полномочия. Для этого кликните по надписи «Система», напротив группы «Users» поставьте галки в столбцах: «Читать», «Входить», «Загружать определение процесса», как показано на рисунке, и нажмите кнопку «Применить».

Далее создайте учетные записи пользователей «Студент» и «Преподаватель».
Для создания учетной записи «Преподаватель» откройте интерфейс «Исполнители» и кликните по надписи «Создать пользователя». Откроется форма для ввода данных пользователя. В поле «Имя» введите «Преподаватель», в поле «Код» введите любой код, например 12, остальные поля заполнять необязательно.

По окончании заполнения форм нажмите кнопку «Применить».
Для дополнительной правки учетной записи откройте меню «Исполнители». Найдите исполнителя «Преподаватель» и кликните по нему. Откроется интерфейс редактирования учетной записи (рис 1.10).

Графа «Свойства исполнителя» является стандартным для учетной записи пользователя, в нем содержится базовое описание пользователя.
В графе «Статус» устанавливается статус пользователя («Активен» или «Не активен»). Его изменяют в случае если сотрудник появляется на рабочем месте, либо не может на нем появиться в силу каких-либо обстоятельств.
В графе «Пароль» введите пароль для пользователя «Преподаватель», знать старый пароль пользователя при этом не требуется. Затем нажмите «Применить». В графе «Группы пользователя» кликните надпись «Добавить» и в открывшемся списке поставьте галку напротив группы «Users», после чего нажмите кнопку «Добавить».
Настройка учетной записи «Преподаватель» завершена.
Аналогичным образом создайте и настройте учетную запись «Студент».
1.3.2 Разработка модели процесса сдачи лабораторной работы
Дважды кликните по ярлыку «Process Designer». Загрузится оболочка редактора бизнес-процессов.

Создайте новый проект. Для этого в поле «Проводник» кликните правой кнопкой мыши и выберите в выпадающем списке «Новый проект».
В появившемся окне (рис 1.12) введите имя своего проекта и нажмите «Готово».

Кликните правой кнопкой мыши по значку Вашего проекта в проводнике. В выпадающем списке выберите «Новый процесс».
В появившемся окне (рис 1.13) введите имя процесса, в поле «Нотация» выберите «bpmn» и нажмите «Готово».

На палитре выберите элемент «Начало» и нанесите его на схему. Далее выберите элемент «Узел-действие». Разместите элементы на схеме как показано на рис 1.14.

Выберите элемент «Окончание» и добавьте его на схему, как показано на рис 1.15

Далее соедините компоненты схемы при помощи элемента «Переход», как показано на рисунке 1.16

Чтобы переименовать «Узел-действие» необходимо дважды по нему кликнуть и ввести текст.
Переименуйте узлы-действия как показано на рис 1.17 ниже.

Теперь необходимо задать роли каждому узлу. Для этого перейдите на вкладку «Роли», как показано на рисунке 1.18.

На вкладке «Роли» нажмите кнопку «Создать», как показано на рисунке 1.19

Появится окно создания новой роли, в поле «Название» напишите «Преподаватель-Роль» и нажмите кнопку «OK».

Далее на вкладке Роли нажмите кнопку «Изменить». В появившемся окне перейдите на вкладку «Группы и пользователи WF».

Кликните по ссылке «Настройки соединения». Появится окно настроек соединения с сервером (рис 1.22).

В поле URL сервера введите: jnp://127.0.0.1:1099, режим аутентификации выберите «По логину и паролю». В поле «Логин» введите Administrator, в поле «Пароль» – wf.
Нажмите кнопку «Проверить соединение» и, в случае успешной проверки, нажмите «Синхронизация», после чего нажмите «Готово».
Далее кликните по надписи «пользователь», потом по появившейся ссылке «Выбрать». В появившемся окне (рис 1.23) выберите пользователя «Преподаватель» и нажмите кнопку «OK».
Нажмите кнопку «OK» в поле «Редактирование инициализатора роли».
Аналогичным образом создайте роль «Студент-Роль».
В основном окне перейдите на вкладку «Граф».
Кликните правой кнопкой мыши на элемент «Начало», расположенный на схеме.

В выпадающем списке (рис 1.24) выберите «Роли» и «Преподаватель».
Аналогичным образом присвойте роли остальным блокам так, чтобы на первых двух блоках роль принадлежала учетной записи «Студент», а на остальных «Преподаватель» (рис 1.25).

Далее кликните правой кнопкой мыши на элемент «Начало», расположенный на схеме. В выпадающем списке (рис 1.26) выберите элемент «Форма» и «Проверка переменных формы».

В появившемся окне (рис 1.27) нажмите «Да».

В появившемся окне (рис 1.28) нажмите кнопку «Готово».

Повторите данную операцию для остальных элементов, кроме элемента «Окончание».
1.3.3 Создание форм для элементов.
Для того, чтобы создать форму кликните правой кнопкой мыши на элементе «Начало», в выпадающем списке (рис 1.29) и выберите «Форма» и «Создать форму».

В появившемся окне (рис 1.30) выберите тип @HTML форма + freemarker теги» и нажмите кнопку OK.

Откроется окно HTML редактора (рис 1.31). Напишите в нем «Выдать задание на лабораторную работу».

Закройте окно HTML редактора кликнув крестик в верхней части экрана (рис 1.32)

Система предложит Вам сохранить изменения (рис 1.33), нажмите Да.

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

1.3.4 Экспорт процесса
Экспортируйте процесс в *.par файл. Для этого нажмите кнопку «Экспорт процессов» (рис 1.35) в верхней части экрана.

Откроется окно «Экспорт архива» (рис 1.36), нажмите кнопку «Обзор…»

В появившемся окне «Сохранить как» (рис 1.37) выберите путь сохранения и имя файла, после чего нажмите кнопку «Сохранить» и кнопку «Готово» в предыдущем окне.

1.3.5 Загрузка процесса на сервер
На рабочем столе откройте ярлык «Simulation Web Interface» и войдите в систему под логином «Преподаватель».
В меню кликните по надписи «Определения процессов», в открывшейся странице кликните по надписи «Загрузить определение процесса».
На открывшейся странице (рис 1.38) в качестве типа процесса выберите «Script». Затем нажмите кнопку «Выберите фай»л и в появившемся окне укажите созданный вами архив, после чего нажмите кнопку «Выполнить».

1.3.6 Проигрывание загруженного процесса
На открывшейся странице выберите определение процесса, которое Вы загрузили.

Процесс запустится после того, как на странице стартовой формы (рис 1.40) Вы нажмете кнопку «Запустить».

Запустите еще одно окно обозревателя и перейдите по адресу http://localhost:8080/wfe/. Войдите в систему под учетной записью студента.
У Вас появилась задача «Получить задание на лабораторную работу», щелкнув по ней вы можете изучить форму задания и выполнить его. Выполните все задания для учетной записи «Студент», после чего авторизуйтесь в системе под учетной записью «Преподаватель» и выполните все задания для учетной записи «Преподаватель».
1.4. Требования к содержанию и оформлению отчета
В результате выполнения лабораторной работы должен быть сформирован отчет.
В отчете должны содержаться следующие выходные данные:
1) Цель
2) Все созданные модели с пояснение и описанием
3) Скриншоты всех основных действий, совершенных в процессе выполнения задания с пояснениями
4) Список пользователей(ролей) с описанием их полномочий
5) Список использованных переменных в виде даталогической модели
6) Результаты исполнения
7) Выводы
1.5. Контрольные вопросы
-
- Что такое BPM?
- В чем отличие BPM от BPMN?
- Из каких компонентов состоит RunaWFE?
- Что такое Web-интерфейс?
- Какие вкладки содержит учетная запись Администратора на сервере?
- Что такое роль? Какими они бывают?
- Что такое форма?
Лабораторная работа №2. Построение Процесса сдачи лабораторной работы
Цель работы
Целью работы является освоение простейших приемов выполнения функций с элементами нотации BPMN, поддерживаемых конструктором процессов системы RunaWFE.
Теоретические сведения
В Workflow-системе деятельность организации представляется в виде множества взаимосвязанных бизнес-процессов. Бизнес-процесс – это упорядоченный по времени набор заданий, выполняемых как людьми, так и информационными системами предприятия, направленный на достижение заранее заданной бизнес цели за известное время.
Бизнес-процесс можно представить в виде математического графа – набора вершин, называемых «узлами-действиями» и «маршрутными узлами», соединенных между собой возможными переходами. По этим переходам перемещаются точки исполнения (управления). При переходе точки исполнения (управления) в конкретный узел-действие соответствующему исполнителю направляется задание.
Порядок выполнения работы
Откройте Редактор процессов. Приведите построенную вами ранее схему к схеме, указанной на рис 2.5.
Обратите внимание на разницу между элементами, обозначающими Разделение и Слияние, а также, что один из элементов имеет таймер (рис 2.1)

Элемент с таймером делается следующим образом: Кликните по элементу правой кнопкой мыши и в выпадающем списке выберите Добавить таймер.
Значение таймера задается в свойствах элемента (рис 2.2).
Имена переходов также задаются в их свойствах.
Для редактирования элемента Ветвление необходимо иметь в системе хотя бы одну переменную. Для этого перейдите на вкладку Переменные в нижней части экрана.

Нажмите кнопку Создать, в появившемся окне введите наименование кнопки, например Оценка_Отчета, в качестве формата укажите StringFormat.
Далее вернитесь на вкладку Граф и кликните правой кнопкой мыши по верхнему элементу Ветвление, откроется окно редактора Bean Shell (рис 2.4).


Напротив каждого из путей выберите переменную Оценка_Отчета и соответствующее для данного пути значение этой переменной.
Аналогично редактируется и второй элемент ветвления, только в качестве пути по умолчанию укажите Хорошо (рис 2.6).

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

Используя элемент Кнопка выбора приведите форму к виду, указанному на рисунке выше.
При размещении этого элемента на форме появляется окно его настроек (рис 2.8).

В качестве имени выберите Оценка_Отчета. В поле Значение введите Хорошо для одной кнопки и Плохо для другой.
Аналогичным образом создайте и приведите к следующему виду (рис 2.9) форму элемента Принять решение.

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

Аналогичную операцию произведите с формой Принять решение.
Далее, пользуясь знаниями, полученными на предыдущем занятии экспортируйте Ваш проект в архив и загрузите этот архив на сервер. Затем запустите процесс на выполнение и проиграйте его.
2.4. Требования к содержанию и оформлению отчета
В результате выполнения лабораторной работы должен быть сформирован отчет.
В отчете должны содержаться следующие выходные данные:
1) Цель;
2) Все созданные модели с пояснение и описанием;
3) Скриншоты всех основных действий, совершенных в процессе выполнения задания с пояснениями;
4) Список пользователей(ролей) с описанием их полномочий;
5) Список использованных переменных в виде даталогической модели;
6) Результаты исполнения;
7) Выводы;
2.5. Контрольные вопросы
- Какие компоненты нотации BPMN используются в RunaWFE?
- Что такое валидация?
- Какие компоненты можно поместить на форму?
- Где можно просмотреть ход исполнения модели?
Список литературы
- Документация RunaWFE [официальный сайт проекта]. URL: http://runawfe.ru/rus/Документация.