780 likes | 1.13k Views
Интеллектуализация процессов обработки потоков данных, лекция 6. БГУ РФиЭ Кафедра Интеллектуальных Систем Адуцкевич Иван Анатольевич. Intalio | BPM. Что такое Intalio|BPM.
E N D
Интеллектуализация процессов обработки потоков данных, лекция 6 БГУ РФиЭ Кафедра Интеллектуальных Систем Адуцкевич Иван Анатольевич
Что такое Intalio|BPM • Intalio|BPM это BPMS решение, основанное на философии открытого кода и промышленных стандартах охватывания схожих задачв сфере текущей задачи.
Внешняя среда Intalio|BPM Intalio|Server Intalio|Designer Intalio|Workflow Intalio|BRE Intalio|ESB Intalio|BAM Intalio|ECM Intalio|Portal
Компоненты ядра • Позволяет бизнес-аналитикам представить процесс графически • Позволяет IT инженерам наглядно связать технические детали и процесс моделирования • Создает код • Имитация Process Designer • Запускает процесс как конструктор • Управляет взаимодействием с другими системами и людьми • Отслеживает процесс исполнения Process Server • Менеджер задач • Безопасность: регистрация и идентификация • Графический интерфейс Workflow Suite
Компоненты ядра Intalio|Designer BPMN Развертывание WSDL WSDL Взаимодействие Взаимодействие Intalio|Server DB BPEL Apache ODE WSDL Apache Axis Intalio|Workflow Системы Люди
Поддерживаемые стандарты • XML 1.1 • XML Namespaces 1.0 • XML Schema • XPath 1.0 / 2.0 • XQuery 1.0 • WSDL 1.1 • SOAP 1.1 SOAP 1.1 • WSAddressing • WSSecurity 1.1 • WSBasicProfile 1.1 • WSBasic Security Profile 1.1 • BPEL 2.0 • BPMN 1.2
Техника моделирования • В первую очередь прочтите описание процесса или перечень требований • Сначала выделите слова, которые могут обозначать Участников • Затем выделите глаголы; вероятнее всего они определят задачи для участников (Озаглавьте задание конструкцией глагол-существительное, например «запросить строку» или «подтвердить строку») • Подчеркните все Если и Когда – они задают выбор (Они будут обозначены шлюзами) • Произведя эти операции Вы можете сфокусироваться на том, что Вам нужно для создания модели BPMN и избавиться от лишней информации
Техника моделирования • Сначала создайте процесс с формами только для ЗАДАЧ • Пользуясь функцией «Поменять тип операции на» (“Change activity type to”) отобразите индивидуальные детали после того, как лучше разберётесь в процессе • Сфокусируйтесь на потоке главного процесса • Не тратьте время на обдумывание потока участников – это отвлекает от рассматривания ядра процесса Несмотря на несовершенство BPMN это самый быстрый способ зафиксировать процесс во время совместной сессии моделирования
Жизненный цикл BPMS, этапы и роли Постановка Моделирование Переключитесь на перспективу ‘Intalio|DesignerModeling‘
Требования к созданию процесса Сценарий: Работник крупной компании заполняет бланк заказа на новую продукцию и подтверждает его. Получив заказ процесс утвердит его. После утверждения заказ должен одобрить менеджер. По утверждении запроса заказ отправляется на выполнение. С завершением процесса менеджеру придет сообщение, информирующее его об успешной или неуспешной обработке заказа. Основываясь на вышеизложенном, смоделируем процесс «Подтверждение заказа» («OrderApproval»)
Требования к созданию процесса Сценарий: Работник крупной компании заполняет бланк заказа на новую продукцию и подтверждает его. Получив заказ процесс утвердит его. После утверждения заказ должен одобрить менеджер. По утверждении запроса заказ отправляется на выполнение. С завершением процесса менеджеру придет сообщение, информирующее его об успешной или неуспешной обработке заказа.
BPMN – Нотация моделирования бизнес процесса
Основные элементы BPMN • 3 типа обозначений: • События • Действия • Переходы • 3 типа связей: • Последовательный переход • Передача сообщения • Ассоциация • Два способа группировки: • По объему • По номеру • 2 артефакта: • Данные • Комментарии Name Annotation
Упражнение – под-процесс Сценарий: Работник крупной компании заполняет бланк заказа на новую продукцию и подтверждает его. Получив заказ процесс утвердит его. После утверждения заказ должен одобрить менеджер. Внимание: менеджер может обнаружить неточности с заказе. Человек, подавший бланк, должен просмотреть его и исправить. По утверждении запроса заказ отправляется на выполнение. С завершением процесса менеджеру придет сообщение, информирующее его об успешной или неуспешной обработке заказа. Действия и функции для под-процессов будут добавлены позднее
Шлюзы: прохождение процесса через шлюзы
Шлюзы - обзор • Шлюзы используются для разделения и слияние процессов в один. • Четыре наиболее распространенных типа шлюзов: • Взаимоисключающий • Композиционный • Распараллеливающий • Взаимоисключающий с событием • Если вы не уверены в выборе типа шлюза, используйте Взаимоисключающий
Условные переходы по-умолчанию • Взаимоисключающий (Exclusive) шлюз • (Aили B) иначе C • Композиционный (Inclusive) шлюз • ЕслиНЕ (Aи/или B)то C • Маршрут по-умолчанию выбирается только тогда, когда все остальные выбраны не были:
Распараллеливающий шлюз: Ветвление и слияние • A – первая задача, которая будет выполнена • B, D, E – задачи, которые будут выполнятся параллельно • F – будет выполнена после завершения процессов C, D, E
Ветвление при помощи шлюза: основы • Используются в процессах, которым часто необходимо одно из нескольких событий • В основе лежит распараллеливание Неявное Явное
Распараллеливающий шлюз: слияние • Неявная синхронизация: • Состояние не определено • Выполнение будет продолжено после прохождению какого-либо дочернего маршрута • Явная синхронизация: • Выполнение будет продолжено только после прохождения всех дочерних маршрутов Слияние и синхронизация
Композиционный шлюз: ветвление и слияние • Может быть запущено множество маршрутов • Задается отдельное условие для каждого маршрута • Композиционный шлюз похож на распараллеливание: • Слияние так же как и параллельных событий: • Синхронизация всех маршрутов • Ожидает прохождения только запущенных маршрутов
Процессы в под-процессе • Множество точек запуска в под-процессе подобно параллельному выполнению процессов.
Слияние маршрутов • Неправильно: • Тупик • Некорректно: • Отсутствует синхронизация • Правильно: • Работает так, как и ожидалось или
Условия: советы специалистов • Помещать «вопрос» рядом с фигурой, обозначающей шлюз • Каждая ветвь обозначает ответ на вопрос, поэтому их рекомендуется подписывать • Каждый маршрут может иметь или не иметь собственные события • Для маршрута по-умолчанию следует выбирать самый безопасный путь
Вложенные правила Условия могут быть вложены друг в друга Совет: Используйте вложенный процесс чтобы сделать картину более наглядной. Что следует добавить на обоих картинках?
События: обзор • Событиеэто что-то, что «случается» в течение бизнес-процесса. • События взаимодействуют с потоком процесса и обычно имеют причину (инициатор) и подразумевают какое-то действие (результат) • По типу влияния событий на поток выделяют три типа событий: • Начальное событие • Промежуточное событие • Завершающее событие • Эти события могут управлять потоком, а именно: запускать, приостанавливать и возобновлять, прерывать, перенаправлять и завершать поток.
События: обзор • Начальное событие рисуется одинарной тонкой линией • Промежуточное событиерисуется двойной тонкой линией • Завершающее событие рисуется одинарной толстой линией Каждый символ обозначает характерное действие и привносит свой особый смысл Символы обозначают конкретные события
События BPMN • Пустое начальное событие • Обозначает начало процесса без указания каких-либо характеристик • Пустое промежуточное событие • На диаграмме обозначает важные точки • Точка ключевого показателя эффективности (КПИ) • Пустое завершающее событие • Конец процесса
Завершающие события BPMN • Завершение • Завершение работы, включая все параллельные ветви процесса независимо от их состояния • «Выброс» ошибки • Производит «выброс» ошибки, который может быть «перехвачен» фоновым обработчиком ошибок • Откат действия/исправление • Запускает откат транзакции • Перехватывается другим процессом
BPMN – сообщения • Сообщение начала процесса • При получении сообщениязапускается процесс • Сообщение отправляется другим процессом • Сообщение завершения процесса • После отправки сообщения процесс завершается • Сообщение отправляется другому процессу
События по таймеру Помните, что событие по таймеру не является исполняемым событием Как реализовать периодический запуск процесса? • Начало процесса по таймеру • Процесс запускается через определенный интервал времени. • В определенный день • В начале месяца • Промежуточное событие по таймеру • Процесс будет ожидать истечения определенного времени перед продолжением • Ожидать конкретной даты • Ожидать некоторое время
События в под-процессе Под-процесс может иметь события начала и завершения Эти события скрыты и не влияют на процесс Повышают удобочитаемость процесса
Исключения • BPMN имеет гибкую систему контроля исключений • Исключения основаны на промежуточных событиях и происходят вне основного процесса • Когда обработчик ошибок связан с группой действий, он перехватывает исключения, возникающие в этой группе действий, прерывает выполнение основного потока и передает управление потоку обработки исключений • Можно добавить более одной задачи для обработки исключений от одной и той же группы действий
Перенаправление задач Автоматическое перенаправление похоже на план режима работы • Поток исключения может перенаправить задачу человеку или другой системе: • Если под-процесс не завершается: • До определенной даты/времени • По истечении определенного интервала времени
Тренировка – добавление события Мы добавим больше событий в этот процесс…
Шлюзы с событием • Возможен выбор только одного маршрута; выбор маршрута происходит согласно входящему сообщению • Могут быть использованы разные типы сообщения • Только один маршрут может быть активен; синхронизация (слияние) производится взаимоисключающим шлюзом
BPMN • Последовательность действий
BPMN • Простая, но наглядная семантика
От моделирования до воплощения • Процесс может быть запущен даже если полностью не доработан • Главная цель – завершение выполнения процесса вместе со всеми связанными с ним частями • Таким способом процесс может быть проверен, смоделирован и реализован без привлечения рабочей силы.