Nintex Foxtrot RPA

4 marca Nintex ogłosił, że sfinalizował przejęcie firmy EnableSoft – firmy stojącej za pakietem Foxtrot. Od tego momentu oprogramowanie RPA (Roboting Process Automation) stało się częścią rozwiązań Nintex, uzupełniając lukę między procesami biznesowymi w chmurze, a procesami wykonywanymi „lokalnie” na komputerach użytkowników.

Czym jest RPA?

Zasadniczo RPA (skrót oznacza „Robotic Process Automation”) to technologia oprogramowania, która umożliwia automatyzację różnych zadań komputerowych lub procesów biznesowych odbywających się zwykle lokalnie, na komputerach użytkowników. RPA to szerokie pojęcie automatyzacji procesów lub technologii automatyzacji przepływu pracy, używane do usprawnienia zarówno złożonych, jak i prostych procesów, które są zwykle wykonywane przez człowieka na komputerze. Automatyzację osiąga się przez wdrażanie „botów” programowych, które zostały przeszkolone w zakresie dokładnych ruchów myszy, naciśnięć klawiszy i logiki opartej na regułach leżących u podstaw danego zadania. Tym samym oprogramowanie to pomaga firmom zautomatyzować te powtarzalne zadania, które za każdym razem wyglądają tak samo – np. wprowadzanie danych z SAP do Excela, kopiowanie danych z e-maili do SAP (na przykład, gdy email inicjuje proces), przenoszenie plików pomiędzy file storage i tak dalej. Zadania te zwykle nie wymagają żadnej zaawansowanej wiedzy i mogą być wykonywane nie tylko przez wykwalifikowaną siłę roboczą, ale przez każdego. Można zatem powiedzieć, że RPA wykonuje dla nas te powtarzalne zadania, pozwalając nam skupić się na bardziej unikalnych zadaniach.

Czym jest Foxtrot?

EnableSoft stworzył produkt, którym naprawdę może wiele zrobić. Posiada setki wbudowanych akcji:

Hundreds of actions in Foxtrot
Setki akcji dostępnych w Nintex Foxtrot

Został zaprojektowany do pracy z takimi aplikacjami jak: Internet Explorer, SAP, Acrobat, Outlook, Office (Word, Excel). Pozwala także zarządzać komputerem, używać skryptów DOS/ PowerShell, łączyć się z FTP, wywoływać endpointy REST i inne. Nawet, jeśli jakaś akcja nie jest zdefiniowana, zawsze można użyć celownika do wskazania docelowej aplikacji, a następnie wybrać, jak Foxtrot powinien z nią współdziałać, np. nie istnieje wbudowane polecenie, aby wydrukować dokument, jednak utworzenie sekwencji symulującej, że użytkownik kliknie ikonę drukowania, a następnie kliknie przycisk „Drukuj”, jest również rozwiązaniem:

Nintex Foxtrot RPA bullseye functionality
Funkcjonalność „celownika” w Foxtrot

Foxtrot to pakiet zawierający 4 aplikacje. Foxtrot Administration, FoxBot, FoxHub i Foxtrot.

Foxtrot

Designer procesów. Ma ona na celu umożliwienie autorom tworzenia procesów, definiowania kroków i działań, budowania logiki. Foxtrot umożliwia również wykonywanie tych procesów, aby sprawdzić, czy działają poprawnie. Interfejs jest zbudowany z następujących sekcji:

NIntex Foxtrot RPA interface
Budowa interfejsu Nintex Foxtrot
  1. Bullseye (Celownik) – funkcjonalność wskazywania docelowej aplikacji i definiowania powiązanych akcji,
  2. Lista dostępnych akcji,
  3. Biblioteka – służy do wyszukiwania wszystkich możliwych działań i funkcjonalności,
  4. Lista zadań – krok po kroku, co proces będzie wykonać,
  5. Lista poświadczeń, połączeń, list, zmiennych i zadań wykorzystywanych przez proces,
  6. Ikona tworzenia nowego połączenia, listy, zmiennych,
  7. Menu do przełączania wyświetlania między elementami zdefiniowanymi w procesie,
  8. Pasek „execute” – funkcjonalność umożliwiająca uruchomienie procesu i przetestowanie go.

FoxBot

Po zapisaniu procesu można go następnie uruchomić na wielu komputerów. Każda maszyna – „bot” powinien mieć zainstalowaną tę aplikację. Proces można otworzyć i wykonać. FoxBot nie może dokonywać żadnych zmian w procesie. Aplikacja symuluje więc użytkownika, który uruchamia zdefiniowany przepływ.

Nintex Foxtrot RPA FoxBot interface
Interfejs aplikacji FoxBot

Interfejs FoxBota wygląda prawie tak samo jak Foxtrot – jest to uproszczona wersja, bez lewej kolumny zawierającej akcje, bibliotekę i celownik. Jest dedykowana do wykonywania procesów.

FoxHub

FoxHub jest centralnym miejscem do aranżacji zdefiniowanych zadań automatyzacji. Pozwala zobaczyć wszystkie boty i dostarcza informacji o ich statusie i tym, co robią w danym czasie. Umożliwia zarządzanie poszczególnymi botami poprzez dodanie pracy lub dodanie zadania zespołowego dla wielu botów. FoxHub uruchamia zadania w uporządkowany Sposób pobierając je z kolejki zadań.

Nintex Foxtrot RPA FoxBot interface
Interfejs aplikacji FoxHub

Praca jest wysyłana do FoxBotów, które znajdują się na ich własnej wirtualnej lub fizycznej maszynie. Podczas tworzenia nowego zadania użytkownik musi wybrać, które boty będą w nim uczestniczyć. Zadania mogą być przypisane do jednego bota lub mogą zostać skonfigurowane jako praca zespołowa umożliwiająca dołączenie wielu botów. Jeśli jest to praca zespołowa, FoxHub odpowiada za zarządzanie danymi i dystrybucję zadań do następnego dostępnego bota. Po zakończeniu projektu FoxHub rozpoczyna przydzielanie pracy dla następnego zadania w kolejce.

Foxtrot Administration

Jest to aplikacja przeznaczona do zarządzania licencjami, kontami użytkowników i innymi globalnymi ustawieniami dla wszystkich aplikacji pakietu Foxtrot.

Interfejs aplikacji Foxtrot Administration

Model licencyjny

Model licencjonowania procesów Foxtrot (lub przepływów pracy) jest zbieżny z tym, znanym z Nintex Workflow. Ważne by mieć świadomość, że subskrypcja na przepływy pracy nie obejmuje licencji na Botflows. Dlatego, jeśli chcesz mieć rozwiązanie wykorzystujące zarówno Nintex Workflow i Botflows, musisz kupić subskrypcje dla dwóch produktów osobno. Koszty subskrypcji volume-based (czyli liczbie procesów) i enterprise-wide (liczbie pracowników) są aktualnie identyczne, niezależnie od produktu. Tak więc w przypadku subskrypcji opartej na liczbie procesów można wybrać następujące pule:

  • 10
  • 25
  • 50
  • 100
  • 250
  • 500
  • I dodatkowo kupować bloki kolejnych 5 przepływów

W przypadku subskrypcji opartej na liczbie pracowników (enterprise-wide), dostępne są następujące progi:

  • 200
  • 1000
  • 5000
  • 25000
  • 100000

Subskrypcje są zawsze zobowiązaniem rocznym. Wszystkie opłaty są płacone jednorazowo, rocznie. Jeśli chcesz dowiedzieć się więcej o cenach skontaktuj się ze mną bezpośrednio.

Więcej informacji

Przykład działającego rozwiązania

Rozwiązanie, które stworzyłem, to PoC bardziej efektywnej obsługi rejestracji uczestników na konferencję i procesu rejestracji już na miejscu (check-in). Inspiracją była niedawna konferencja, którą współorganizowałem. Proces jest podzielony na dwie części. Najpierw odbywa się masowa rejestracja uczestników, zgłaszanych przez firmy, a następnie proces rejestracji na miejscu.

Pierwszy proces przebiega w ten sposób:

  1. Firma wysyła e-mail z plikiem Excel zawierającym listę uczestników do rejestracji i ich zdjęcia, spakowane w pliku ZIP.
  2. Ktoś musi następnie rozpakować plik ZIP, wykadrować zdjęcia, dostosować ich wysokość i szerokość, aby pasowały do ​​dostępnego obszaru na plakietce.
  3. Następnie dla każdego uczestnika należy wygenerować i wysłać kod QR, który następnie zostanie wykorzystany jako bilet.
  4. Następnie każdy uczestnik musi być zarejestrowany w bazie danych, a jego identyfikator musi zostać wygenerowany (jako plik). Należy również wysłać mu e-mail z potwierdzeniem rejestracji.

Ten proces został całkowicie zrealizowany przez Foxtrot i inne aplikacje obecne na komputerze. Realizacja w Foxtrot została wykonana następująco:

  1. W skrzynce pojawia się nowy e-mail zawierający konkretne słowa kluczowe w tytule.
  2. Rozpoczyna się proces w Foxtrot.
  3. Proces rozpakowuje plik ze zdjęciami.
  4. Otwiera aplikację XnView, przechodzi do folderu z rozpakowanymi obrazami, zmienia ich rozmiar i kadruje je. Przygotowane obrazy są następnie zapisywane w lokalizacji synchronizowanej z biblioteką SharePoint za pośrednictwem OneDrive dla Firm.
  5. Następnie proces otwiera plik Excel.
  6. Dla każdego wiersza (każdego uczestnika) zapisuje dane na liście SharePoint, wywołując Nintex Component Workflow (ten, który może być wyzwalany przez żądanie HTTP) i przekazując dane bieżącego uczestnika. Następnie generuje kod QR z danymi uczestników za pomocą usługi online.
  7. Przepływ (może to być również Microsoft Flow!) generuje plakietkę i zapisuje ją w formacie PDF przy użyciu funkcji Document Generation.
  8. Wreszcie Foxtrot tworzy wiadomość e-mail, dołącza kod QR i wysyła potwierdzenie do uczestnika.

Tak to działa na żywo:

Nintex Foxtrot RPA demo – rejestracja uczestników

Drugi proces jest „instalowany” na komputerze, w miejscu wydarzenia. Wyobraź sobie, że jest tam obecne urządzenie typu „kiosk” ze skanerem kodów QR i drukarką. Uczestnik podchodzi do kiosku, skanuje kod QR otrzymany po rejestracji i:

  1. FoxBot wznawia się – skanowany jest nowy kod
  2. Odczytuje dane ze skanera, pobiera e-mail użytkownika i wyszukuje w bazie danych w SharePoint, aby znaleźć identyfikator użytkownika.
  3. Po znalezieniu pobiera go i otwiera w programie Acrobat.
  4. W końcu symuluje klikanie, aby wydrukować identyfikator.
  5. Po wydrukowaniu go wywołuje również Component Workflow, który aktualizuje rekord użytkownika w SharePoint zaznaczając jego obecność i wysyła mu wiadomość powitalną zawierającą np. program konferencji, linki do prezentacji i tak dalej.

Tak działa druga część:

Nintex Foxtrot RPA demo – potwierdzanie obecności uczestnika podczas wydarzenia

Ekstra, prawda? 😊

Czego się nauczyłem

Kiedy po raz pierwszy przeczytałem o Foxtrot, zastanawiałem się, jak Nintex zamierza połączyć go z istniejącymi aplikacjami z pakietu, ale okazało się, że ta integracja już istnieje – poprzez obecne już Component Workflows i akcję HTTP w Foxtrot. W ten sposób Foxtrot może być również zintegrowany z Microsoft Flow lub innymi rozwiązaniami obecnymi w chmurze i posiadającymi interfejsy REST.

Inną rzeczą, która mi się podobała, jest szybkość nauki. Narzędzie jest intuicyjne. Dodatkowo jeśli ktoś ma doświadczenie w pracy z Flow / Nintex lub innymi narzędziami do projektowania procesów, przyswojenie podstaw używania aplikacji jest tym szybsze. Wystarczy kilka godzin, aby poznać nawet zaawansowane scenariusze.

Odkryłem jednak również, że ma trochę wad. Jedną z najbardziej irytujących jest to, że funkcjonalność celownika całkowicie przestaje działać na urządzeniach takich jak Surface Book, posiadających rozdzielczość ultraHD i skalę ustawioną na inną wartość niż 100%. Aby stworzyć poprawnie działające rozwiązanie, musiałem zmienić układ na fullHD i skalę na 100%.

Inną rzeczą jest obsługa przeglądarek internetowych. Obecnie działa tylko z przeglądarką Internet Explorer, obsługa silnika Chrome jest w drodze. Podobno ma być ona dostępna jeszcze w tym roku.

Występują również problemy z uwierzytelnianiem MFA podczas tworzenia połączeń z aplikacjami opartymi na usłudze Office 365. W moim przypadku nawet używanie haseł aplikacji nie działało w Exchange. Może zrobiłem coś nie tak?! 😊

Nie znalazłem również żadnego sposobu, aby automatycznie uruchomić/ wyzwolić działanie Bota, jeśli spełniony jest określony warunek (trigger). Ale w tym wypadku również być może nie szukałem wystarczająco dokładnie.

Niemniej jednak to narzędzie ma naprawdę duże możliwości. Pozwala wypełnić lukę w integracji między systemami, które np. nie posiadają dostępnego interfejsu API lub intergacja jest bardzo czasochłonna. Dzięki Foxtrot można po prostu skonfigurować bota pracującego na maszynie wirtualnej, który będzie pobierać dane z określonej aplikacji i zwracać je do żądającego.

Foxtrot może być również używany dla testów – można tworzyć testy użytkowników, sprawdzać określone scenariusze klikania interfejsu aplikacji i weryfikacji wyników.

Jeśli chcesz dowiedzieć się więcej o Foxtrot, skontaktuj się ze mną. Mogę ci pomóc w nauce i wdrożeniu aplikacji w Twojej firmie.