Автоматизація бізнес-процесів. Частина 2. Adaptive BPM

imageОтже, першої частини було розглянуто, які бувають бізнес-процеси за ступенем їх стійкості до змін, технічні концепції для реалізації конкретного типу БП, а також приклад логіки додавання/видалення тягаючи з адаптивної моделі БП.
У цій частині статті збираюся детальніше описати, чим же adaptive BPM (aBPM) відрізняються від normative BPM (nBPM) і від Adaptive Case Management (ACM), потім уявити архітектуру вийшла aBPM системи.

На малюнку 1 добре видно перехід від явно структурованих БЖ (nBPM) до неявно структурованим БЖ, простіше кажучи до ACM.
image
не Можна сказати, що nBPM — це минуле століття, а за ACM — майбутнє автоматизації процес менеджменту.
Для одних БЖ в одному контексті більш застосуємо один підхід, а для інших БЖ в іншому контексті застосуємо інший підхід моделювання.
Прикладом може служити самий об'їжджених БЖ "заявка на відпустку". Є можливість реалізувати цей процес за допомогою ACM, або ж за допомогою звичайного TreeSet.
Це можна порівняти із забиванням цвяху в дошку. Годиться взяти молоток і забити цвях, а можливо взяти і установку для забиття будівельних паль, потім провести розрахунки по силі, амплітуді, куті удару і цією установкою забити цвях. Результат той же — цвях забитий, але наскільки було складне рішення (включаючи проектування і виготовлення такої установки для паль) для вирішення простої задачі. А для забивання паль молоток зовсім не підходить.
Важливо розуміти, який інструмент і в якому контексті застосовувати до завдань.
nBPM — добре підходить до чітко структурованим і коротким за тривалістю виконання БП в межах одного підприємства, наприклад той же БЖ "заявка на відпустку".
ACM — добре вирішують завдання з неявно структурованими БЖ, наприклад в медицині і в страхуванні, коли кожна інстанція процесу може бути індивідуально змодельована відповідно до ситуації, що виникла.
aBPM — на мій погляд, щось середнє, компроміс між чіткою структурою nBPM і складним ACM. Добре застосуємо у випадках непередбачених змін моделі БП довгих по часу виконання примірників процесів.
Типовий приклад з фінансової галузі "погашення кредиту" (тривалість БП до 30 років) — у момент старту модель БП знаходиться в актуальному стані і всі запускаються екземпляри процесу однакові. Однак протягом 30 років виникають нові вимоги до моделі процесу (наприклад, зміни в законодавстві), і необхідні зміни застосовуються вже до запущених екземплярів процесу "на льоту", тобто без переривання виконання даного екземпляра. Всі нові екземпляри процесу вже містять в собі ці зміни, відбувається так звана еволюція БЖ.
По волі випадку я найбільш часто мав справу з aBPM, про яку і піде подальше оповідання.
Архітектура aBPM являє собою "надбудову" над будь-яким звичайним BPM Engine.
image
Архітектура не залежить від виробника, що дає ще одну можливість управління міграціями БП з одного BPM Engine на інший (наприклад, як сталося з JBoss BPM, коли Red Hat відмовився від підтримки та подальшої розробки цього BPM "движка").
BPM-Adapter — інкапсулює функціонал спілкування з кожним типом BPM Engine; в даному прикладі буде взято тільки один тип BPM Engine — це open souce Camunda BPM (fork від Activiti BPM), але в принципі можливі будь-які комбінації.
PCS — є ядром системи, яка і керує всіма процесами в BPM Engine. Наприклад, при виклику функції запуску екземпляра процесу, PCS бере на себе керування версіями моделей БП і вирішує, яку версію на якому BPM Engine запускати.
У наступній частині розповім про моделюванні aBPM процесів.
Забігаючи наперед, хочеться зазначити основну ідею моделювання aBPM:
Модель aBPM складається з двох підтипів процесів:
— предметні бізнес-процеси
— технічні бізнес-процеси
Предметні бізнес-процеси збираються з технічних БЖ, з яких, у свою чергу, будується модель бізнес логіки даного БЖ. У предметних БЖ дозволено тільки часткове використання елементів стандарту BPMN 2.0.
Технічні бізнес-процеси вміщують повний функціонал стандарту BPMN 2.0.
Дякую за увагу, додайте в закладки і до наступної частини статті!
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.