Testy oprogramowania dla bankowości: zwinny proces jest trendy
By prowadzić efektywne testy rozwiązań IT dla bankowości, potrzeba nie tylko odpowiednich ludzi i narzędzi. Czasami powodzenie procesu zależy od przyjętej metodyki procesu. Włączenie testerów na każdym etapie może przyśpieszyć prace i poprawić efekt końcowy.
Z tego artykułu dowiesz się:
- dlaczego testowanie aplikacji bankowych to nie „przeklikanie aplikacji”
- jakie są skutki niewychwycenia błędów w aplikacjach bankowych
- jakie rozwiązania stosuje się, by usprawnić pracę testerów
- czy Agile można zastosować do testowania
- jak wiedza dziedzinowa pomaga w testowaniu oprogramowania dla bankowości
Aplikacje bankowe są bardzo złożone, a jednocześnie wymaga się od nich maksymalnej niezawodności. Odpowiadają nie tylko za dostęp do pieniędzy klientów, ale także przetwarzają niezwykle wrażliwe dane finansowe i osobowe. Dobrze zaprojektowana aplikacja musi więc być bezpieczna i wydajna, a jeżeli jest wykorzystywana na co dzień przez pracowników banku – także przyjazna dla użytkowników. Na testerach, którzy potwierdzają wszystkie funkcjonalności spoczywa więc spora odpowiedzialność.
Jednym z kluczowych obszarów testów aplikacji bankowych jest wyszukiwanie luk bezpieczeństwa. Według raportu Contrast Security z 2022 roku ofiarami cyberataków padło aż 60% banków na świecie. Konsekwencją działań hakerów mogą być straty finansowe klientów, a także wyjątkowo groźne dla reputacji instytucji finansowych wycieki danych osobowych (w tym danych kart kredytowych). Nie wspominając o tym, że każda przerwa w dostępie do pieniędzy w danym momencie może zrazić tysiące użytkowników do banku, co może skutkować przenosinami do innych banków.
Wyszukiwanie potencjalnych błędów w aplikacji ma kluczowe znaczenie również ze względu na user experience. Poważne straty finansowe poniósł w 2020 roku Citibank: 90 mln dolarów w wyniku niewłaściwego podejścia do projektowania aplikacji. Trzech pracowników banku zatwierdzało wysokokwotową transakcję i żaden nie wychwycił kosztownego błędu. Jak to możliwe? Wystarczył przestarzały, nieprzyjazny interfejs aplikacji, pełen trudnych do zrozumienia komunikatów, który nie ułatwił im pracy, tylko uśpił ich czujność.
Przykład Citibanku tylko potwierdza to, o czym testerzy dla bankowości wiedzą już od lat – nie chodzi o to, żeby „przeklikać” aplikację, tylko o to, żeby zapewnić poprawność działania całego procesu. By sobie pomóc, producenci rozwiązań dla bankowości próbują róznych pomysłów – od automatyzacji przez integrację skutecznych narzędzi testerskich. Jednym ze sposobów usprawnienia fazy testów jest wykorzystanie zdobyczy metodologii Agile w testach, gdzie od lat dominuje podejście kaskadowe. Czy w ogóle da się „zwinnie testować” i jeżeli tak, to jak to zrobić?
Agile w testach: połączenie sił „trzech muszkieterów”
Jedną z zasad Agile jest współodpowiedzialność wszystkich członków zespołu za kształt przyszłego produktu. Jednak najczęstszą praktyką w procesie tworzenia oprogramowania jest włączanie testera tylko do ostatniej fazy. Jest odpowiedzialny za konkretną fazę, którą zajmuje się, gdy zasadnicze decyzje odnośnie przyjętych rozwiązań już zapadły. Pracuje nad rozwiązaniem powstałym zupełnie bez jego udziału, co stanowi de facto pewien rodzaj marnotrawstwa potencjału zespołu.
Można tego uniknąć, stosując połączenie sił „trzech muszkieterów”, czyli analityka, developera i testera. Tester włączony w proces projektowania rozwiązania, zwłaszcza w fazie analitycznej, może od razu weryfikować pojawiające się pomysły. Patrząc na powstające rozwiązanie od strony praktyki testowania, „trzeci muszkieter” wnosi często dawkę zdrowego sceptycyzmu. Na podstawie swojego doświadczenia daje rekomendacje oraz określa, które rozwiązania mogą się nie sprawdzić.
Podejście Agile do fazy testowania uwzględnia także przeprowadzanie testów przez cały okres developmentu, tak często, jak to możliwe (czyli zazwyczaj po każdej z iteracji). To szczególnie ważne w produkcji oprogramowania dla bankowości, ponieważ pozwala upewnić się, że rozwiązanie spełnia wysoko postawione wymagania – a do tego szybciej trafia do wdrożenia i zaczyna przynosić wymierne korzyści dla całej organizacji.
Klucz do dobrych testów – wiedza dziedzinowa
By optymalnie produkować oprogramowanie dla bankowości, nie wystarczą same metody testowania. Niezbędne są też odpowiednie kwalifikacje testerów. Podstawą jest tu wiedza dziedzinowa dotycząca wyjątkowo specyficznych procesów, jakie zachodzą w ekosystemie IT dla bankowości.
Testerzy muszą doskonale znać procesy bankowe, z ich przebiegiem i wzajemnymi zależnościami między aplikacjami systemowymi. Pozwoli im to przeprowadzić testy manualne i stworzyć scenariusze do testów automatycznych. Kluczowa jest tu znajomość oczekiwań użytkownika końcowego, czyli klienta banku.
Jeżeli testerzy pozbawieni są wiedzy na temat bankowości, bank podejmuje duże ryzyko, ponieważ jest większe prawdopodobieństwo pojawiania się błędów. A błędy w aplikacjach bankowych mogą spowodować straty finansowe banku i użytkowników, a także spadek zaufania klientów czy ich rezygnację z usług.
CCA posiada wieloletnie doświadczenie w dziedzinie testów aplikacji bankowych. Jesteśmy specjalistami zarówno od testów automatycznych, jak i testów funkcjonalnych. Znamy usługi i specyfikę bankowych systemów informatycznych oraz procesy w sektorze bankowym. Wiele razy udowodniliśmy, że umiemy zrozumieć potrzeby naszych klientów — banków na całym świecie.
Do testów wykorzystujemy autorskie narzędzie PATT, jedyną istniejącą aplikację pozwalającą na testy automatyczne FIS Profile. Dzięki niej możliwe jest połączenie zalet testów manualnych i masowych. Przeprowadziliśmy także jego integrację z Selenium, najpopularniejszym narzędziem do testów aplikacji webowych.
Zanim przejdziesz do wyszukiwania niezawodnych testów aplikacji bankowej sprawdź nasze możliwości. Skorzystaj z naszego know-how i umiejętności. Skontaktuj się z nami i porozmawiajmy o Twoim projekcie!