Jak opisać kryteria akceptacji

Jak opisać kryteria akceptacji

Kryteria akceptacji opisują warunki, po których właściciel zakresu rozpozna, że wymaganie zostało zrealizowane. Doprecyzowują granice, reguły i przykłady, zanim zespół rozpocznie implementację. Nie są pełnym zestawem testów ani techniczną instrukcją wykonania.

Dobre kryterium jest obserwowalne i rozstrzygalne: dla określonych danych lub sytuacji istnieje oczekiwany rezultat. Zdanie „funkcja działa poprawnie” tylko powtarza intencję i nie wyjaśnia, co oznacza poprawność.

Dwa użyteczne formaty

Scenariusz Given–When–Then

Format sprawdza się, gdy ważny jest stan początkowy, zdarzenie oraz wynik. Mając klienta z aktywną umową i saldem 120 zł, gdy pracownik rejestruje zwrot 20 zł, wtedy system tworzy dyspozycję na 20 zł i zmniejsza dostępne saldo zwrotów do 100 zł.

Nie trzeba zapisywać angielskich słów. Istotna jest logika: kontekst → działanie → oczekiwany rezultat. Jeden scenariusz powinien opisywać jeden ważny przykład, nie cały proces w kilkunastu krokach.

Lista reguł biznesowych

Gdy kryteria mają charakter statycznych zasad, czytelniejsza jest lista: „Kwota zwrotu jest większa od zera”, „Suma zwrotów nie przekracza kwoty opłaconej”, „Dla płatności kartą zwrot trafia wyłącznie na tę samą kartę”. Dla wielu kombinacji warunków warto użyć tabeli decyzyjnej.

Przypadek: reset hasła

Wymaganie brzmi: „Użytkownik może odzyskać dostęp do konta przez adres e-mail”. Sama ścieżka poprawna nie wystarczy. Trzeba uzgodnić zachowanie dla nieistniejącego adresu, wygaśniętego linku, ponownego użycia, zbyt wielu żądań i konta zablokowanego.

IDKontekst i działanieOczekiwany rezultat
AC-1Aktywne konto; użytkownik podaje przypisany e-mailSystem wysyła jednorazowy link ważny 30 min i pokazuje neutralne potwierdzenie
AC-2Nieistniejący e-mailSystem pokazuje ten sam neutralny komunikat i nie ujawnia istnienia konta
AC-3Link wykorzystano wcześniejSystem odmawia zmiany i umożliwia złożenie nowego żądania
AC-4Trzecie żądanie w ciągu 10 minSystem nie wysyła kolejnej wiadomości i rejestruje ograniczenie
AC-5Nowe hasło nie spełnia politykiSystem wskazuje niespełnione zasady bez unieważniania ważnego linku

Takie przykłady ujawniają decyzje produktowe i bezpieczeństwa przed kodowaniem. Tester może później rozwinąć je o szczegóły danych, przeglądarek czy testy penetracyjne, ale podstawowe zachowanie zostało wspólnie zatwierdzone.

Co powinny obejmować kryteria

  • podstawowy przypadek prowadzący do wartości dla użytkownika;
  • najważniejsze reguły i limity;
  • uprawnienia oraz różnice między rolami;
  • brakujące lub niepoprawne dane;
  • powtórzenie operacji i idempotencję, jeśli ma znaczenie;
  • zachowanie przy niedostępności zależności;
  • widoczne rezultaty i zmiany stanu;
  • istotne wymagania jakościowe powiązane z funkcją.

Nie trzeba mechanicznie dodawać każdego typu do każdej historii. Wybierz te przypadki, które zmieniają zakres, decyzję użytkownika, koszt lub ryzyko. Reszta może trafić do standardów zespołu albo szczegółowych testów.

Kryterium akceptacji a przypadek testowy

Kryterium akceptacjiPrzypadek testowy
Uzgadnia biznesową granicę zakresuOpisuje wykonanie konkretnej weryfikacji
Powstaje podczas doprecyzowania wymaganiaMoże powstać po projekcie i analizie ryzyka
Koncentruje się na zachowaniu widocznym dla odbiorcyZawiera dane, kroki, środowisko i wynik
Nie musi pokrywać wszystkich kombinacjiBuduje pełniejsze pokrycie pozytywne i negatywne

Najczęstsze błędy

  • Powtórzenie wymagania: „użytkownik może zresetować hasło”.
  • Techniczna lista zadań: „dodać endpoint, tabelę i kolejkę”.
  • Nieostre przymiotniki: „komunikat jest przyjazny, a e-mail przychodzi szybko”.
  • Tylko happy path: pominięcie błędów ujawniających najważniejsze decyzje.
  • Zbyt wiele scenariuszy w jednym: trudność w ustaleniu, który warunek zawiódł.
  • Kryteria dopisane po implementacji: dokumentują istniejące zachowanie zamiast uzgadniać oczekiwane.

Jak wybierać wartości graniczne i przykłady

Kryteria nie powinny zawierać wyłącznie przypadków „środkowych”. Jeśli rabat obowiązuje od 1000 zł, użyj kwot 999,99 zł, 1000 zł i wartości powyżej. Dla limitu czasu sprawdź moment tuż przed i po granicy. Dla uprawnień porównaj role różniące się jednym istotnym prawem.

Dobieraj przykłady według ryzyka: utrata pieniędzy, ujawnienie danych, nieodwracalna zmiana stanu, konflikt równoczesnych operacji i niedostępność zewnętrznej usługi. Nie trzeba zamieniać kryteriów w pełną kombinatorykę. Wystarczy utrwalić przypadki, które rozstrzygają znaczenie wymagania, a szczegółowe pokrycie pozostawić strategii testów.

Kryteria dla zmiany stanu

Przy każdej operacji zmieniającej dane potwierdź stan początkowy, końcowy i skutek częściowego błędu. Jeśli anulowanie zamówienia powiedzie się, ale zwrot płatności nie, system nie może pozostawić sprawy w nieokreślonym stanie. Kryterium powinno wskazać status, możliwość ponowienia, informację dla użytkownika oraz ślad audytowy.

Zwróć też uwagę na powtórzenie żądania. Podwójne kliknięcie, ponowienie po timeoutcie lub dostarczenie tej samej wiadomości przez kolejkę nie powinno tworzyć dwóch wypłat. Jeśli idempotencja ma znaczenie biznesowe, jej rezultat należy uzgodnić, nawet gdy techniczny mechanizm pozostaje decyzją zespołu.

Checklista przed rozpoczęciem prac

  • Każde kryterium jest powiązane z konkretnym wymaganiem.
  • Stan początkowy i oczekiwany rezultat są jednoznaczne.
  • Użyto pojęć zgodnych ze słownikiem domenowym.
  • Przykładowe dane obejmują istotne granice.
  • Uwzględniono uprawnienia, błędy i ponowienia tam, gdzie zmieniają zachowanie.
  • Kryteria nie narzucają implementacji bez uzasadnienia.
  • Biznes, wykonawca i tester rozumieją je tak samo.
  • Spełnienie można potwierdzić obiektywną obserwacją lub pomiarem.

Po uzgodnieniu kryteriów oznacz ich status i właściciela akceptacji. Zmiana kryterium w trakcie realizacji może oznaczać zmianę zakresu, a nie kosmetyczną korektę testu. Zespół powinien wtedy ocenić wpływ na implementację, inne scenariusze oraz termin. Poprzednią wersję warto zachować w historii wraz z powodem zmiany. Odbiorca powinien potwierdzić nowe rozumienie przed kontynuacją prac.

Kryteria nie naprawią niejasnego celu. Najpierw sprawdź, jak napisać dobre wymaganie, a następnie użyj przeglądu jakości dla całego zestawu.

O AUTORZE

Maciej Pieniak

Maciej Pieniak

Autorem portalu jest Maciej Pieniak — analityk biznesowo-systemowy specjalizujący się w analizie procesów, wymaganiach, systemach IT, automatyzacji oraz praktycznym wykorzystaniu AI w pracy analitycznej.