Definicja
Kryteria akceptacji (ang. Acceptance Criteria) precyzyjnie definiują warunki, które muszą być spełnione, aby User Story została uznana za "gotową" (Done).
Format Given-When-Then (Gherkin)
Given: [kontekst/stan początkowy]
When: [akcja użytkownika]
Then: [oczekiwany rezultat]
Przykłady
User Story: Jako klient chcę zalogować się do konta.
| Given | When | Then |
|---|---|---|
| Użytkownik jest na stronie logowania | wprowadzi poprawny email i hasło | zostanie przekierowany na dashboard |
| Użytkownik jest na stronie logowania | wprowadzi błędne hasło 3 razy | konto zostanie zablokowane na 15 minut |
| Użytkownik jest na stronie logowania | kliknie "Zaloguj przez Google" | zostanie przekierowany do OAuth Google |
| Użytkownik jest zalogowany | zamknie przeglądarkę i otworzy ją po 24h | sesja wygasła, widzi stronę logowania |
Dlaczego to ważne?
Kryteria akceptacji to kontrakt Definition of Done dla konkretnej User Story: - eliminują niejednoznaczności ("co znaczy, że działa?"), - są podstawą do testów akceptacyjnych, - chronią przed scope creep (niekontrolowanym rozrastaniem zakresu), - ułatwiają estymację w planowaniu sprintu.
Dobre praktyki
- Pisz konkretne, mierzalne warunki — nie "system działa szybko"
- Uwzględnij scenariusze pozytywne i negatywne (happy path + edge cases)
- Kryteria powinny być niezależne od implementacji — nie pisz "kliknij przycisk zielony"
- 3-7 kryteriów na story — więcej = story jest za duża