W dobie wszechobecnej robotyzacji procesów i zapotrzebowania na kompetencje RPA wielu programistów rozważa karierę jako RPA developer. Dziś dzięki intuicyjnym narzędziom także przedstawiciele sektora biznesowego chcący usprawnić procesy w firmie mogą zacząć przygodę z narzędziami RPA. Od czego zacząć? Na początek warto poznać środowiska RPA. Jednym z najczęściej stosowanych narzędzi do automatyzacji procesów jest Blue Prism – zajrzyjmy do środka, by poznać podstawy jego działania oraz możliwości.

RPA – robotyzacja dla każdego?

Idea środowisk RPA jest taka, żeby użytkownik posiadający nawet niewielką wiedzę techniczną i programistyczną był w stanie automatyzować procesy. W robotyzacji procesów przydatne będą takie umiejętności jak:

  • zdolność analitycznego myślenia,
  • obycie biznesowe, wiedza na temat istniejących procesów,
  • pomocna może być wiedza w zakresie modelowania procesów biznesowych czy podstawy analizy biznesowej,
  • podstawy programowania (np. C#, .NET) oraz znajomość VBA, HTML, CSS z pewnością ułatwią start.

Czym jest Blue Prism?

Blue Prism to kompleksowe, zintegrowane środowisko służące do automatyzacji wybranych procesów biznesowych. Umożliwia tworzenie robotów software’owych, które przejmują powtarzalne, żmudne czynności wykonywane przez człowieka. Blue Prism został zbudowany w oparciu o Microsoft .NET Framework i umożliwia automatyzację każdej aplikacji zbudowanej na wszelkiego rodzaju platformach (mainframe, Windows, WPF, Java, web itp.). Dostawca narzędzia jest jednym z liderów w zestawieniu Gartnera, a do innych popularnych środowisk można zaliczyć np. UI Path, Automation Anywhere i PEGA. Dziś skupię się na Blue Prism, którego możliwości wykorzystuję w pracy jako RPA developer w JCommerce.

Środowisko Blue Prism – podstawy

Środowisko pracy w Blue Prism podzielone jest na dwie główne części: warstwę procesów i warstwę obiektów. Praca z narzędziem polega na projektowaniu logiki przy użyciu komponentów przypominających schematy blokowe używane do modelowania procesów biznesowych.

Elementy blokowe są odpowiednikami konstrukcji programistycznych, takich jak zmienne o różnym typie danych, konstrukcje logiczne if czy tablice, które są reprezentowane przez kolekcje (collections), a także pętle (loop) służące do łączenia (interakcji), np. po poszczególnych elementach kolekcji.

 

Blue Prism posiada również element Calculation Stage służący do wykonywania i implementowania kalkulacji za pomocą wbudowanych funkcji.

Środowisko posiada obsługę wyjątków w przypadku wystąpienia nieprzewidzianych błędów w działaniu aplikacji, błędów kalkulacji itp.

 

Warstwa procesu

Warstwa procesu odpowiedzialna jest za przechowywanie logiki biznesowej.

Na głównej stronie projektu tworzy się ogólny zarys (high level) poszczególnych kroków w procesie.

Kroki w procesie, takie jak uruchomienie aplikacji, pobranie danych, kalkulacja danych itp., dzielone są na podstrony (sub page), które są odpowiednikami funkcji czy procedur. Tak samo jak funkcje – sub page może mieć parametry wejściowe i zwracać dane.

Interakcja z poszczególnymi elementami aplikacji jest realizowana przy użyciu obiektów i zdefiniowanych w nich akcjach.

Warstwa obiektów

Obiekty w Blue Prism nie są odpowiednikami obiektów z obiektowych języków programowania.

Jeden obiekt jest dedykowany jednej aplikacji lub funkcji. Przykładowo, jeżeli chcemy zautomatyzować aplikację webową, tworzymy dedykowany dla niej obiekt posiadający zestaw akcji służący do interakcji tylko z tą aplikacją. Akcjami mogą być uruchomienie aplikacji, kliknięcie przycisku czy sczytanie tekstu z pola tekstowego. Blue Prism posiada gotowy zestaw obiektów dla najczęściej używanych aplikacji, takich jak np. Excel, Outlook, czy operacji takich jak manipulacje na ciągach tekstowych – String, manipulacje na kolekcjach itp.

Aby można było przeprowadzić interakcję z aplikacją, należy zmapować jej elementy.

Elementy te są przechowywane w narzędziu Application Modeller:

Blue Prism posiada szereg trybów mapowania (Spy modes) umożliwiających interakcję praktycznie z każdą aplikacją.

 

Jeżeli potrzebujemy dodatkowych funkcjonalności, których Blue Prism nie posiada, możemy je dodać przy pomocy Code Stage – małych kawałków kodu, które implementuje się również w obiektach.

Środowisko wspiera pisanie kodu w C# i VB.NET. W tym przypadku potrzebna jest podstawowa wiedza w zakresie programowania.

Procesowanie danych

Aby dane wejściowe mogły być procesowane, muszą być gdzieś przechowywane – w tym celu Blue Prism udostępnia strukturę kolejek (queue). Dane w kolejkach przechowywane są w tzw. itemach.

Itemem może być np. numer faktury (invoice number), numer zamówienia sprzedaży (sales order) itp. Każdy item, w zależności od tego,  na jakim jest etapie procesowania, posiada inny status.

  • Oczekujący (Pending) – jeżeli dany item ma być dopiero procesowany,
  • Zakończony (Completed) – jeżeli został już przeprocesowany,
  • Wyjątek (Exception) – jeżeli w trakcie procesowania wystąpił biznesowy lub systemowy wyjątek.

Deployment robota

Do tworzenia releasów w środowisku Blue Prism służy osobny komponent Release Manager. Release jest umieszczany w środowisku produkcyjnym i uruchamiany na maszynach wirtualnych (VDI).

Certyfikacja Blue Prism

Firma Blue Prism, w zależności od specjalizacji, jaką się wykonuje, oferuje różne ścieżki szkoleń i certyfikacji. Dla developerów wartościowe będzie posiadanie akredytacji: podstawowej BluePrism Developer oraz BluePrism Professional Developer (dla certyfikowanych developerów posiadających dużą wiedzę i doświadczenie).

Blue Prism certyfikaty dla RPA developera

Podsumowanie

Z rozwiązań RPA korzystają dziś już nie tylko globalne organizacje figurujące w rankingu Fortune 500 ale też wszystkie te firmy, którym zależy na usprawnieniu procesów i odciążeniu pracowników od wykonywania powtarzalnych zadań. Środowiska RPA takie jak Blue Prism mają niski próg wejścia, a logika biznesowa zaprojektowana w nich może być prezentowana także przedstawicielom biznesu. Czy to oznacza, że rzeczywiście każdy może automatyzować procesy?

Na pewno warto, żeby jak najwięcej programistów zainteresowało się ścieżką kariery developera RPA i możliwościami, jakie daje ten dynamicznie rozwijający się trend technologiczny. Wsparcie specjalistów RPA w organizacji to nie tylko rozwój, ale też utrzymanie i dostosowanie zaprojektowanego robota do wszelkich zmian w środowisku produkcyjnym, o czym więcej w wywiadzie: Robotics Process Automation – w czym tkwi sekret jej popularności.

Autorem wpisu jest:
RPA Developer

RPA Developer w JCommerce. Lubi zmagać się ze skomplikowanymi automatyzacjami, starając się przy tym wykorzystywać wiedzę z różnych dziedzin IT. Oprócz robotyki pasjonat programowania w technologii .NET. Prywatnie ciekawy świata miłośnik jazdy na rowerze, w szczególności turystyki rowerowej.

Dodaj komentarz

Skontaktuj się z nami

Chcesz dowiedzieć się więcej o naszych usługach? Napisz do nas – odpowiemy na każdą wiadomość.

    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma, w celach handlowych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma, w celach marketingowych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma w celach rekrutacyjnych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma na potrzeby przyszłych rekrutacji.
    W związku z obowiązującymi przepisami dotyczącymi ochrony danych osobowych tj. Ustawą o ochronie danych osobowych z dnia 10 maja 2018 roku, jak również treścią Rozporządzenia Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO), informujemy, że: 1. Administratorem danych osobowych jest JCommerce Sp. z o.o. z siedzibą w Katowicach, ul. Ściegiennego 3, 40-114 Katowice (KRS: 00007393418).
    2. Powyższe dane osobowe przetwarzane będą przez JCommerce Sp. z o.o. – w zależności od udzielonych przez Panią/Pana zgód (podstawa prawna przetwarzania: art. 6 ust. 1 pkt a) RODO):
    • w celach handlowych,
    • w celach marketingowych,
    • w celach rekrutacyjnych;
    • w celach przyszłych rekrutacji.
    3. Podanie powyższych danych osobowych nie jest wymogiem ustawowym, umownym lub warunkiem zawarcia umowy. Nie jest Pan/Pani zobowiązany/a do podania powyższych danych osobowych, jednak brak ich podania uniemożliwi realizacje ww. celu.
    4. Posiada Pan/ Pani prawo dostępu do treści swoich danych, w tym otrzymania ich kopii i ich sprostowania, usunięcia, ograniczenia przetwarzania, prawo do przenoszenia danych, prawo do sprzeciwu wobec przetwarzania, prawo do cofnięcia zgody w dowolnym momencie, jeśli została udzielona. Wycofanie zgody nie wpływa jednak na zgodność z prawem przetwarzania, którego dokonano na podstawie zgody przed jej wycofaniem; oświadczenie o cofnięciu zgody na przetwarzanie danych osobowych należy złożyć w siedzibie JCommerce Sp. z o.o. lub przesłać na adres mailowy zgody@jcommerce.pl. Cofnięcie zgody na przetwarzanie danych osobowych skutkuje brakiem możliwości realizacji ww. celów przetwarzania;
    5. Dane osobowe są udostępniane przez JCommerce Sp. z o.o. upoważnionym pracownikom i osobom współpracującym z JCommerce Sp. z o.o. na podstawie umów cywilnoprawnych, przez których realizowany jest cel przetwarzania;
    6. Wszelkie pytania dotyczące ochrony danych osobowych oraz realizacje przysługujących praw, prosimy kierować na adres odo@jcommerce.pl;
    7. W zależności od udzielonej zgody, dane osobowe będą przetwarzane przez czas niezbędny do realizacji ww. celów przetwarzania. W przypadku wniesienia sprzeciwu, JCommerce Sp. z o.o. przestanie przetwarzać Pani/Pana dane w ww. celu, chyba że będzie w stanie wykazać, że w stosunku do tych danych istnieją ważne prawnie uzasadnione podstawy, które są nadrzędne wobec Pana/Pani interesów, praw i wolności, lub niezbędne do ewentualnego ustalenia, dochodzenia lub obrony roszczeń;
    8. Nie przekazujemy Pani/Pana danych poza teren Europejskiego Obszaru Gospodarczego oraz do organizacji międzynarodowych.
    9. Pani/Pana dane osobowe nie podlegają zautomatyzowanemu podejmowaniu decyzji, w tym profilowaniu.
    10. Ma Pani/Pan prawo wniesienia skargi do organu nadzorczego gdy uzna Pan/Pani, iż przetwarzanie ww. danych osobowych narusza przepisy ogólnego rozporządzenia o ochronie danych osobowych z dnia 27 kwietnia 2016 r.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma, w celach handlowych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma, w celach marketingowych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma w celach rekrutacyjnych.
    Niniejszym wyrażam zgodę na przetwarzanie przez JCommerce Sp. z o.o. moich danych osobowych (dalej „dane osobowe”), takich jak: imię i nazwisko, adres e-mail, nr telefonu, firma na potrzeby przyszłych rekrutacji.
    W związku z obowiązującymi przepisami dotyczącymi ochrony danych osobowych tj. Ustawą o ochronie danych osobowych z dnia 10 maja 2018 roku, jak również treścią Rozporządzenia Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO), informujemy, że: 1. Administratorem danych osobowych jest JCommerce Sp. z o.o. z siedzibą w Katowicach, ul. Ściegiennego 3, 40-114 Katowice (KRS: 00007393418).
    2. Powyższe dane osobowe przetwarzane będą przez JCommerce Sp. z o.o. – w zależności od udzielonych przez Panią/Pana zgód (podstawa prawna przetwarzania: art. 6 ust. 1 pkt a) RODO):
    • w celach handlowych,
    • w celach marketingowych,
    • w celach rekrutacyjnych;
    • w celach przyszłych rekrutacji.
    3. Podanie powyższych danych osobowych nie jest wymogiem ustawowym, umownym lub warunkiem zawarcia umowy. Nie jest Pan/Pani zobowiązany/a do podania powyższych danych osobowych, jednak brak ich podania uniemożliwi realizacje ww. celu.
    4. Posiada Pan/ Pani prawo dostępu do treści swoich danych, w tym otrzymania ich kopii i ich sprostowania, usunięcia, ograniczenia przetwarzania, prawo do przenoszenia danych, prawo do sprzeciwu wobec przetwarzania, prawo do cofnięcia zgody w dowolnym momencie, jeśli została udzielona. Wycofanie zgody nie wpływa jednak na zgodność z prawem przetwarzania, którego dokonano na podstawie zgody przed jej wycofaniem; oświadczenie o cofnięciu zgody na przetwarzanie danych osobowych należy złożyć w siedzibie JCommerce Sp. z o.o. lub przesłać na adres mailowy zgody@jcommerce.pl. Cofnięcie zgody na przetwarzanie danych osobowych skutkuje brakiem możliwości realizacji ww. celów przetwarzania;
    5. Dane osobowe są udostępniane przez JCommerce Sp. z o.o. upoważnionym pracownikom i osobom współpracującym z JCommerce Sp. z o.o. na podstawie umów cywilnoprawnych, przez których realizowany jest cel przetwarzania;
    6. Wszelkie pytania dotyczące ochrony danych osobowych oraz realizacje przysługujących praw, prosimy kierować na adres odo@jcommerce.pl;
    7. W zależności od udzielonej zgody, dane osobowe będą przetwarzane przez czas niezbędny do realizacji ww. celów przetwarzania. W przypadku wniesienia sprzeciwu, JCommerce Sp. z o.o. przestanie przetwarzać Pani/Pana dane w ww. celu, chyba że będzie w stanie wykazać, że w stosunku do tych danych istnieją ważne prawnie uzasadnione podstawy, które są nadrzędne wobec Pana/Pani interesów, praw i wolności, lub niezbędne do ewentualnego ustalenia, dochodzenia lub obrony roszczeń;
    8. Nie przekazujemy Pani/Pana danych poza teren Europejskiego Obszaru Gospodarczego oraz do organizacji międzynarodowych.
    9. Pani/Pana dane osobowe nie podlegają zautomatyzowanemu podejmowaniu decyzji, w tym profilowaniu.
    10. Ma Pani/Pan prawo wniesienia skargi do organu nadzorczego gdy uzna Pan/Pani, iż przetwarzanie ww. danych osobowych narusza przepisy ogólnego rozporządzenia o ochronie danych osobowych z dnia 27 kwietnia 2016 r.