Kryteria akceptacji (acceptance criteria) to z góry ustalony wykaz warunków, które funkcjonalność musi spełnić, aby mogła być uznana za pomyślnie zrealizowaną i zaakceptowaną. Ich formułowanie zaczęło się od metod zwinnego rozwoju (Agile) dla przejrzystości procesu weryfikacji.
Bez wyraźnych kryteriów akceptacji istnieje ryzyko subiektywnej oceny wyniku, nieporozumień między testerem, programistą a klientem. Prowadzi to do konfliktów, opóźnień i powtórnych iteracji weryfikacji.
Kryteria powinny być formułowane wspólnie z zespołem, opisując nie tylko "co powinno działać", ale także "jak dokładnie", przewidując przypadki brzegowe, błędy, scenariusze użytkowników. Przed rozpoczęciem testowania wszyscy uczestnicy projektu zapoznają się z kryteriami.
Kluczowe cechy:
Kto formułuje kryteria akceptacji: tylko testerzy czy menedżerowie projektów?
Ważne jest, aby formułować kryteria wspólnie: testerzy, menedżerowie, analitycy, czasem — klient.
Czy można zaakceptować funkcjonalność, jeśli działa "w zasadzie dobrze", ale jedno z kryteriów akceptacji nie zostało spełnione?
Nie. Niespełnienie chociaż jednego kryterium jest powodem do odmowy akceptacji.
Czy kryteria powinny uwzględniać tylko pozytywne scenariusze?
Nie. Powinny uwzględniać zarówno negatywne, jak i brzegowe scenariusze, aby wykluczyć niespodziewane błędy.
Kryteria akceptacji określono ustnie, nie spisano ich. W rezultacie jedna z ważnych funkcji biznesowych nie działa zgodnie z ukrytymi wymaganiami klienta.
Plusy:
Minusy:
Kryteria akceptacji zredagowano w formie listy i zatwierdzono z zespołem produktowym i klientem, dodano przykłady danych na granicznych wartościach.
Plusy:
Minusy: