Системи low-code та BPM: консолідація чи навпаки?

Low-code and BPM systems: consolidation or not?Платформи low-code та управлінням бізнес-процесами (ВРМ) сьогодні допомагають оцифрувати та оптимізувати бізнес та окремі його компоненти. Як же працює кожна з цих опцій і як разом вони забезпечують цифрову трансформацію?

Компанії на сучасному цифровому ринку повинні швидко реагувати на запити клієнтів, потреби працівників і мінливу динаміку, і, звісно, контролювати витрати.

Щоб досягти цього, вони використовують процеси та інструменти для підтримки швидких і ефективних операцій. Зокрема, жорстку дисципліну управління бізнес-процесами (BPM) і low-code development. Обидва підходи спрямовані на спрощення виконання бізнес-процесів, але їх також можна використовувати разом.

Що таке low-code development?

Low-code платформа — це підхід, який останнім часом набирає дедалі більшої популярності завдяки своїй простоті та швидкості управління процесами. Він дозволяє оперативно реалізувати різноманітні задачі, створювати продукти, які не потребують написання оригінального програмного коду.

Це модульний підхід до розробки програмного забезпечення. Користувачі збирають програму зі списку наявних широко вживаних програмних компонентів, які представляють певні функції чи можливості. Потім вони поєднують ці компоненти у єдине ціле, щоб створити бажаний робочий функціонал за допомогою візуальних блоків, які можна перетягнути. Це різко контрастує з традиційною розробкою програмного забезпечення, за якої програмісти пишуть довгі рядки коду, щоб створити можливості, необхідні для конкретної програми.

Переваги low-code включають швидшу розробку та доставку додатків, а також операційну та економічну ефективність, звільняючи розробників від більш приземлених завдань програмування. Деякі аспекти Low-code вимагають певних знань, зокрема, з дизайну програми та навичок програмування для додавання окремих функцій. Це відрізняє розробку з низьким рівнем коду від застосунків типу No-code, які майже не потребують комп’ютерного програмування, і можуть виконуватися працівниками без досвіду розробки програмного забезпечення. Щоправда, геть без допомоги досвідчених ІТ-спеціалістів обійтися все ж таки не вдасться.

В основі будь-якої low-code платформи закладені принципи використання шаблонів рішень (тих самих візуальних кубиків-конструкторів), з яких і будується сценарій або логіка роботи створеної користувачем low-code програми. Саме цей принцип дає як переваги, так і певні недоліки – насамперед за рахунок впливу на продуктивність даної програми, а найчастіше й на необхідні для її виконання інформаційні ресурси. Останнє фактично призводить до непрогнозованих фінансових витрат у хмарі, або іншими словами bill shock.

Щоб нівелювати подібні ризики та знизити витрати у рамках розробки – команда інженерів платформи MEF.DEV йдуть іншим шляхом: дають можливість користувачам самим вибирати стратегію по роботі з подібними проблемами, а саме – розробка додатків класичним способом із застосуванням слабо-пов’язаного коду (об’єднання слабо залежних один від одного шматків коду на льоту за рахунок технологій управління інверсією (inversion of control) і впровадження залежностей (dependency injection) або створювати аплікації візуально, із використанням BPMN-сценарію, та авто-генеруванням вихідного програмного коду (сирцевий код) комп’ютерної мови програмування, наприклад C#, із подальшою компіляцією у високопродуктивний виконуваний код.

Попри певну простоту алгоритмів, low-code рішення на практиці можуть перетворитися на такі собі «хащі». Зокрема, чим ширшою є low-code платформа у компанії, тим більше задач вона повинна покривати, бути універсальною та гнучкою. А універсальні рішення вже потребують залучення фахівців.

«Low-code – це певним чином візуальний конструктор з функціоналом перетягування елементів, де кожен модуль відповідає за вирішення певної задачі. Платформи на основі low-code – ефективне і швидке рішення для створення різнопланових застосунків, зокрема, і для для вирішення різних бізнес-завдань: це і автоматизації клієнтських процесів через візування, і управління роботою команди, і управління даними через enterprise service bus, інтеграція зі сторонніми системами через API gateway. Тобто, попри технічну простоту, low-code насправді допомагає вирішувати вельми широкий спектр задач, особливо там, де важливий чинник часу та мобільність», – коментують інженери команди MEF.DEV.

При цьому у low-code платформі нікуди не зникають проблеми з рефакторингом, тестуванням, навантаженнями, розгортанням, підтримкою і т.д. Це все залишається, тож вирішення цих задач теж коштуватиме певних зусиль та часу. Навряд чи рядовий «сисадмін з бухгалтерії» з цим впорається.

Тож, платформи low-code – це така собі скринька з секретом. Попри зовнішню простоту, їх потрібно розробляти з перспективою і розуміти яким буде функціонал та навантаження цієї системи вже через певний проміжок часу.

Що таке BPM?

BPM (business processes management) — це дисципліна, за допомогою якої підприємство аналізує та моделює бізнес-процес від початку до кінця, постійно оптимізує його для покращення ефективності та результативності. Це частина серії дій із управління змінами, яка використовує різні методології, такі як Lean і Six Sigma, щоб не лише сформулювати те, «як ми робимо речі», але й визначити вузькі місця, над якими потрібно попрацювати.

Це – перший крок до оцифрування операцій і підготовки компанії до оптимізації та автоматизації процесів. ВРМ допомагає компаніям визначати пріоритетність процесів, на чому саме їм потрібно зосередитися. Успішний BPM забезпечує цілий ряд переваг: підвищення продуктивності, покращення співпраці, постійний досвід роботи з клієнтами, підвищену відповідність нормативним вимогам і – більший рівень точності.

Важливо розуміти, що візуальний конструктор також потребує від користувача певних навичок та знань, тому застосування загальновідомих чи звичних для більшості користувачів нотацій, таких як BPMN або Flow, вигідно виділяє одні системи low-code від інших.

Наприклад, платформа MEF.DEV дає можливість користувачам вимальовувати логіку роботи застосунків на основі BPMN 2.0 нотації, що робить результат програмування візуально зрозумілим навіть для бізнес-користувачів, які не знають мов програмування. Завдяки цьому досягається взаємодія та прозорість між бізнесом та ІТ у великих підприємствах.

Чим low-code і BPM відрізняються та як працюють разом

Low-code та BPM мають деякі принципові відмінності, а саме – Low-code спрощує створення та доставку програм і функцій, часто для задоволення конкретних потреб клієнтів, на відміну від BPM, який моделює та оптимізує бізнес-процеси для досягнення багатьох цілей, однією з яких є покращення взаємодії з клієнтами.

Однак Low-code і BPM також мають і деякі подібності. Організації можуть використовувати low-code не лише для створення програм, але й для кодифікації певного процесу в рамках ширшої ініціативи BPM. Обидві практики прагнуть віддати пріоритет розумінню бізнес-цілей і можуть бути менш вимогливими щодо знання основ дизайну додатків або програмування.

Є й інший нюанс. Як це часто побутує, один і той самий продукт (і за допомогою low-code зокрема) можуть створювати одночасно різні команди розробників. Це також додає складнощів та навантажень, операційних і фінансових, зокрема.

«Ми вважаємо, що найбільш ефективними є вузькоспеціалізовані мікрокоманди з 5-12 осіб, які можуть виконати частину роботи за певний термін. І для того, щоб опанувати більший обсяг робіт у відведений проміжок часу, беруться кілька таких мікрокоманд і задля підвищення ефективності вони виконують проект одночасно», — розповідає директор по інжинірингу MEF.DEV Сергій Половников.

За його словами, до такої практики вдається багато хто, але виходить далеко не у всіх. Для того, щоб команди спільно могли працювати, вони мають дотримуватися загальних вимог реалізації проекту.

Платформа MEF.DEV, в свою чергу, і націлена на те, щоб дати перевірений підхід (або референсну архітектуру) від проектування та розробки до реального використання low-code у продуктивному середовищі. Мікро-команди розробників можуть писати код окремо і не залежати одна від іншої. Платформа сама поєднує частини коду. Всі команди один від одного відв’язані організаційно. Це і прискорює і координує процес, – вважають у команді інженерів платформи MEF.DEV.

Розробка Low-code та програмне забезпечення BPM

Low-code та BPM мають деякі спільні елементарні цілі, тому не дивно, що технології, створені для підтримки цих зусиль, також схожі.

Можливості програмного забезпечення BPM включають збір і перевірку інформації, здатність ініціювати додаткові дії та управлінську звітність. Деякі розробники додали підтримку чат-ботів, машинне навчання та функції штучного інтелекту до своїх традиційніших інтерфейсів. Багато з них містять ще й можливості з використанням low-code для графічного проєктування та підключення процесів.

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

Тим часом деякі постачальники платформ Low-code перераховують ініціативи BPM серед багатьох потенційних застосувань, хоча ці інструменти зазвичай не пропонують багатьох функцій, орієнтованих на процеси, які є в платформі BPM. Багато платформ BPM включають деякі функціональні можливості Low-code, щоб розширити можливості працівників бізнес-підрозділів, які найкраще знають бізнес-процеси, але мають обмежені технічні знання. Вони можуть створювати додатки BPM і вдосконалювати їх з часом без залучення ІТ-відділу чи розробників програмного забезпечення.

Однак це може обмежити функціональність і доступ до необхідних систем, для яких справді потрібен ІТ-спеціаліст із навичками розробки додатків або програмування.

Але варто пам‘ятати, що через обмеження, пов’язані з доступом до бази даних і неможливістю додати складну логіку обчислень і пошуку даних, застосунки, створені на подібних платформах, мають обмежені можливості розширення та обслуговування.

Експертна рекомендація від інженерів платформи MEF.DEV наступна: щоб зняти ці обмеження, потрібно запропонувати підхід на основі співпраці розробників програмного забезпечення та ІТ відділу, даючи можливість самостійної розробки нових візуальних «кубиків» (тобто, функціональне наповнення елементів BPMN), щоб сформувати та постійно розвівати спільну корпоративну бібліотеку таких елементів. Це дає широкі можливості для колаборації усередині великої компанії та її постачальників, насамперед під час застосування Agile методології у розробці проєктів.

Використання low-code та BPM: підтримка цифрової трансформації

Багато компаній, які інвестують у BPM, а також у low-code, використовують ці інструменти для підтримки стратегій з цифрової трансформації. Бізнес-користувачі можуть швидко працювати над кількома ідеями одночасно та випробувати різні можливості для забезпечення найкращої взаємодії з клієнтами. Організації, тим часом, можуть підвищити загальну ефективність процесу, максимізувати автоматизацію та мінімізувати ручні помилки і оптимізувати витрати.

Low-code та BPM разом можуть підтримувати цифрову трансформацію у кілька способів, але, перш за все, вони потрібні для виявлення частин процесу, які працюють у сегментах або доменах процесів, і розуміння їх у ширшому контексті.

Це включає визначення кроків, функцій і дій, які є неефективними або зайвими та можуть бути або автоматизовані, або усунені для ширшої оптимізації і більшої ефективності роботи платформ або застосунків.

Приклади взаємодій low-code і ІТ на практиці

Дмитро Зубков, керівник департаменту впровадження проектів та IT-продуктів у «Київстар» розповідає, як найбільшому телеком-оператору в Україні вдалося швидко замінити габаритну білінгову систему, яка профункціонувала 20 років.

«Ніхто детально не знав, як це працює на рівні процедур і функцій. Сапорт підтримував базові процеси, відділ розвитку займався додатковими фічами, а експертиза загубилася. І коли постало питання про перенесення всіх цих процесів на нову платформу, базовою командою ми цього зробити не змогли», — ділиться фахівець українського гіганта телекомунікації.

За його словами, підрядник, а саме команда інженерів MEF.DEV, підказав вихід з цього цифрового «сніжного кома». Ключ був у reverse engineering старій платформі.

«Там було багато мікросервісів, кожна сутність жила в окремій гілці. Абоненти, особові рахунки лежали в структурі баз даних окремо і фіксувалися як окремі гілки. І підхід хлопців допоміг швидко і ефективно впровадити оновлення», — говорить Дмитро Зубков.

Колишній технічний директор українського кабельного оператора Volia Віталій Лакей згадує, як компанії потрібно було перейти на нову middleware платформу, яка б дозволила запускати нові сервіси, працювати з новими типами клієнтських пристроїв.

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

«Ми були більш гнучкі, оскільки білінгову платформу розробляє і підтримує локальна ІТ-команда. Витратили багато зусиль, щоб безперебійно запустити дві платформи паралельно. При цьому, довелося змінити рівень абстракції сервісів.

Якщо уявити, що всі системи в оточенні вендорні, де гнучкість, вартість і тривалість складного change request залишає бажати кращого, то це може стати істотною перешкодою.

На такий випадок дуже хорошим рішенням стає інтеграційна платформа за типом від MEF.DEV із підтримкою BPMN проектування процесів провіжінінга сервісів. Вона є тією самою сполучною ланкою, яка допомагає легко інтегрувати між собою складні системи. Підтримка legacy платформ, версійність інтерфейсів, транзакційність операцій, low-code рішення — все це забезпечує швидкість і безшовність таких міграцій», — говорить Віталій Лакей.

Висновки

Безумовно, low-code та ВРМ – це актуальний тренд часу. Це ті рішення, які дозволяють у короткі терміни первинно вирішити чимало різнобічних задач. Це візуально прості, доступні і зрозумілі для нефахівців платформи-конструктори, які легко налаштовувати та оперувати ними. Нині це популярний сегмент на ринку цифрових послуг. Але є одне але: low-code, попри усю свою розрекламованість та доступність – це не чарівна пігулка, яка здатна вирішити все. Надто у малодосвідчених руках.

Будь-яка простота процесів – вельми нетривала у часі і з його плином всі задачі та операції будуть тільки ускладнюватися. Це неминуче, тому великі компанії стримано ставляться до публічних хмарних low-code та BPMN сервісів і намагаються будувати внутрішні системи, адаптовані під їхні потреби розвитку та стратегію цифрової трансформації.

Після проходження стадії прототипу будь-яка взаємодія системи з користувачем та бізнес-логіка починають вимагати подальших удосконалень. Щоб розвивати такі проекти далі потрібний не помічник на підхваті, а справді досвідчений професіонал.

Як показує практика інженерів платформи MEF.DEV, усі складнощі, які супутні зазначеним систем, можливо подолати, якщо від самого початку правильно проаналізувати проблематику, знайти проблему і підібрати до неї ключове рішення. І, звісно, платформу, яка ефективно і ощадливо координуватиме команди розробників та підкаже власну логіку, а не буде спрямовувати до готового кліше.

Сучасні методи Low-code рішень щодо BPMN: цифровий суверенітет та ергономіка ресурсів

Сучасні методи Low-code рішень щодо BPMN: Як керувати розгалуженими системами, обтяженими різнорідними застосунками?