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.
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.
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:
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ń.
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: