Zarządzanie wymaganiami w krótkim okresie dla projektów zwinnych wydaje mi się rozwiązanym problemem.
Z punktu widzenia Scruma nowe wymagania lub zmiany w istniejących wymaganiach są dostarczane poprzez Historie użytkowników. Opowiadania użytkowników pogrupowane według epickiej lub fabularnej funkcji ułatwiają realizację bardziej złożonych wymagań.
Oczywiście historia użytkownika nie jest technicznie dokumentem wymagań. Jest to zarządzalna grupa prac, która odwzorowuje coś, co często nazywa się Pionowym Kawałkiem funkcjonalności. A zakres tych historii można jednoznacznie określić za pomocą kryteriów akceptacji (AC).
Tak więc, chociaż Historie użytkowników nie są wymaganiami formalnymi, przeglądanie ich może dać całkiem jasny obraz ich podstawowych wymagań. W krótkim terminie.
Mówię krótko, ponieważ wraz z postępem projektu liczba historii użytkowników rośnie. Dlatego przeglądanie stale rosnącej listy artykułów w celu znalezienia wymagania staje się z czasem coraz mniej wydajne.
Ten problem jest spotęgowany, gdy weźmie się pod uwagę Historie użytkowników, które rozszerzają, zastępują, a nawet negują poprzednie Historie.
Teraz wyobraź sobie dwuletnią przerwę między iteracjami rozwojowymi projektu (stabilna w produkcji). Pierwszego zespołu nie ma, podobnie jak cała ich wiedza.
Jeśli pierwotny zespół wiedział, że tak się stanie (np. Jest to charakter działalności), to jakie środki mogłyby podjąć, aby pomóc kolejnym zespołom?
Oczywiście, zaległości dostarczą pewnych informacji, ale nie są one w formie łatwej do przeglądania.
Co więc można zrobić, aby kolejne zespoły zrozumiały stan projektu, w tym dlaczego i jak go zrealizowano ?
Z mojego doświadczenia wynika, że następujące rzeczy nie działają:
- Przygotowywanie zaległości w celu usunięcia lub aktualizacji poprzednich historii użytkownika, aby zaległości można było odczytać jako dokument wymagań.
- Dokumentacja Sprinty, w których zadaniem członków zespołu jest dokumentowanie bieżącego stanu systemu.
- Dokumentacja poprzez testy behawioralne . To podejście jest jedynym, które widziałem, że jest bliskie pracy. Niestety testy zachowania kodowanego są ofiarami problemu nazewnictwa. Chociaż testy mogą poprawnie udokumentować system, zmobilizowanie zespołu programistów do napisania testów zgodnie z tą samą terminologią, brzmieniem i stylem Domeny jest prawie niemożliwe.
Powtórzmy więc:
Jak zarządza się wymaganiami projektu Agile w perspektywie długoterminowej?