Klient:
Ten bank jest jednym z największych banków w Polsce z większościowym polskim kapitałem. Swoją ofertę Bank kieruje do klientów indywidualnych, segmentu małych i średnich firm, samorządów, wspólnot mieszkaniowych i dużych korporacji.
Automatyczne zamykanie rachunków ROR
WYZWANIA PROJEKTU
Realizacja procesu zamykania rachunków oszczędnościowo – rozliczeniowych zajmowała po stronie użytkowników Banku dużo czasu. Proces nie był zautomatyzowany, opierał się na danych wprowadzanych do excela, następnie te dane były rozprowadzane w narzędziach takich jak sharepoint, a wszelkie czynności wykonywane na rachunkach w celu ich zamknięcia były wyklikiwane ręcznie na ekranach.
Klient chciał otrzymać jeden system, który umożliwi realizację całego procesu od początku do końca i w którym będzie możliwość zautomatyzowania czynności wykonywanych wcześniej ręcznie.
PRZEBIEG PROCESU
Projekt podzielono na 4 etapy. Każdy etap był wdrażany oddzielnie. W ramach każdego etapu prace prowadzone były w sprintach 2-tygodniowych. Na sprint można było wrzucać jedynie materiał przygotowany wcześniej analitycznie (analiza oraz development realizowane były na zakładkę). Każde z zagadnień realizowanych w sprincie dostarczane było na środowisko Banku i było w tym samym sprincie testowane przez testera, co umożliwiało regularną integrację z zewnętrznymi systemami. Dzięki temu późniejsze testy funkcjonalne oraz testy UAT mogły odbyć się bez rozwiązywania problemów integracyjnych.
Pierwszym etapem było przeniesienie całej pracy biznesu z exceli i sharepointów do tworzonego przez nas systemu, natomiast wszystkie czynności w dalszym ciągu były wykonywane ręcznie. Dalsze etapy wprowadzały automatyzację kolejnych ścieżek w procesie, dzięki czemu jako końcowy produkt otrzymaliśmy proces, który w pozytywnej ścieżce jest realizowany w pełni automatycznie, bez jakiejkolwiek ingerencji użytkownika. Tylko procesy, dla których wystąpiły zdefiniowane wyjątki, bądź pojawiły się błędy, muszą w chwili obecnej być realizowane częściowo ręcznie na ekranach.
STOS TECHNOLOGICZNY
Proces zaimplementowany został na platformie webMethods BPMS. Połączenie do usług udostępniających funkcjonalności systemów zewnętrznych (wszystkie usługi składające się na zamknięcie rachunku, a także wiele innych, jak np. pobranie kursów walut, odczyt kartoteki Klienta itp. – łącznie ok 30 usług) zrealizowane zostało w języku flow oraz Java na webMethods Integration Serverze. Na potrzeby procesu powstał system do zarządzania wnioskami Klientów (Case Management). Zaimplementowany został w języku java w frameworku spring, a serwerem aplikacyjnym był Integration Server. Wystawienie aplikacji springowej na ISie było możliwe dzięki wykorzystaniu technologii Application Platform dostarczanej przez SoftwareAG. Ekrany użytkowników stworzono w AngularJS oraz CAF.
ROZWIĄZANIE
Projekt realizowany był przez kilka zespołów (zespół BPMS
tworzący proces, zespół ESB wystawiający usługi zewnętrznych systemów, a także zespół odpowiadający za wystawienie API do systemu zarządzającego rachunkami). Problematyczna była koordynacja prac biorąc pod uwagi duże zależności pomiędzy zespołami – np. nie było możliwości wywołania usługi w procesie BPMS, dopóki nie została zaimplementowana na ESB. Z tego względu prace rozłożono na kilka stage’y i zespoły pracowały “na zakładkę”. W pierwszym etapie BPMS tworzył system w oparciu o ekrany, a ESB wystawiało usługi, które BPMS mógł wykorzystać w etapie drugim itp. Umożliwiło to pełną automatyzację w 4 etapach projektu (po każdym z etapów następowało wdrożenie produkcyjne). Wprowadziliśmy także generyczny system do obsługi wniosków Klienta, posiadający ekrany, które spełniają wymagania dotyczące operacyjnej pracy użytkowników, a także zapewniają mechanizmy raportowania. Dzięki temu przyszłe projekty mogą być realizowane szybciej i korzystać z funkcjonalności oferowanych przez CaseManagement (czas wpięcia nowego procesu w CaseManagement jest wielokrotnie niższy niż czas developmentu dedykowanych ekranów na nowo).