Jesteśmy już przyzwyczajeni do widoku fabryk, gdzie roboty zastępują ludzi w wykonywaniu powtarzalnych czynności. Koncepcja Robotic Process Automation (RPA) przenosi tę wizję również do biura – do czynności, jakie wykonujemy w aplikacjach ERP, CRM, MS Office, email…

Robotic Process Automation oznacza tworzenie robotów software’owych (botów), które symulują działanie użytkowników, wykonujących określone, powtarzalne zadania w systemach IT. Można to również określić jako tworzenie ‘cyfrowych pracowników’.

Dlaczego RPA?

Uruchomienie ‘botów’ do wykonywania rutynowych czynności daje firmie szereg korzyści:

  • zmniejszenie pracochłonności i przyspieszenie realizacji powtarzalnych czynności,
  • ograniczenie liczby błędów – w porównaniu z manualnym wprowadzaniem danych,
  • większa satysfakcja pracowników, których możemy zwolnić z monotonnych zadań i przenieść do ciekawszych prac,
  • możliwość wprowadzenia dodatkowych raportów lub punktów kontrolnych w procesach, które wcześniej były zbyt pracochłonne do realizacji (widzieliśmy ich potrzebę w firmie, lecz nie mieliśmy „mocy przerobowych” do ich obsługi).

Jak to się robi?

Narzędzia Robotic Process Automation to wyspecjalizowane programy, które potrafią kontrolować inne aplikacje i ułożyć ich działanie w uporządkowaną sekwencję (dobrze określa to angielski termin ‘orchestrate’, który trudno zastąpić jednym polskim słowem).

Zależnie od rodzaju aplikacji, robot steruje jej działaniem na różne sposoby:

  • wywoływanie API (web service, REST) – o ile system udostępnia taki rodzaj interfejsu,
  • zapisywanie/odczytywanie plików z dysku lub z serwera FTP,
  • automatyczne wysyłanie/odbieranie wiadomości email,
  • symulowanie pracy użytkownika, który „klika” na odpowiednie pola i przyciski na stronie www lub w aplikacji.

Ten ostatni sposób (symulowanie pracy użytkownika z aplikacją) daje ogromną elastyczność i sprawia, że w zasadzie dla bota „nie ma rzeczy niemożliwych”. Jeśli użytkownik jest w stanie wykonać pewną czynność w aplikacji poprzez wybór funkcji z menu i wprowadzanie danych na ekranie, robot RPA może te kroki odtworzyć. Jest to podejście zbliżone do techniki ‘batch input’ w systemach SAP. Jednak, w przeciwieństwie do batch input, nie jest ograniczone tylko do ekranu SAP Gui, lecz może obejmować również dowolne inne aplikacje oraz strony www.

Kamila Malanowicz, Menedżer Obszaru Research & Development, All for One Poland

RPA – inteligentne oszczędności

Automatyzacja procesów biznesowych może być jednym z bardziej efektywnych rozwiązań, jeśli poszukujemy inteligentnych oszczędności. Poza oczywistymi korzyściami zyskujemy także większą satysfakcję pracowników oraz kolejne wskaźniki do analizy działań firmy.

Jednak by uzyskać najlepsze efekty, warto zwrócić się do doświadczonego partnera biznesowego. Wspólnie przeprowadzona analiza obecnego przepływu danych, sugestie partnera związane z możliwymi optymalizacjami i wytypowanie najwłaściwszych, przynoszących najlepsze efekty punktów do automatyzacji to, obok kompetencji technicznych i programistycznych, ważne działania, jakich powinniśmy oczekiwać od partnera.

Kamila Malanowicz, Menedżer Obszaru Research & Development, All for One Poland

Przykładowe scenariusze

RPA to podejście bardzo elastyczne, które możemy zastosować wszędzie tam, gdzie użytkownicy aplikacji wykonują powtarzalne czynności, opisane jednoznacznymi regułami. Poniżej przedstawiamy kilka typowych scenariuszy, w których warto to rozważyć:

Wprowadzanie tych samych danych do wielu systemów

Często dane podstawowe, takie jak: dostawcy, odbiorcy, pracownicy lub produkty muszą być zakładane w wielu różnych aplikacjach (jeśli te aplikacje nie są jeszcze połączone automatycznymi interfejsami). Na przykład nowego klienta musimy wprowadzić w systemie ERP, w systemie CRM oraz w aplikacji serwisowej. Nowy produkt trzeba dodać do systemu ERP oraz oddzielnie do systemu zarządzającego sklepem internetowym. Nowego pracownika tworzymy w systemie kadrowym, w systemie F-K (jako odbiorcę płatności, do rozliczania delegacji i zakupów) oraz w firmowym intranecie. Możemy wskazać botowi RPA nr klienta lub produktu w jednym z systemów i zdefiniować logikę automatycznego powielenia tych danych do kolejnych aplikacji.

Masowe aktualizacje/weryfikacja danych

Czasem korzystamy z zewnętrznych serwisów informacyjnych, aby aktualizować dane w systemie ERP lub CRM. Na przykład okresowa weryfikacja, czy wszyscy klienci są zarejestrowani jako czynni podatnicy VAT lub pobranie informacji o obrotach klientów do CRM, na podstawie numerów DUNS. Jeśli „nauczymy” bot-a wykonywać taką operację dla pojedynczego klienta, zostanie ona automatycznie powtórzona bez względu na to, czy mamy setki, czy miliony rekordów do aktualizacji.

Księgowanie danych dostarczonych w plikach

Jeśli wykonujemy powtarzalne księgowania (do których nie został jeszcze przygotowany mechanizm importu do systemu), to bot RPA jest idealnym narzędziem do automatyzacji takiego procesu. Na przykład plik danych z rozliczeniem kart paliwowych, zbiorcza faktura z biura podróży, lista faktur do wystawienia przesłana w excelu z działu serwisu itp.

Obsługa przychodzących wiadomości e-mail

Każda organizacja otrzymuje powtarzalne wiadomości e-mail, dla których można częściowo lub nawet całkowicie wyeliminować udział ludzi przy ich obsłudze. Przykładowo maile z fakturami od dostawców przesyłane na adres: faktury@naszafirma.com mogą być automatycznie weryfikowane (czy są wysłane z adresu mailowego przypisanego do jednego z dostawców w ERP i czy zawierają załącznik w PDF), a następnie inicjować proces weryfikacji i księgowania faktury w systemie ERP.

W wariancie najprostszym – załącznik z fakturą będzie dodany do systemu księgowego i dalej już ‘manualnie’ analizowany i księgowany. W wariancie bardziej zaawansowanym – bot z obsługą OCR może automatycznie zinterpretować i zaksięgować taki dokument. Poinformuje operatora tylko jeżeli wystąpi nieoczekiwana sytuacja – skan faktury jest nieczytelny lub układ dokumentu nie pasuje do żadnego z wzorców.

Kolejny przykład to maile z pytaniami o potwierdzenie salda od naszych kontrahentów. Jeśli ustalimy dla takich pytań dedykowaną skrzynkę mailową (np. salda@naszafirma.com) to bot może automatycznie sprawdzić, czy mail pochodzi od jednego ze zdefiniowanych kontrahentów, następnie pobrać status rozliczeń z systemu finansowego i odesłać tę informację do dostawcy – eliminując całkowicie pracę księgowości przy tym monotonnym zadaniu.

Automatyczne generowanie powiadomień lub raportów

Kierownicy regularnie przygotowują różnego rodzaju zestawienia na temat pracy swoich zespołów, aby obliczyć i raportować różne wskaźniki (KPI). Dane źródłowe do tych zestawień są już udostępnione przez różne aplikacje w firmie, lecz ich „obróbka” wiąże się z dodatkowymi manualnymi krokami. Na przykład eksport zestawień do Excela, łączenie danych z kilu źródeł, dodanie formuł obliczeniowych, na koniec eksport do pliku PDF i przesłanie mailem dalej.

O ile reguły tworzenia takich zestawień są jednoznaczne i stałe (a powinny takie być, jeśli raporty KPI mają być porównywalne pomiędzy kolejnymi okresami), to robot RPA sprawdzi się w takim zadaniu znacznie lepiej niż człowiek, który po wielu godzinach pracy może wziąć dane z niewłaściwego miesiąca lub wkleić błędną formułę do obliczeń.

Dodatkowe punkty kontrolne w procesie

Serwisant, na którym ‘wisi’ kilka pilnych zgłoszeń poszedł nagle na L4 i nikt nie zajął się tymi sprawami. Handlowiec ma zaplanowane zbyt wiele wizyt u klientów w przyszłym tygodniu, ale jest tak zajęty bieżącymi ofertami, że nie ma czasu przekazać tych klientów do innej osoby. Planowane faktury nie zgadzają się z tym, co faktycznie zafakturowaliśmy w danym miesiącu, ale nikt nie ma czasu prześledzić tych danych w podziale na klientów i projekty, mamy tylko łączną kwotę rozbieżności…

Każdą z opisanych powyżej sytuacji można w prosty sposób kontrolować i powiadomić odpowiednich specjalistów lub menedżerów, zanim skutki wpłyną na wyniki firmy lub relacje z klientami. Jednak w praktyce zwykle nie mamy komu zlecić tych prostych działań kontrolnych. Dowiadujemy się o problemie dopiero kiedy jest „pożar” do ugaszenia… Bot RPA idealnie nadaje się do takich zadań. Może zalogować się do kilku systemów i porównać informacje z nich (np. lista zgłoszeń w systemie serwisowym, lista spotkań z klientami w CRM, nieobecności pracowników – w systemie HR, planowane faktury – w ERP itd.) Jeśli ustalone reguły nie są spełnione , wysyła ostrzeżenia i eskaluje sprawę – zależnie od jej pilności. Na przykład wizyta u klienta zaplanowana w tym samym czasie, kiedy handlowiec jest na urlopie – powiadomienie do szefa zespołu. Kwota wystawionych faktur niższa niż planowane przychody z danego projektu – ostrzeżenie do kierownika projektu, że zapomniał o wprowadzeniu dokumentu lub trzeba zaktualizować plan fakturowania.

Kiedy RPA?

Z przedstawionych powyżej scenariuszy można wybrać kilka ogólnych sytuacji, kiedy warto rozważyć RPA:

  • czynności, które są powtarzalne – codziennie, co tydzień lub co miesiąc, w podobnej formie,
  • czynności, które można opisać jednoznacznymi regułami,
  • procesy ‘na styku’ dwóch lub więcej aplikacji – nie jest to warunek konieczny, ale wtedy zwykle uzyskamy większe oszczędności czasu, eliminując manualne łączenie lub porównywanie danych, które obecnie wykonują użytkownicy.

Następne kroki

Jeśli powyższe sytuacje brzmią znajomo i odnajdujecie Państwo takie scenariusze w swojej organizacji, to mamy dobrą wiadomość. Wdrożenie opisanych w tym artykule rozwiązań to relatywnie prosty projekt, w porównaniu z innymi przedsięwzięciami na styku IT i biznesu. Współczesne narzędzia RPA pozwalają wykonać wstępny projekt, tzw. ‘proof of concept’, w ciągu kilku dni. W krótkim czasie można więc zademonstrować korzyści z automatyzacji na wybranym wycinku realnego procesu i na faktycznych próbkach danych Państwa organizacji. Na etapie wstępnego projektu nie jest też wymagany zakup licencji, zwykle możemy skorzystać z wersji ‘trial’ narzędzi – np. 30-dniowej – co jest zupełnie wystarczające do oceny przydatności rozwiązania, bez ryzyka wydatków dla firmy i rozczarowania efektem końcowym.

Również późniejsze „pełne” wdrożenie procesu RPA nie stanowi dużego obciążenia dla organizacji. Zależy to oczywiście od skali i złożoności automatyzacji, którą planujemy, lecz jest to raczej projekt z harmonogramem liczonym w tygodniach, a nie miesiącach. Narzędzia RPA pozwalają część procesu i logiki przetwarzania „wyklikać” na ekranie, jedynie bardziej złożone elementy automatyzacji wymagają umiejętności programistycznych. Dlatego również utrzymanie ‘robota’ i bieżące aktualizacje (np. zmiany reguł biznesowych) nie muszą wiązać się ze wsparciem firmy zewnętrznej. W ramach wdrożenia RPA prowadzi się szkolenie dla kluczowych użytkowników – opiekunów procesu – którzy będą się tym zajmować w przyszłości.

RPA dla SAP – przykładowe scenariusze zastosowania

Podczas wdrożenia SAP organizacja przygotowuje szereg automatycznych mechanizmów i raportów, korzystając z języka programowania ABAP, platformy integracyjnej SAP PI bądź hurtowni danych SAP. W miarę upływu czasu odkrywamy jednak nowe obszary do usprawnienia. Zachodzą też zmiany w otoczeniu systemu – np. wdrożenie nowych aplikacji, które muszą wymieniać dane z SAP. Nawet jeśli inne aplikacje nie oferują odpowiednich interfejsów (API) lub jeśli nie mamy możliwości prowadzenia własnych prac programistycznych w SAP (np. ściśle kontrolowany centralny system korporacyjny), to bot RPA – symulujący pracę użytkownika – poradzi sobie z tymi ograniczeniami.

Poniżej przedstawiamy przykładowe scenariusze automatyzacji w SAP:

  • masowe tworzenie lub zmiany danych podstawowych,
  • aktualizacja cenników,
  • aktualizacja limitów kredytowych,
  • okresowe księgowanie danych na podstawie plików (karty paliwowe, rozliczenia firmowych kart płatniczych itp.),
  • automatyczne wysyłanie zapytań o saldo lub generowanie potwierdzeń sald dla kontrahentów, na podstawie przychodzących maili,
  • wykonywanie innych sekwencji czynności związanych z zamknięciem miesiąca lub roku,
  • nadzorowanie działania interfejsów (np. porównanie listy technicznych komunikatów IDOC i faktur zaksięgowanych w systemie jako weryfikacja, czy wszystkie komunikaty zostały poprawnie przetworzone),
  • przygotowywanie raportów dla zarządu, łączących informacje z kilku źródeł danych w systemie (np. koszty, sprzedaż, czas pracy).