Krzysztof T. Software maker
Temat: TDD, testowanie i inne takie
Jarek Żeliński:
Krzysztof T.:
Moja żonka (też informatyk) gdy przeczytała tę dyskusję stwierdziła: "I nad czym tu deliberować - przecież cały Agile sprowadza się do tego, by stosowaną metodykę dozbroić w cykliczne interakcje z klientem, a Wy piszecie i piszeeeecie... o czym tu pisać?"
ale jeżeli wiec ktoś ma te metodykę, bez żadnego Agile i tak spotyka się cyklicznie, ale "niestety" kodowanie poprzedza analizą i projektowaniem, to albo czegoś nie rozumiem (tych dyskusji) albo nie wiem, że "od lat pisze prozą" :)
Otóż nie :)
Od strony wykonawcy wygląda to ciut inaczej. Wykonawca, pracując w określonej metodyce (bez Agile) zaczyna swoją pracę od studiów dokumentacji, a kończy na testach odbiorowych (Analiza przychodzi z zewnątrz lub jest wykonywana przez wyodrębniony człon analityczny, Implementacja rusza gdy istnieje juz wymagana do implementacji część dokumentacji). Pomiędzy tymi dwoma elementami nie ma komunikacji z klientem (chyba, że ten jeszcze ma otwarty proces prac przy zbieraniu założeń, ale to są prace nad nieruszonymi jeszcze obszarami). Agile wprowadza tę komunikację dając klientowi możliwość doprecyzowania szczegółów, które z pozycji wykonawcy nie mają zasadniczo wpływu na funkcjonalność (zmiana funkcjonalności to zmiana kontraktu, jest traktowana jako CR).
UWAGA: nie mylić dołożenia flow z klientem z sytuacją, gdy douzupełniane są dokumenty ze względu na wykrycie dziur w kwitach, lub ze względu na prace prowadzone w obszarach future. To zupełnie inna sytuacja. Agile zakłada, że klient dostaje częściowe wypusty produktu, w celu akceptacji cząstkowej i/lub doprecyzowania szczegółów (jak choćby kolejności sortowania na listach rozwijalnych - czego dokumentacja zwykle nie opisuje, a co może mieć znaczenie dla Klienta). Agile oczywiście może i powinno chronić projekt przed produkcją rzeczy na które zapotrzebowanie się zdeaktualizowało - ale to już zupełnie inny temat. Przede wszystkim Agile ma dać klientowi możliwość kontroli postępu prac oraz obciąć koszty kwitologii na duperelach - TYLKO na duperelach.
Faktem jest że rynek notorycznie popełnia dwa grzechy:
1) oszczędza na dokumentacji - w wyniku czego dopłaca na implementacji
2) usiłuje utrącić koszty analizy - w wyniku czego dopłaca na implementacji
Oba te punkty przemycane są pod hasłem Agile - chociaż nie mają z Agile nic wspólnego.
EDIT:
Ty, Jarku, siedzisz w innym obszarze produkcji - i kontakt z Klientem jest z marszu wpisany w Twoje zajęcia :) - po to, aby taki ludek jak ja wiedział, co ma Klientowi wyprodukować. Projekt techniczny też trzeba o coś oprzeć :)Krzysztof T. edytował(a) ten post dnia 12.11.12 o godzinie 11:32