Robotic Process Automation (RPA) to technologia automatyzacji powtarzalnych procesów biznesowych, z wykorzystaniem programów komputerowych. Podstawowym celem jaki ma zostać osiągnięty dzięki RPA, jest zautomatyzowane wykonywanie rutynowych zadań, które wcześniej wymagały interwencji człowieka.

Jak się jednak okazuje, potencjałRPA w zakresie usprawniania procesów w dłuższej perspektywie jest mocno ograniczony. Automatyzacja zadań i niwelowanie luk medialnych na poziomie front-end prowadzi do wielu zależności i uwarunkowań, które zostały podsumowane w niniejszym artykule.

Drogado zrównoważonej architektury przedsiębiorstwa (składającego się z procesów i systemów) wymaga otwartych, adaptacyjnych i charakteryzujących się wysokim stopniem
interoperacyjności na różnych poziomach mechanizmów.

Według Gartnera wspomniana technologia jest jednym z najszybciej rozwijających
się rynków oprogramowania dla przedsiębiorstw. Oprogramowanie RPA naśladuje interakcję człowieka z systemem informatycznym np. podczas odczytywania danych, ich modyfikowania i ponownego wprowadzania.

Trend ten można określić również jako technologię pomostową, ponieważ RPA nie jest w pełni zintegrowane z istniejącym krajobrazem systemowym, a wykorzystuje jedynie wierzchnią warstwę architektoniczną (mianowicie interfejs użytkownika). Dane mogą być przesyłane pomiędzy różnymi aplikacjami programowymi lub tylko pomiędzy odmiennymi modułami. W przypadku wybranych zadań, RPA może zastąpić człowieka lub interfejs programistyczny przy przenoszeniu danych między dwoma systemami oprogramowania.

Zastosowanie i struktura klasycznego oprogramowania RPA

RPA stosowane jest do zadań powtarzalnych, które charakteryzują się prostymi, jasno skonstruowanymi zasadami i wysokim stopniem standaryzacji. Punktem wyjścia są procesy, których zaletą jest szybkie przetwarzanie i przesyłanie danych. W tym przypadku użycia
RPA, aplikacja instalowana jest na kliencie.

W pierwszej kolejności tworzony jest niezbędny zestaw reguł, za pomocą których definiowane są działania użytkownika oprogramowania, które mają być zautomatyzowane. W tym celu wykorzystywany jest rejestrator makr, który zapisuje interakcje użytkownika z programami i tworzy w ten sposób szablon dla automatyzacji. Następnie nagrania są modyfikowane według konfigurowalnych reguł, na podstawie których powinien funkcjonować robot programowy. Istnieje również możliwość modelowania podstawowych zależności i warunków.

Taka konfiguracja jest możliwa dzięki edytorowi i konsoli zarządzającej, która odpowiada za rozkład obciążenia oraz monitorowanie poszczególnych robotów.

Oprogramowanie RPA charakteryzuje się tym, że działa cross-platformowo
i niezależnie od systemu. Interfejsy do poszczególnych systemów nie są konieczne, ponieważ dostęp do systemów biorących udział w procesie odbywa się poprzez odpowiednią
warstwę prezentacji. Oznacza to, że podstawowa logika istniejących systemów pozostaje nietknięta. Oprogramowanie RPA nie tworzy nowych aplikacji i nie przechowuje danych
o transakcjach.

Podstawy RPA

Rozwiązania RPA można podzielić na dwa tryby działania: RPA z obsługą i bez. System obecności umożliwia osobom fizycznym wyzwalanie działań bota w celu wykonania, zautomatyzowania i aktywnego monitorowania części procesu. Z kolei nienadzorowane RPA działa na serwerze i funkcjonuje autonomicznie.

Procesy te są w pełni zautomatyzowane przez oprogramowanie, a dzięki jego działaniu można kontrolować wiele różnych systemów. W niektórych przypadkach, kilka robotów kooperuje ze sobą i dzieli między sobą przydzielone zadania. Jakie więc szanse i możliwości wynikają z zastosowania RPA?

W dzisiejszym świecie, znaczenie sprawnych procesów w firmach stale rośnie. Dzieje się to ze względu na rozwój konkurencji a także presję rosnących kosztów. RPA obiecuje zwiększenie wydajności poprzez integrację robotów programowych wykonujących zadania za ludzkich pracowników. Można w ten sposób zautomatyzować czynności wykonywane ręcznie, przetwarzając ustrukturyzowane informacje z różnych źródeł według określonych reguł, przygotowując je lub przechowując w systemach (np. systemach ERP). Z wykorzystania RPA wynikają trzy główne możliwości:

  • Wzrost wydajności i produktywności – wykorzystanie technologii RPA jest postrzegane jako przydatne tam, gdzie automatyzacja prostych procesów może prowadzić
    do wzrostu efektywności i wydajności. Sprawność operacyjna jest ukierunkowana
    na oszczędność potrzebnego personelu, czasu, kosztów, redukcję zadań manualnych
    i nakładu pracy oraz wzrost wydajności.
  • Podniesienie jakości danych – zastosowanie RPA redukuje typowe błędy transakcyjne, takie jak nieprawidłowe wprowadzanie danych, pomijanie kroków procesu czy błędy wynikające z zastosowania reguł. Można dodatkowo zmniejszyć dzięki temu liczbę błędów ludzkich.
  • Opłacalna i niezależna od technologii alternatywa – RPA może być łatwiejsze i tańsze do wdrożenia, skonfigurowania i utrzymania w porównaniu z innymi systemami czy formami automatyzacji przedsiębiorstw. Zapewnia również użytkownikom prosty
    i intuicyjny interfejs. Popularne aplikacje oraz źródła mogą być wykorzystywane przez roboty programowe, od Mainframe do Excela i od CRM lub ERP do aplikacji internetowych. Wdrożenie jest możliwe bez zakłócenia podstawowej infrastruktury informatycznej pod warunkiem, że bazowe oprogramowanie jest kompatybilne
    z konkretnym RPA.

 

Ograniczenia RPA

RPA ma jednak również swoje ograniczenia. Obecnie główną przeszkodą w  pomyślnym wdrożeniu takiego oprogramowania jest obowiązkowy wymóg ustrukturyzowanych danych. AI i inne technologie uzupełniające mogłyby umożliwić rozszerzenie korzyści z RPA
na dane nieustrukturyzowane lub półstrukturalne.

Ponadto, system ten nie może realizować dynamicznych mechanizmów decyzyjnych. Oznacza to, że potencjalne działania są ograniczone do procesów regułowych i najlepiej, aby były oparte na prostych zasadach biznesowych. Zautomatyzowana reakcja na nieprzewidziany przebieg zleconych zadań i błędy jest ograniczona (złożona obsługa nieprawidłowości jest trudna do wdrożenia).

Choć przy okazji omawiania zalet RPA wielokrotnie podkreśla się niskie bariery techniczne i brak konieczności posiadania wiedzy programistycznej wśród użytkowników,
to wyłączna implementacja RPA na warstwie prezentacji pociąga za sobą również liczne wady. Ponieważ oprogramowanie wchodzi w interakcję z programami dopiero wtedy, gdy są one dostępne w formacie czytelnym dla człowieka, RPA rezygnuje z wielowarstwowej komunikacji sieciowej, na której opierają się konwencjonalne aplikacje.

Moduły, maski i aplikacje są odczytywane tylko przez interfejs użytkownika. Jeśli w trakcie aktualizacji softu, interfejs użytkownika zostanie zmieniony nawet w niewielkim stopniu, mogą wystąpić błędy podczas wykonywania procesów.

Zjawisko te można zauważyć szczególnie w systemach aplikacji internetowych, które charakteryzują się zmianami w wyglądzie i prezentacji. Nie jest też jasne, z jaką odpowiedzialnością i w jakim zakresie ma być kontrolowana poprawność zautomatyzowanych procesów. Oczywiste jest bowiem, że zmieniony układ przycisków czy nowa pozycja w menu na portalach takich jak Amazon jest trudna do sprawdzenia. To poważnie ogranicza możliwość skalowania potencjalnych zastosowań.

Który proces jest więc odpowiedni dla RPA?

Chociaż wdrożenie botów umożliwia osiągnięcie imponujących wyników, RPA nie spełnia roszczenia do usprawnienia wysoce złożonych procesów end-to-end i jest tylko częścią kompletnej automatyzacji. Przedsiębiorstwa po wyborze nieodpowiednich zadań
do zautomatyzowania za pomocą botów programowych ponoszą ogromne ryzyko,  mając przy tym często wyimaginowane oczekiwania. Dlatego też wybór odpowiednich procesów można uznać za największe wyzwanie w dziedzinie automatyzacji RPA. Jako kryteria wyboru odpowiedniego procesu RPA, można wykorzystać następujące cechy:

  • Proces silnie oparty na regułach – RPA wymaga przepisanej reguły dla każdej ewentualności, która musi być unikalna. Logika decyzyjna wybranego procesu jest wyrażona w kategoriach logicznych i może być niemal całkowicie przewidywalna.

 

  • Powtarzalność zadań – odpowiedni wolumen transakcji pomaga zmaksymalizować korzyści z wdrożenia botów programowych w organizacji. Są to zwykle zadania rutynowe i powtarzalne, gdzie automatyzacja jest idealnym wyborem.

 

  • Dojrzałość procesowa – do RPA nadają się ustalone procesy, które są stabilne
    i zrozumiałe dla wszystkich uczestników procesu.

 

  • Strukturalne i cyfrowe dane wejściowe – wszystkie dane wejściowe muszą być cyfrowe i w ustrukturyzowanym formacie.

 

  • Zadania transakcyjne – RPA nadaje się do zadań transakcyjnych, które są wykonywane przez ludzi i mogą być zastąpione przez roboty programowe. W szczególności można ograniczyć błędy transakcyjne (np. nieprawidłowe dane) i wykonywać wiele czynności obliczeniowych jednocześnie.

 

  • Stopień standaryzacji – procesy o wysokim stopniu standaryzacji są najbardziej odpowiednie do zastosowania