Agile manifesto. Współpraca z klientem ponad negocjacje kontraktu.

book

Wiedza | PROCES

Aby uchronić się przed stratą czasu na spisywanie planów i potem kurczowego trzymania się ich, robimy dokładnie tyle szczegółowych planów ile potrzebujemy do efektywnej pracy.

2003 rok. Studenci Uniwersytetu Harward, nadzieja narodu amerykańskiego, siedzą w swoich akademikach i porównuje zdjęcia dziewczyn. Na ekranie pojawiają się dwa i trzeba wybrać ładniejszą. Twórca strony teraz przyznaje, że miał ochotę dodać do aplikacji kilka zwierząt aby również one wzięły udział w rankingu. Aplikacja bije rekordy popularności. Nie uszło to uwadze władz uniwersytetu, które wkrótce ukróciły proceder, a pomysłodawcę podały do sądu.

 

Autor Zuckerberg zauważył, że aplikacja świetnie się sprawdzi również do wymiany wiedzy przed egzaminem z Historii Sztuki. Umieścił w niej zdjęcia obrazów wraz z komentarzami, a studenci za pośrednictwem aplikacji zaczęli wymieniać się notatkami.

Dopiero trzecie podejście do tej aplikacji miało na celu umożliwić studentom nawiązywanie znajomości.

A co by było gdyby Zuckerberg zaczął od spisania szczegółowego opisu produktu i szukania inwestorów. Inwestorzy mieliby się zgodzić zapłacić grube miliony za realizację dobrze dopracowanego i opisanego kontraktem planu na 200 stron. Myślę, że zajęty realizacją nietrafionego pomysłu Zuckerberg zmarnowałby parę lat życia i pieniądze inwestora, a facebooka wprowadziłby na rynek ktoś inny.

Sprawy na które poświęcamy czas stają się dla nas ważne, dlatego sam akt dokładnego opisania wymagań zobowiązuje. Im bardziej szczegółowy opis tym zobowiązanie większe. Czas jest naszym najcenniejszym zasobem, póki co nie jesteśmy w stanie sobie go dokupić. Chcemy wierzyć, że poświęciliśmy czas na coś wartościowego. Dlatego jak już spisaliśmy plan, to mamy tendencje do kurczowego trzymania się go. Tymczasem świat się zmienia szybciej niż jesteśmy w stanie spisywać te plany, a popyt jest sprawą na którą wpływa tak duża liczba czynników, że nie jesteśmy w stanie go przewidzieć. Więc nie wiemy na co ten plan spisać, bo nie wiemy co będzie potrzebne.

 

Agile Manifesto 3 level 1 - współpraca

Pierwszy poziom założeń

Polecam zacząć od tego co zaleca Scrum Guide:

  • dokładny plan na około 4 tygodni pracy,
  • pobieżny na kolejne 4,
  • jeszcze luźniejszy na następne,
  • strategia na dalszy rozwój produktu.

 

Z tym planem zaczynam pierwszy sprint, w czasie trwania weryfikujemy mnóstwo założeń na temat tego jak się tworzy nasze rozwiązanie. Może serwerom na których chcieliśmy to trzymać czegoś brakuje, może wyjść, że potrzebujemy dokupić jakąś bibliotekę. Może wyjść, że coś co miało się okazać łatwe wcale takie nie jest. W oparciu o tą wiedzę przystępujemy do planowania kolejnego trzeciego sprintu. Z każdego zaplanowanej akcji możemy się w tym momencie wycofać i wybrać rozwiązanie z jakiegoś powodu lepsze, tańsze, łatwiejsze.

 

Agile Manifesto 3 level 2 - współpraca

Drugi poziom założeń

 

Po skończeniu sprintu pokazujemy wynik pracy interesariuszom i tu następuje zderzenie realizacji z oczekiwaniami i weryfikacja kolejnych założeń. Często bolesny dla obu stron, ale tylko do momentu zaakceptowania faktu, że tak to już jest i nie będzie inaczej.

Ten sam opis słowny generuje dwa zupełnie inne wyobrażenia w dwóch mózgach.

 

Każdy mózg ma inny zestaw wspomnień, inny zestaw definicji słów i pojęć, dlatego generują inne wyobrażenie. Nie każdy zdaje sobie z tego sprawę, więc przy pierwszych iteracjach, klient faktycznie może się denerwować. Jeżeli podejdziemy do klienta profesjonalnie po jakimś czasie zauważy i zaakceptuje ten fakt, a proces zacznie przebiegać gładko. Nie można jednak na nim poprzestać, jest jeszcze co najmniej jeden poziom założeń.

Agile Manifesto 3 level 3 współpraca

Trzeci poziom założeń

 

W momencie, w którym uzbieramy tyle funkcjonalności aby nasz produkt miał minimalną użyteczność należy tą użyteczność zweryfikować.

 

Jedynym sposobem na sprawdzenie czy coś okaże się użyteczne jest używanie tego.

 

Ja mniej więcej raz na rok wyrzucam jakiś sprzęt kuchenny, który byłam pewna, że jest dla mnie stworzony i będę go używać regularnie. Czasem, ponieważ wcale go nie potrzebowałam, czasem bo okazał się niewygodny. Pamiętam grill elektryczny z którego tłuszcz leciał bokami i zalewał mi cały blat. Musiałam go wyrzucić, bo nie chciałam go oddawać aby zalewał blat komuś innemu. Z oprogramowaniem też się tak stanie, jeżeli będziemy zbierać funkcjonalności i dopieszczać je, a przeoczymy jakiś szczegół, który czyni go szczególnie nieużytecznym. Na szczęście oprogramowanie to nie grill elektryczny. Możemy się dowiedzieć, że coś jest niewygodne, poprawić to i cieszyć się jego funkcjonalnością, pod warunkiem, że się o niej dowiemy odpowiednio wcześnie. Dlatego jak tylko da się to oddać do użytkowania, oddajemy i cieszymy się z każdego narzekania jakie dostaniemy, bo to dzięki temu się uczymy.

 

  • A co jak okaże się niepotrzebne?
  • Świetnie to straciliśmy na to minimalną ilość czasu.
  • No ale jak byśmy podpisali kontrakt na wszystko, to przydatne czy nie klient by musiał zapłacić!  

Spokojnie na tym świecie jest tyle oprogramowania do napisania, że nie musimy uciekać się do pisania czegoś co jest niepotrzebne, generując sobie tym niezadowolonych klientów i doprowadzając ich tym samym siebie i ich nawet do bankructwa. Klient, któremu pomożemy zarobić, będzie miał z czego płacić nam więcej… i więcej… i więcej… i tego wam życzę.

Powiązane artykuły, mogą Cię też zainteresować!

Agile Manifesto - Ludzie i interakcje

Kto nie powiedział choć raz “jestem/używam agile”, niech pierwszy rzuci kamieniem. Bycie agile jest obecnie czymś obowią...

Agile Manifesto - działające oprogramowanie i dokumentacja

Koniec sprintu to nie koniec świata, to koniec eksperymentu.

Sprint Review - zgodne ze sztuką

Celem Sprint Review JEST uzyskanie feedbacku od interesariuszy o Inkremencie i zaplanowanie dalszego rozwoju produktu.

Jak zniszczyć zespół programistów w 6 krokach

Nie musisz wybuchać ani często ani spektakularnie. Ważne aby było to nieprzewidywalne. Na przykład kiedy Sprint się nie ...