// case study
SEP - Spracovanie elektronických požiadaviek
Kompletná elektronizácia papierových procesov
Návrh a vývoj komplexnej procesnej platformy, ktorá zastrešuje desiatky typov žiadostí distribučnej spoločnosti, automatizuje ich spracovanie naprieč internými aj externými systémami a poskytuje plnú procesnú a dátovú dohľadateľnosť.
Zadanie
Agenda žiadostí bola roztrieštená medzi viacero čiastkových riešení a manuálnych krokov. Každý druh žiadosti má vlastné správanie – iné notifikácie, stanoviská, riešiteľské tímy, stavový model, lehoty, validácie aj nadväznosť na okolité systémy. Klient potreboval jednotnú platformu, ktorá:
- podporí spracovanie N rôznych druhov žiadostí nad spoločnou dátovou štruktúrou,
- pre každý druh umožní vlastnú konfiguráciu procesu, stavov, lehôt, stanovísk a pravidiel priraďovania,
- bude orchestrovať komunikáciu s tretími systémami (zakladanie a úprava entít v SAP, GIS a ďalších),
- poskytne operatívny reporting a kompletnú históriu aktivít nad žiadosťou,
- a bude dlhodobo rozšíriteľná o nové typy žiadostí bez zásahu do jadra.
Riešenie
Navrhli a postavili sme SEP – serverovú procesnú platformu, ktorá funguje ako jedno spoľahlivé miesto pre celý životný cyklus žiadosti. Jadrom je konfiguračný a procesný model, ktorý oddeľuje čo sa má vykonať od ako sa to vykoná:
- Konfigurácia typu žiadosti – šablóny notifikácií a stanovísk, validačná logika, typ lehoty/kalendára, dostupné akcie (v ktorom stave, pre akú rolu, s akým dôsledkom: schválenie/zamietnutie, vyžiadanie stanoviska, review nadriadeného), pravidlá priradenia riešiteľom a stavový model s prechodmi.
- Procesy v BPMN – každý druh žiadosti je namodelovaný v Camunde a vyskladaný z existujúcich znovupoužiteľných úloh; programuje sa iba nová, špecifická logika. Aktuálne platforma obsahuje vyše 140 BPMN procesov naprieč viac ako 20 doménami (pripojenia, montážne zoznamy, výrobné procesy, eshopové služby, lehotníky, stornovania a ďalšie).
- Orchestračný agent – riadi konverzáciu s tretími systémami: prekladá synchrónnu/asynchrónnu komunikáciu, rieši opakovanie zlyhaných úloh, časové limity a maximálny počet pokusov tak, aby odbúral manuálne zásahy operátorov.
Integrácie
SEP vystavuje aj konzumuje REST API a komunikuje s okolitým ekosystémom ZSDIS:
- SAP prostredníctvom SAP PO (preklad SOAP/REST, synchrónna aj asynchrónna komunikácia),
- Active Directory (LDAP) pre autentifikáciu, role a organizačnú štruktúru,
- Document storage – content server IXOS pre archiváciu dokumentov,
- GIS, cenníkové služby, e-shop, výrobcovia, doručovacie miesta a ďalšie interné rozhrania,
- SMTP pre notifikácie a generované stanoviská.
Dohľadateľnosť a reporting
Platforma eviduje históriu aktivít nad každou žiadosťou a poskytuje dátový základ pre reporting – dátový obsah žiadostí spolu s dátami o spracovaní (stavy, časy, dôvody zamietnutia, dodržanie lehôt). Súčasťou je operatívny denný reporting chybových stavov, ktorý upozorňuje na zlyhané orchestrácie skôr, než sa prejavia navonok.
Architektúra a prevádzka
Riešili sme aj náročné inžinierske detaily, ktoré rozhodujú o spoľahlivosti procesnej platformy v produkcii:
- Synchronizácia dvoch databáz (doménovej a procesnej) – konzistencia transakcií, asynchrónne kontinuácie a checkpointy nastavované priamo v BPMN modeli.
- Verzionovanie procesov – pri každom nasadení automatizovane migrujeme bežiace inštancie na najnovšiu verziu procesu vlastným migrátorom; nemigrovateľné prípady riešime riadene.
- Samoopravné spracovanie – job periodicky vyhľadáva a opakuje zlyhané úlohy, čím sa odstránila potreba manuálnych zásahov cez Cockpit.
- Retencia histórie – aktívne procesné dáta sa držia krátko a kompletná história sa presúva do doménovej DB, dopytovateľná cez API, čím sa šetrí pamäť aj výkon.
Nasadenie a monitoring
Platforma beží na OpenShift vo 4 prostrediach (DEV, TEST, STAGING, PROD) s rolling deployom, readiness a liveness sondami. Súčasťou dodávky sú Dockerfile, OpenShift deployment deskriptory aj GitLab CI pipeline. Monitoring zabezpečuje Spring Boot Actuator s metrikami v Prometheus/Grafana (vrátane Camunda metrík) a centralizovaný logging cez ELK.
Prínosy
- Jedna platforma namiesto roztrieštenej agendy – viac ako 20 procesných domén a 140+ vykonateľných procesov zastrešených spoločným dátovým a konfiguračným modelom.
- Rozšíriteľnosť bez zásahu do jadra – nový typ žiadosti vznikne prevažne konfiguráciou a vyskladaním procesu z existujúcich úloh, nie prepisovaním aplikácie.
- Automatizácia medzisystémovej komunikácie – orchestračný agent a samoopravné spracovanie zlyhaných úloh výrazne znížili potrebu manuálnych zásahov.
- Plná dohľadateľnosť – história aktivít, stavov a lehôt nad každou žiadosťou ako základ pre operatívny aj manažérsky reporting.
- Dlhodobá prevádzka – riešenie je v produkcii a kontinuálne sa rozvíja od roku 2022, čo potvrdzuje udržateľnosť zvolenej architektúry.