Optymalizacja testów SAP za pomocą sztucznej inteligencji.

lip 12, 2021 | SAP

Cykliczne aktualizacje systemu SAP, a także migracje do kolejnych wersji aplikacji (na przykład do SAP S/4 Hana) to przedsięwzięcia, które wymagają dobrze zaplanowanej strategii działania. Poszczególne funkcjonalności wraz ze zmodyfikowanymi elementami tworzą gąszcz zależności. Dlatego aktualizacja czy migracja do SAP wymaga odpowiedniej strategii działania i wykorzystania narzędzi. Właściwe narzędzia ograniczą błędy oraz ilość poświęconej na to zadanie pracy. Niezbędna staje się optymalizacja testów SAP.
W poniższym tekście dowiesz się w jaki sposób możesz ograniczyć liczbę testów i błędów w systemie SAP za pomocą metody RBT i „SAP Change Impact Analysis” od Tricentis.

System ERP SAP jest znany organizacjom, które potrzebują sprawnie zarządzać zasobami i efektywnie realizować procesy zachodzące w firmie. Dobrze znana jest również złożona struktura SAP, która na etapie wdrożenia systemu w organizacji, zazwyczaj jest dostosowywana do specyficznych wymagań każdego klienta. Zalety takiego podejścia są oczywiste. Niemniej jednak złożony system SAP wymaga zarówno długotrwałego wdrażania, jak i szczególnej uwagi przy dokonywaniu wszelkich aktualizacji. 

Przetestowanie każdej funkcjonalności systemu, która przeszła aktualizację, wymagałoby wielu godzin pracy i wiązałoby się z poniesieniem ogromnych kosztów. A przecież na weryfikację systemu po aktualizacji nie można poświęcić tyle czasu, ile zajmuje producentowi jej opublikowanie czy nawet wypuszczenie nowej wersji systemu.

Jak zatem w racjonalny sposób podejść do weryfikacji systemu, żeby sprawdzić wszystko, co potrzeba, a jednocześnie przyspieszyć proces wdrożenia?

Optymalizacja testów SAP – nakład pracy i kosztów wymaganych na testy

Złożoność aktualizacji dużych systemów od dawna spędza sen z powiek osobom odpowiedzialnym za ich wdrażanie. Długie godziny jakie poświęcamy aktualizacji oprogramowania możemy zniweczyć w zaledwie kilka sekund przez jedną usterkę, która uniemożliwi obsługę kluczowych procesów biznesowych.

Etap testów jest w tym przypadku krytycznym i jednocześnie pracochłonnym elementem całego przedsięwzięcia. Na weryfikację wszystkich funkcjonalności systemu po podniesieniu wersji nigdy nie ma wystarczająco wiele czasu nawet przy wykorzystaniu automatyzacji. 

Zależy nam na sprawnym przebiegu aktualizacji czy migracji do nowego systemu. Zmianę wykonujemy zgodnie z harmonogramem, w związku z tym jesteśmy ograniczeni czasowo. Żeby przedsięwzięcie zmieściło się w zaprojektowanych ramach musimy zoptymalizować zakres testów SAP. Powinniśmy również skupić uwagę na kluczowych obszarach biznesowych. Musimy też wziąć pod uwagę te, które są najbardziej narażone na ryzyko wystąpienia błędów.

Z tego względu  odpowiednia strategia w obszarze testowania będzie miała kluczowe znaczenie dla powodzenia aktualizacji czy też migracji do wyższej wersji systemu.

Optymalizacja testów SAP – na czym polega testowanie oparte na ryzyku (RBT)? 

Podstawowym założeniem metodyki RBT jest intensywne testowanie zakresu o najwyższym poziomie ryzyka. Dobieramy takie techniki projektowania przypadków testowych, które gwarantują najlepsze pokrycie testami tych obszarów. Zakresy o niższym poziomie ryzyka możemy testować mniej intensywnie.

Jak podkreślałam wcześniej, w większości przypadków pełne testowanie nie jest możliwe. Nie tylko w praktyce, ze względu na ograniczenia zasobów i czasu, ale nawet w teorii. Dlatego, że ze względu na złożoność produktów należałoby poświęcić na testy kilka lat. W tej sytuacji zgodne z intuicją jest założenie, że najistotniejsze jest znalezienie problemów, które mogą przynieść największe straty.

RBT to testowanie nastawione na wykrycie i dostarczenie informacji o ryzykach produktowych. Czyli potencjalnych obszarach wystąpienia awarii (przyszłych niekorzystnych zdarzeń lub niebezpieczeństw) w oprogramowaniu lub systemie. Przykładowo, takich jak dostarczanie błędnego oprogramowania, lub niedostateczne atrybuty oprogramowania (np. funkcjonalność, niezawodność, użyteczność lub wydajność).

Ryzyko możemy tutaj interpretować jako prawdopodobieństwo, że niewykrycie konkretnego błędu przy aktualizacji lub migracji do wyższej instancji, przełoży się na negatywny wpływ na użytkownika systemu.

Optymalizacja testów SAP w RBT zakłada zmniejszenie pracochłonności na etapie realizacji przez ograniczenie zakresu testów.

Ocena krytycznych modułów biznesowych jest pierwszym krokiem w ustalaniu priorytetów dla testów.  W kolejnym kroku identyfikujemy ryzyka i oceniamy prawdopodobieństwo oraz skutki ich wystąpienia. Mamy na uwadze wymagania biznesowe, oraz skupiamy się przede wszystkim na procesach najbardziej znaczących biznesowo.

Oceny prawdopodobieństwa wystąpienia ryzyka dokonuje się głównie na podstawie zakresu wdrażanych zmian, złożoności oprogramowania i jego wpływu na działanie biznesowe. Rozmiar skutków wystąpienia ryzyka interpretujemy często jako stopień wpływu na użytkowników, klientów i innych interesariuszy. Czynnikami wpływającymi na ryzyko będzie np. częstotliwość używania danej funkcji lub potencjalne straty finansowe.

Testowanie oparte na ryzyku

Identyfikacji ryzyka najczęściej dokonuje się w ramach warsztatów, w których uczestniczą osoby bezpośrednio odpowiedzialne za projekt. Innymi sposobami mogą być:

  • burza mózgów,
  • wywiad z ekspertami w konkretnych dziedzinach,
  • tworzenie diagramów,
  • a także analiza problemów w działaniu oprogramowania, które wydarzyły się w przeszłości.

W kolejnym kroku przeprowadzamy analizę ryzyk, która polega na:

  • przestudiowaniu zidentyfikowanych obszarów ryzyk,
  • przypisaniu ich do odpowiednich kategorii
  • oraz określeniu prawdopodobieństwa i wpływu ich wystąpienia.

W tym przypadku przydatne będą techniki takie jak ankiety, analiza wrażliwości czy Planning Poker. 

Optymalizacja testów SAP powinna być przeprowadzona na podstawie planu, który wynika ze zidentyfikowanego ryzyka i jego parametrów. Używamy w tym celu technikę priorytetyzacji „MoSCoW” przedstawioną na wykresie:

Rys. 1. Wykres powiązań wpływu i prawdopodobieństwa wystąpienia ryzyka

Pole wykresu dzielimy na cztery części, w zależności od prawdopodobieństwa wystąpienia ryzyka i jego wpływu. Każda część ma przypisany priorytet realizacji testów:

MUST TEST (II) -musi być testowane;

SHOULD TEST (IV) -powinno być testowane;

COULD TEST (I) -może być testowane;

WON’T TEST (III) -nie będzie testowane.

Ćwiartka pozwala nam określić, na jakim poziomie należy testować dany obszar (testy modułowe, integracyjne, akceptacyjne, inne). Wskazuje również metodę projektowania przypadków użycia i wyboru techniki testowania.

Problem oceny ryzyka

Zalety stosowania metody RBT są oczywiste. Jej wadą jest jej duża pracochłonność planowania testów i konieczność zaangażowania w ten proces najważniejszych interesariuszy, czyli zazwyczaj najbardziej zapracowanych członków zespołu. W efekcie niewiele firm przeprowadza formalną ocenę ryzyka. Zakres testów planujemy zwykle w oparciu o intuicję i doświadczenie zespołów testowych.

Wykorzystanie metody RBT ma wiele zalet, ale nie jest prostym procesem. Duża odpowiedzialność spoczywa na osobach, którym powierzono optymalizację procesu testowania. Do całego zagadnienia należy podchodzić rozważnie, ponieważ zbyt daleko posunięta optymalizacja testów SAP może nie zapewnić odpowiedniej jakości, jakiej oczekuje się po wdrożeniu lub aktualizacji systemu.

W takiej sytuacji osobom odpowiedzialnym niełatwo uzasadnić zakres optymalizacji testów, a metody planowania testów wspierające RBT są bardzo czasochłonne. Często zespół podejmuje się działań asekuracyjnych, szeroko testując każdą zmianę na środowisku. 

Chcemy przetestować niemal wszystko, a to wydłuża czas potrzebny na przeprowadzenie testów i zwiększa zaangażowanie po stronie kluczowych specjalistów. Staje się także zaprzeczeniem całej idei, jaka stoi za metodą RBT. 

Mamy zatem do czynienia z próbą wykorzystania optymalizacji procesu testowego SAP, choć de facto przypomina to przeprowadzenie pełnej listy kontrolnej, jak u pilotów przygotowujących start maszyny pasażerskiej. 

Czy jest inny sposób, aby ułatwić sobie zadanie i zmniejszyć ciężar odpowiedzialności?

Zagadnienia QA dla biznesu są skomplikowane i pracochłonne. Ponieważ tradycyjna analiza wpływu zmiany na środowiska systemów nie wskazuje, które obszary powinniśmy przetestować (informuje tylko o tym, który obszar ulegnie zmianie), od dawna poszukujemy rozwiązania, które rozwiąże ten problem.

Na szczęście w przypadku SAP istnieje narzędzie firmy Tricentis automatyzujące cały proces optymalizacji zakresu prowadzonych testów. Inteligentna analiza wpływu („SAP Change Impact Analysis”) umożliwia ciągłe testowanie SAP. Koncentruje zakres testów na obiektach krytycznych z perspektywy organizacji i specyficznych dla niej implementacji SAPa.

Analiza wpływu oparta na sztucznej inteligencji

Wyeliminowanie nadmiernej aktywności w obszarze testowym ma kluczowe znaczenie dla kosztów przedsięwzięcia oraz szybkości jego wdrożenia. Narzędzie „SAP Change Impact Analysis” firmy Tricentis skanuje cały obszar danych, które mają wpływ na funkcjonowanie systemu SAP w organizacji.

Automatyczna analiza oparta na sztucznej inteligencji identyfikuje ryzyko, jakie aktualizacja stwarza dla procesów biznesowych SAP. Dotyczy to zarówno integracji systemów, niestandardowego kodu, jak i bezpieczeństwa itd.

Narzędzie w swojej analizie nie pomija żadnych dotychczas wykorzystywanych elementów środowiska SAP, takich jak:

  • moduły ECC (zastąpione przez SAP S / 4HANA),
  • hurtownie danych BW w wersjach sprzed HANA,
  • moduły CRM,
  • zestawy aplikacji Fiori
  • oraz oczywiście najnowszą wersję SAP, czyli S/4 HANA.

Rys. 2. Automatyczna analiza w „SAP Change Impact Analysis”.

„SAP Change Impact Analysis” dzięki zgromadzonym informacjom ostrzega użytkowników biznesowych i testerów o obiektach, najbardziej narażonych na wystąpienie błędów po wdrożeniu danej aktualizacji.

Standardowe środowisko SAP może zawierać do trzech tysięcy obiektów, z czego 1/3 dostosowuje się bezpośrednio dla konkretnego klienta.  Weryfikowanie tego typu danych metodą RBT bez wsparcia „SAP Change Impact Analysis” jest praktycznie niemożliwie. Rozwiązanie Tricentis wykonuje to zadanie automatycznie, z wykorzystaniem AI, redukując w ten sposób wyjściowy zakres testów nawet o 85%.

Rys. 3. Wsparcie oceny ryzyka za pomocą inteligentnej analizy „SAP Change Impact Analysis”.

„SAP Change Impact Analysis” informuje o zagrożeniach, ale również dokładnie wskazuje, co należy przetestować.  Dzięki temu nasz proces testowy znacznie przyspiesza, a liczba błędów przedostających się na środowisko produkcyjne redukowana jest do zera. 

Uruchamiaj mniej testów dzięki „SAP Change Impact Analysis”

Dzięki automatycznej analizie danych, narzędzie Tricentis identyfikuje zakres potrzebny do wykonania testów.  Działanie opiera się na trzech krokach:

1. Rozpoznanie wykorzystywanych obiektów

Narzędzie sprawdza, które dane konfiguracyjne, a także ustawienia zabezpieczeń i obiekty ze środowiska SAP (np. kod ABAP, API) wykorzystywane są w procesach biznesowych. „SAP Change Impact Analysis” opiera się tutaj na wykorzystaniu informacji zwrotnych bezpośrednio z systemu produkcyjnego

2. Identyfikacja elementów, na które oddziaływać będzie zmiana 

„SAP Change Impact Analysis” na tym etapie analizuje kod wdrożonej zmiany w kontekście jej wpływu na zidentyfikowane obiekty. Chodzi o to, aby zidentyfikować wszystkie elementy środowiska SAP, jakie będą „dotknięte” zmianą

3. Ocena ryzyka

Ostatni krok polega na Selekcji obiektów pod kątem tego,  jak bardzo narażone są na ryzyko wystąpienia błędów. 

Ciekawostką jest to, że narzędzie od razu wskazuje minimalny zakres, który należy przetestować w takiej sytuacji.Automatycznie porównuje wyniki analizy z istniejącym już zakresem przypadków testowych i skryptów automatycznych w Tosca (narzędzie do automatyzacji). Wskazuje konkretne obiekty, dla których należy zaprojektować dodatkowe testy funkcjonalne.

Rys. 4. Mapa obiektów środowiska SAP. Rozmiar i kolor poszczególnych kafelków jest powiązany z tym jak istotne są dla i podatne na ryzyko.

Minimalizacja ryzyka wystąpienia błędów na produkcji

„SAP Change Impact Analysis” w unikalny sposób prezentuje analizę wpływu zmiany, wykorzystując do tego mapę, która grupuje wszystkie wyniki. Mapa ta składa się z kafelków, a ich rozmiar odzwierciedla, jak często używamy obiektu w systemie produkcyjnym.Dodatkowo wykorzystywane są kolory, które informują, jak bardzo dany obiekt dotknięty jest wpływem zmiany.  

Narzędzie pozwala na bardzo wygodny przegląd wyników inteligentnej analizy wpływu.  Wystarczy kliknąć dowolny element na mapie, aby uruchomić możliwość podglądu danych prezentowanych już na tradycyjnych wykresach.  

W wersji finalnej raport eksportowany jest do  tradycyjnego arkusza Excel, w którym pogrupowane obiekty ułożone są zgodnie z kolejnością — zaczynając od najbardziej narażonych na ryzyko. 

Rys. 5. Rezultat inteligentnej analizy wpływu – diagramy i arkusz z ryzykownymi obszarami

Bardzo ciekawą funkcjonalnością jest możliwość wykorzystania wyników uzyskanych w „SAP Change Impact Analysis” do automatycznego zaplanowania zakresu testów do realizacji.  Jest to możliwe, ponieważ „SAP Change Impact Analysis” bezproblemowo integruje się z narzędziem do automatyzacji testów Tosca, a także z narzędziem do zarządzania testami qTest (więcej o qTest dowiesz się z tego tekstu).

„SAP Change Impact Analysis” potrafi przeanalizować istniejące w tych systemach scenariusze testowe i wskazać, jaki jest ich stopień pokrycia oraz gdzie są braki. Wszelkie wykryte luki w testach SAP są automatycznie dodawane jako wymagania, aby można było tworzyć zautomatyzowane przypadki testowe, wypełniające te braki. Rezultatem jest kompleksowe pokrycie najważniejszych transakcji biznesowych. 

Rys. 6. Integracja „SAP Change Impact Analysis” z narzędziem do automatyzacji testów Tosca.

Podsumowanie

Jeśli Twoja organizacja wykorzystuje system SAP, a Twoje procesy biznesowe opierają się na niestandardowym kodzie i aplikacjach innych firm zintegrowanych z tym systemem,  to musisz zwracać   szczególną uwagę na ryzyko  wynikające z aktualizacji lub migracji tego systemu. 

Mimo że aktualizacje systemu są nieodłącznym elementem w rzeczywistości, to ryzyko zatrzymania procesów biznesowych niesie za sobą kosztowne opóźnienia i straty finansowe oraz wizerunkowe. Ograniczenie tego ryzyka wymaga przyjęcia odpowiedniej strategii  wydajności testowania. Dzięki narzędziu „SAP Change Impact Analysis” jesteś w stanie w bezpieczny sposób przeprowadzać niezbędne prace utrzymaniowe dla systemu ERP, optymalizując zakres testów do niezbędnego bezpiecznego poziomu. Zaletą rozwiązania „SAP Change Impact Analysis” jest to, że można je wykorzystywać w mniejszych cyklicznych aktualizacjach SAP oraz bardzo dużych i skomplikowanych działaniach, takich jak migracja do SAP S/4 Hana.

Jeśli interesuje Cię więcej informacji na ten temat, skontaktuj się z naszym ekspertem. Soflab z wykorzystaniem narzędzi firmy Tricentis jest w stanie Ci pomóc na każdym etapie strategii zarządzania ryzykiem testowym.

Polecamy również