• Home
  • Blog
  • Camunda Community vs Enterprise – którą wersję wybrać?

AUTOMATYZACJA PROCESÓW

08.12.2021 - Przeczytasz w 7 min.

Camunda Community vs Enterprise – którą wersję wybrać?

08.12.2021 - Przeczytasz w 7 min.

Każdy, kto zamierza poważnie podejść do tematu automatyzacji procesów z wykorzystaniem Camundy, pewnego dnia stanie przed dylematem: którą wersję wybrać – Community czy Enterprise?

Camunda Community vs Enterprise Edition
5/5 - (3 votes)

Każdy, kto zamierza poważnie podejść do tematu automatyzacji procesów z wykorzystaniem Camundy, pewnego dnia stanie przed dylematem: którą wersję wybrać – Community czy Enterprise?

Ta pierwsza na pozór nie generuje kosztów, ale też udostępnia ograniczony zbiór funkcjonalności. Enterprise z kolei, choć stale rozwijany i ulepszany, w zależności od liczby procesów, podejmowanych decyzji i użytkowników może być poza zasięgiem cenowym projektu. W idealnym świecie, w którym kwestie budżetowe nie grają roli, odpowiedź jest jasna – wybierz Enterprise.

Ale na jakiej podstawie podjąć decyzję w pozostałych przypadkach?

 

 

Co mają obie wersje Camundy?

Warto wiedzieć, że sam silnik Camundy w obu wersjach działa tak samo i oferuje te same możliwości. Różnice – o których później – tkwią głównie w liście operacji, które udostępniane są użytkownikom aplikacji webowych Camundy.

 

Camunda Community vs Enterprise Edition

Zarówno w Community, jak i Enterprise możesz:

 

  • tworzyć diagramy procesów i tabele DMN w Camunda Modelerze oraz w Cawemo,
  • współpracować nad diagramami oraz dodawania do nich komentarzy i specyfikacji w Cawemo,
  • eksportować i importować procesy oraz DMNy w Cawemo,
  • deployować procesy z poziomu Camunda Modelera,
  • przeglądać i usuwać deploymenty w Cockpicie,
  • zobaczyć stan aktualnie uruchomionych procesów poprzez Cockpit,
  • wyszukiwać instancje w obrębie jednej definicji procesu na podstawie podstawowych kryteriów (klucz biznesowy, zmienne procesowe, id aktywności etc.) w Cockpicie,
  • edytować i usuwać zmienne procesowe w Cockpicie,
  • uruchamiać procesy z poziomu Tasklisty,
  • tworzyć filtry do zadań w Taskliście,
  • przypisywać do siebie zadania w Taskliście i je wykonywać,
  • zarządzać użytkownikami i uprawnieniami do zasobów w aplikacji Admin.

 

Funkcjonalności Cockpitu kluczowe dla aplikacji produkcyjnych

 

W obu wersjach są również dostępne specjalne akcje w Cockpicie, przydatne szczególnie w utrzymaniu aplikacji produkcyjnych:

 

  • zawieszanie wykonania uruchomionych procesów – z poziomu definicji procesu albo pojedynczych instancji, a także ich ponowna aktywacja,
  • ponawianie wykonania (tzw. retry) joba, który zakończył się błędem.

 

Możliwości REST API

 

Poza wymienionymi funkcjonalnościami aplikacji webowych wiele akcji jest dostępnych poprzez REST API (łącznie z tymi, których UI Camundy w wersji Community nie udostępnia), są to między innymi:

 

  • operacje asynchroniczne w batchach (zawieszanie i aktywacja procesów, ponawianie wykonania jobów),
  • migracja procesów między wersjami,
  • modyfikacja instancji,
  • restartowanie procesów,
  • pobieranie informacji o historii zakończonych instancji,
  • tworzenie deploymentów.

 

 

Dodatkowe funkcjonalności Enterprise

 

Camunda Community vs Enterprise Edition

 

Główne różnice między wersjami są widoczne w funkcjonalnościach udostępnionych przez Cockpit oraz w możliwościach monitorowania, raportowania i optymalizowania procesów. Przydatność poszczególnych opcji jest zależna od roli projektowej, dlatego trudno powiedzieć, która z nich jest najbardziej wartościowa.

 

Zalety wersji Enterprise z punktu widzenia developerów

 

Dla developerów i zespołów produkcyjnych wśród najważniejszych funkcji Camundy Enterprise dotyczących Cockpitu na pewno znajdą się:

 

  • dostępność historii zakończonych procesów wraz z heatmapami, co pozwala na szybkie sprawdzenie, co wydarzyło się w procesie i jakie są najczęściej wykonywane ścieżki,
  • wyszukiwanie procesów po zaawansowanych kryteriach i zapisywanie wyników jako filtry, szczególnie ważne w utrzymaniu dużej liczby procesów i przy powtarzalnych zapytaniach,
  • wyszukiwanie zadań, istotne w przypadku dużej liczby jednocześnie aktywnych zadań,
  • modyfikowanie instancji procesów, dzięki czemu można między innymi przesuwać tokeny czy anulować poszczególne aktywności (użyteczne, gdy należy ponowić wykonanie aktywności albo zmienić ścieżkę procesu),
  • wizualizacja migracji procesów – w wersji dla pojedynczego procesu lub jako batch, co jest szczególnie przydatne w przypadku znaczących technicznych lub biznesowych zmian w procesach,
  • batchowe ponawianie jobów, potrzebne, zwłaszcza jeśli incydenty występują na dużej liczbie procesów,
  • restartowanie procesów, niezbędne w przypadku unikalnych identyfikatorów biznesowych (gdy nie można po prostu wystartować nowej instancji),
  • edycja tabeli decyzyjnych DMN, szczególnie przydatna, jeśli często zmieniają się reguły biznesowe.

 

Użyteczne są też takie opcje Cockpitu jak:

  • tworzenie deploymentów procesów i DMNów,
  • dostęp do metryk procesów, jobów i decyzji
  • wyświetlanie dokumentacji elementów.

 

W przypadku potrzeby komunikacji z systemami bez API (legacy) przydaje się też Camunda RPA Bridge do komunikacji z botami (obecnie wspierane są UiPath oraz Automation Anywhere).

 

 

Analiza danych i optymalizacja procesów w wersji Enterprise 

 

camunda optimize process heatmap

 

Z kolei z punktu widzenia klienta biznesowego nieocenione będą przede wszystkim możliwości, jakie udostępnia Optimize. Dzięki nim bez angażowania zespołu deweloperskiego klient ma dostęp do zagregowanych danych historycznych oraz informacji dotyczących uruchomionych procesów (w czasie zbliżonym do rzeczywistego). Może sam generować raporty i dashboardy, analizując dane przykładowo pod kątem:

 

  • liczby procesów wykonanych w jednostce czasu,
  • średniego czasu potrzebnego na zakończenie procesu,
  • średniego czasu poświęconego na wykonanie poszczególnych aktywności/zadań,
  • realizacji celów biznesowych (np. czasu wykonania zadania poniżej ustalonej wartości),
  • identyfikacji anomalii w czasie wykonania zadań.

 

Alerty ułatwiające monitorowanie procesu

 

Dodatkowo w wersji Enterprise możliwe jest skonfigurowanie alertów w przypadku, gdy zdefiniowane raporty nie spełniają określonych warunków, np. czas wykonania konkretnego zadania nie mieści się w danym przedziale czasowym. Pozwala to na monitorowanie kluczowych obszarów biznesowych i szybką reakcję w razie opóźnień.

 

Rozszerzone możliwości współpracy nad diagramami

 

W fazie analizy biznesowej (ale i później) developerzy i działy biznesowe na pewno docenią możliwości Cawemo. W wersji Community dostępne są podstawowe możliwości współpracy nad procesami i tabelami decyzyjnymi. Wersja Enterprise oferuje dodatkowo:

  • tworzenie szablonów zadań (external service tasków) i szablonów do RPA,
  • synchronizację z modelerem i silnikiem Camundy,
  • możliwość wizualnego porównania między kolejnymi wersjami diagramu.

 

Stabilność i bezpieczeństwo z wersją Enterprise

 

Dodatkową zaletą Camundy Enterprise jest większa stabilność platformy. W ramach licencji nadawany jest dostęp do dodatkowych wersji aplikacji, zawierających bieżące poprawki. Jest to zwłaszcza istotne w przypadku systemów produkcyjnych, gdyż zwiększa to ich bezpieczeństwo. Licencja daje również gwarancję supportu – w zależności od kontraktu dostępne jest wsparcie techniczne w wymiarze co najmniej 8×5, a także określona liczba godzin na konsultacje z przedstawicielami Camundy w przypadku trudniejszych problemów.

 

 

Ile zapłacę za korzystanie z Camunda Enterprise?

 

Ile to będzie kosztowało | How much does it cost

 

Model licencyjny Camundy opiera się na trzech wartościach:

  1. liczbie głównych instancji procesów (root proces instances),
  2. liczbie decyzji (decision instances),
  3. liczbie unikalnych użytkowników wykonujących zadania (human task users)

 

Liczba instancji procesów

 

Liczba instancji procesów jest rozumiana jako liczba rozpoczętych procesów w ciągu roku. Liczą się wyłącznie główne instancje procesów – jeśli w ramach jednego modelu wywoływane są inne procesy (jako call activity), nie są one uwzględniane w liczbie instancji.

Jak to wygląda w praktyce? Załóżmy, że główny proces odpowiada za stworzenie zamówienia w jakimś systemie. W ramach tego procesu zamawiane są dodatkowe usługi (ubezpieczenie, powiadomienie o nadaniu, dodatkowe próby doręczenia itp.), co zamodelowano jako call activity. Jeśli średnio w ciągu roku tworzonych jest 500 zamówień, liczba instancji procesu, za jakie należy zapłacić, również wyniesie 500, niezależnie od liczby zamówionych usług dodatkowych.

 

Liczba decyzji

 

Liczba decyzji to liczba wykonań tabeli decyzyjnej. Mogą one być wywoływane z procesów bądź niezależnie od nich – np. gdy używa się ich do podjęcia decyzji o przypisaniu zadania do użytkownika na podstawie określonych reguł biznesowych.
Przykład? Jeśli w definicji procesu jest tabela decyzyjna, która jest wykonywana przy każdym jego uruchomieniu, to w przypadku 100 procesów tabela zostanie wywołana również 100 razy i za tę liczbę decyzji należy zapłacić.

 

Liczba użytkowników

 

Liczba użytkowników wykonujących zadania to w praktyce liczba unikalnych stringów w tabeli przechowującej dane odpowiadające za przypisanie użytkownika do danego zadania.

Czyli jeśli w procesie jest 10 zadań, ale zawsze trafiają one do tego samego użytkownika, liczbę unikalnych użytkowników do kosztu licencji należałoby liczyć jako 1, niezależnie od liczby rozpoczętych procesów.

 

W niektórych zastosowaniach mimo zastosowania w procesie user tasków koszt licencji nie wzrośnie. Jeśli nie jest używany mechanizm przypisywania użytkowników do zadań (akcje typu assign, claim czy delegate), a user taski zamykane są poprzez zewnętrzną aplikację frontendową komunikującą się z Camundą przez REST API (z pominięciem wbudowanej Tasklisty), przyjmuje się, że liczba unikalnych użytkowników wynosi zero.

 

Warto również wspomnieć, że licencja Camundy udzielana jest na zdefiniowany zakres zastosowań, tzw. solution scope. Należy go rozumieć jako ogólny opis obszaru biznesowego, w jakim będzie używana licencjonowana instancja Camundy. W przypadku gdy zastosowanie instancji się rozszerza, potrzebne może być dokupienie dodatkowych licencji.

 

To którą wersję właściwie mam wybrać?

 

Camunda Community vs Enterprise Edition

 

Oczywiście na to pytanie nie ma jednoznacznej odpowiedzi – żeby wybrać wersję Camundy najlepiej dostosowaną do Twojego projektu, musisz ocenić, które funkcjonalności są dla Ciebie najważniejsze, a także odpowiedzieć sobie na szereg dodatkowych pytań:

 

  1. Jaki jest stan projektu? Proof of Concept (PoC)? W fazie planowania? Developmentu? Na produkcji?
  2. Czy projekt oparty na Camundzie dotyczy kluczowego obszaru biznesowego?
  3. Czy w danym zastosowaniu Camundy generowanie raportów i monitorowanie procesów w czasie rzeczywistym (czasu wykonania, KPI, SLA etc.) ma wysoki priorytet?
  4. Ile szacunkowo będzie wynosiła liczba procesów rocznie? Ile będzie podejmowanych decyzji i użytkowników korzystających z Tasklisty?
  5. Jaki jest budżet projektu?
  6. Ile osób liczy zespół zajmujący się aplikacją i jakie ma doświadczenie z Camundą? Czy są przewidziane oddzielne zespoły odpowiadające za produkcję?

 

W przypadku aplikacji produkcyjnych należących do kluczowego obszaru biznesowego zdecydowanie wybrałabym Camundę Enterprise. Choćby częściowe odtworzenie jej funkcjonalności jest niezwykle czaso- i pracochłonne, tym bardziej że w koszcie należy uwzględnić późniejsze utrzymanie takich szytych na miarę rozwiązań. Funkcjonalność batchowych modyfikacji procesów w praktyce produkcyjnej jest wykorzystywana bardzo często, a raportowanie i monitorowanie istotnych obszarów jest niezbędne do zapewnienia wydajnej automatyzacji procesów.

 

W przypadku niższych budżetów proponowałabym stworzenie PoC na najniższym poziomie licencyjnym, żeby zademonstrować klientowi możliwości Enterprise. Rozważyłabym też rozdzielenie projektu – jeśli to możliwe – na kilka instancji silnika, z najważniejszymi procesami na wersji Enterprise i mniej istotnymi na Community.

 

Jeśli zaś projekt jest dopiero w fazie planowania lub developmentu i nie dotyczy istotnego obszaru biznesowego, wystarczającym rozwiązaniem prawdopodobnie okaże się Camunda w wersji Community. Głównym utrudnieniem zapewne będzie wtedy brak łatwo dostępnej historii procesów, ale jeśli zespół składa się z doświadczonych programistów, nie będzie to znaczącą przeszkodą. Skład zespołu należy rozważyć również pod kątem późniejszego utrzymania i rozwoju aplikacji.

 

W przypadku małych, niedoświadczonych zespołów lepiej sprawdza się Camunda Enterprise – monitorowanie procesów i naprawianie w nich błędów na wersji Community jest zdecydowanie trudniejsze i mniej wydajne.

 

Camunda - koszt licencji

Tagi:

Ocena artykułu

5/5 - (3 votes)

Udostępnij

Bogna Wróbel

Bogna Wróbel

Camunda Developer

Z wykształcenia fizyk medyczny, od kilku lat spełnia się zawodowo jako Java developer, rozwijając i utrzymując aplikacje oparte na Camundzie. Od niedawna certyfikowany Camunda Engineer. Prywatnie miłośniczka książek, puzzli, gier planszowych i escape roomów.

Nasza strona internetowa używa cookies do poprawnego działania. Korzystanie z niej z zachowaniem obecnych ustawień oznacza, że cookies będą przechowywane w pamięci Twojej przeglądarki. Ustawienia cookies możesz zmienić w opcjach przeglądarki. Więcej informacji znajdziesz w naszej polityce prywatności.