Difference between revisions of "Planningsspel voor ontwikkelprojecten"

From AardRock Wiki
Jump to navigation Jump to search
Line 1: Line 1:
Neem een set indexkaarten, de klant vertelt een wens in de vorm van een verhaaltje (in het engels: user story) ({{pattern|Klant_schrijft_verhaaltje}}). De titel van dit verhaaltje komt bovenop de indexkaart te staan. In het midden van de indexkaart kan eventueel een zin met wat meer detail staan, of een tekening die beschrijft wat de klant wil (in het geval van software kan het een schets van een scherm of webpagina zijn). Acherop het kaartje kunnen eventueel {{pattern|Acceptatietests}} of {{pattern|Acceptatiecriteria}} geschreven worden. Als klanten en ontwikkelaars beter op elkaar ingespeeld zijn volstaat vaak de titel van het verhaaltje, in combinatie met het volgende:
Het {{pattern|planningsspel}} - plannen met kaartjes (versie voor klant en leverancier)


Een verhaaltje is een belofte voor verdere communicatie tijdens de uitvoering van het werk. Het is dus geen volledige specificatie van het werk dat gedaan moet worden. We gaan ervanuit dat het realiseren van een verhaaltje een spel van samenwerken en uitvinden is. Het is dus de bedoeling dat klant en leverancier {{pattern|Samen_werken}}, in plaats van tegen over elkaar gezet te worden (zoals met een {{pattern|Programma_van_eisen}} nog wel eens wil gebeuren).Klanten en leverancier zijn {{pattern|Gezamenlijk_eigenaar}} van het resultaat – deze manier van werken is dus {{pattern|Resultaat_gericht}}.
Neem een set indexkaarten, de klant vertelt een wens in de vorm van een verhaaltje (in het engels: user story) ({{pattern|klant schrijft verhaaltje}}). De titel van dit verhaaltje komt bovenop de indexkaart te staan. In het midden van de indexkaart kan eventueel een zin met wat meer detail staan, of een tekening die beschrijft wat de klant wil (in het geval van software kan het een schets van een scherm of webpagina zijn). Acherop het kaartje kunnen eventueel {{pattern|acceptatietests}} of {{pattern|acceptatiecriteria}} geschreven worden. Als klanten en ontwikkelaars beter op elkaar ingespeeld zijn volstaat vaak de titel van het verhaaltje, in combinatie met het volgende:


(je kunt het project zien als een tijdelijke {{pattern|Cooperatie}} tussen klanten en ontwikkelaars)
Een verhaaltje is een belofte voor verdere communicatie tijdens de uitvoering van het werk. Het is dus geen volledige specificatie van het werk dat gedaan moet worden. We gaan ervanuit dat het realiseren van een verhaaltje een spel van samenwerken en uitvinden is. Het is dus de bedoeling dat klant en leverancier {{pattern|samen werken}}, in plaats van tegen over elkaar gezet te worden (zoals met een {{pattern|programma van eisen}} nog wel eens wil gebeuren).Klanten en leverancier zijn {{pattern|gezamenlijk eigenaar}} van het resultaat – deze manier van werken is dus {{pattern|resultaat gericht}}.
De {{pattern|Ontwikkelaars_adviseren_de_klant}}, maar nemen geen beslissingen. De {{pattern|Klant_bepaalt_waarde}}. Adviseren gebeurt voornamelijk door vragen (bijvoorbeeld door de {{pattern|Socratische_methode}} toe te passen), soms door uit te leggen wat er mogelijk is – liever nog door {{pattern|Laat_zien_wat_kan}} (show, don't tell). Hier zit een spanningsveld tussen {{pattern|Klantgericht_werken}} en {{pattern|Technologische_innovatie}} – aan de ene kant wil je doen wat de klant wil, maar de klant weet niet altijd wat er mogelijk is (tegen welke kosten). Als het goed loopt, lost dit planningsproces het vanzelf op, omdat gaandeweg de klant een beter gevoel krijgt voor wat er mogelijk is, en de ontwikkelaars een beter gevoel krijgen voor wat de klant wil en wat de klant echt nodig heeft.


Als de klant een aantal verhaaltjes heeft vertelt, en de titels op kaartjes heeft geschreven, is het tijd voor {{pattern|Ontwikkelaars_bepalen_complexiteit}}. De gedachte achter deze stap is dat plannen eenvoudiger is in termen van relatieve complexiteit of moeilijkheid. De eenvoudigste manier om dit te doen is de {{pattern|Verhalen}} op volgorde van moeite te leggen. Het eenvoudigste verhaal gaat bovenaan, en zo verder naar beneden. {{pattern|Verhalen}} die even complex zijn kunnen naast elkaar gelegd worden.  
(je kunt het project zien als een tijdelijke {{pattern|cooperatie}} tussen klanten en ontwikkelaars)
De {{pattern|ontwikkelaars adviseren de klant}}, maar nemen geen beslissingen. De {{pattern|klant bepaalt waarde}}. Adviseren gebeurt voornamelijk door vragen (bijvoorbeeld door de {{pattern|socratische methode}} toe te passen), soms door uit te leggen wat er mogelijk is – liever nog door {{pattern|laat zien wat kan}} (show, don't tell). Hier zit een spanningsveld tussen {{pattern|klantgericht werken}} en {{pattern|technologische innovatie}} – aan de ene kant wil je doen wat de klant wil, maar de klant weet niet altijd wat er mogelijk is (tegen welke kosten). Als het goed loopt, lost dit planningsproces het vanzelf op, omdat gaandeweg de klant een beter gevoel krijgt voor wat er mogelijk is, en de ontwikkelaars een beter gevoel krijgen voor wat de klant wil en wat de klant echt nodig heeft.


Nadat {{pattern|Verhalen_in_volgorde_van_complexiteit}} zijn gelegd, kunnen er {{pattern|Gummiberen}} op geschreven worden. {{pattern|Gummiberen}} zijn een aantal 'punten' voor {{pattern|Verhalen}}. Een verhaal met een lager aantal {{pattern|Gummiberen}} is eenvoudiger dan een verhaal met een groter aantal {{pattern|Gummiberen}}.  
Als de klant een aantal verhaaltjes heeft vertelt, en de titels op kaartjes heeft geschreven, is het tijd voor {{pattern|ontwikkelaars bepalen complexiteit}}. De gedachte achter deze stap is dat plannen eenvoudiger is in termen van relatieve complexiteit of moeilijkheid. De eenvoudigste manier om dit te doen is de {{pattern|verhalen}} op volgorde van moeite te leggen. Het eenvoudigste verhaal gaat bovenaan, en zo verder naar beneden. {{pattern|verhalen}} die even complex zijn kunnen naast elkaar gelegd worden.  


Hoeveel {{pattern|Gummiberen}} schrijf je op een verhaal? Er zit hier een verschil tussen de eerste keer dat je het {{pattern|Planningsspel}} speelt en latere keren – de eerste keer moet je vanaf niets bepalen hoe veel {{pattern|Gummiberen}} te geven aan een verhaal. Een eenvoudige manier om dit te doen is de eenvoudigste story 20 punten te geven, en daarna met 30,40 etc. verder te nummeren.  
Nadat {{pattern|verhalen in volgorde van complexiteit}} zijn gelegd, kunnen er {{pattern|gummiberen}} op geschreven worden. {{pattern|gummiberen}} zijn een aantal 'punten' voor {{pattern|verhalen}}. Een verhaal met een lager aantal {{pattern|gummiberen}} is eenvoudiger dan een verhaal met een groter aantal {{pattern|gummiberen}}.  


De tweede en volgende keren kun je kijken naar {{pattern|Verhalen_van_de_vorige_ronde}} en {{pattern|Relatieve_complexiteit}} bepalen door verhalen van deze {{pattern|Ronde}} te leggen naast die van de vorige.  
Hoeveel {{pattern|gummiberen}} schrijf je op een verhaal? Er zit hier een verschil tussen de eerste keer dat je het {{pattern|planningsspel}} speelt en latere keren – de eerste keer moet je vanaf niets bepalen hoe veel {{pattern|gummiberen}} te geven aan een verhaal. Een eenvoudige manier om dit te doen is de eenvoudigste story 20 punten te geven, en daarna met 30,40 etc. verder te nummeren.  


Na {{pattern|Ontwikkelaars_bepalen_complexiteit}} is het tijd voor {{pattern|Klant_bepaalt_waarde}}. Hiervoor doen de klanten voor waarde hetzelfde als de ontwikkelaars voor complexiteit – kaartjes op volgorde leggen. In dit geval komen de meest waardevolle {{pattern|Verhalen}} bovenaan.  
De tweede en volgende keren kun je kijken naar {{pattern|verhalen van de vorige ronde}} en {{pattern|relatieve complexiteit}} bepalen door verhalen van deze {{pattern|ronde}} te leggen naast die van de vorige.  


Ook hier is het mogelijk om soortgelijk als aan {{pattern|Gummiberen}} punten op de kaartjes te schrijven, in dit geval {{pattern|Waardepunten}} geheten. Heel soms is het mogelijk voor klanten om waarde in {{pattern|Euros}} op te geven. Meest voorkomend is de {{pattern|Verhalen}} in volgorde {{pattern|Aan_de_muur_hangen}}, of bij voorbeeld in een {{pattern|Wiki}} of een {{pattern|Online_verhalenverzamelbak}} te zetten.  
Na {{pattern|ontwikkelaars bepalen complexiteit}} is het tijd voor {{pattern|klant bepaalt waarde}}. Hiervoor doen de klanten voor waarde hetzelfde als de ontwikkelaars voor complexiteit – kaartjes op volgorde leggen. In dit geval komen de meest waardevolle {{pattern|verhalen}} bovenaan.  


Na deze stap geven de ontwikkelaars een schatting over hoeveel {{pattern|Verhalen}} ze in de komende {{pattern|Ronde}} kunnen doen. Voor de eerste {{pattern|Ronde}} is dit een gokje, voor volgende {{pattern|Ronde}}s kan de {{pattern|Snelheid}} van de vorige {{pattern|Ronde}} gebruikt worden. {{pattern|Snelheid}} is eenvoudigweg het aantal {{pattern|Gummiberen}} per {{pattern|Ronde}}.
Ook hier is het mogelijk om soortgelijk als aan {{pattern|gummiberen}} punten op de kaartjes te schrijven, in dit geval {{pattern|waardepunten}} geheten. Heel soms is het mogelijk voor klanten om waarde in {{pattern|euros}} op te geven. Meest voorkomend is de {{pattern|verhalen}} in volgorde {{pattern|aan de muur hangen}}, of bij voorbeeld in een {{pattern|wiki}} of een {{pattern|online verhalenverzamelbak}} te zetten.  


De lijst van verhalen, op volgorde van waarde gelegd noemen we een {{pattern|Restpuntenlijst}}.
Na deze stap geven de ontwikkelaars een schatting over hoeveel {{pattern|verhalen}} ze in de komende {{pattern|ronde}} kunnen doen. Voor de eerste {{pattern|ronde}} is dit een gokje, voor volgende {{pattern|ronde}}s kan de {{pattern|snelheid}} van de vorige {{pattern|ronde}} gebruikt worden. {{pattern|snelheid}} is eenvoudigweg het aantal {{pattern|gummiberen}} per {{pattern|ronde}}.


==context==
De lijst van verhalen, op volgorde van waarde gelegd noemen we een {{pattern|restpuntenlijst}}.


Dit patroon is eerder beschreven in het boek eXtreme Programming explained (embrace change) door Kent Beck en ook in {{pattern|Scrum}} wordt een soortgelijk planningsproces gebruikt. Het vindt zijn oorsprong dus in _software_ ontwikkelprojecten, maar is in principe ook geschikt voor andere projecten waar het belangrijker is om om te gaan met verandering en onzekerheid dan het te vermijden.
context
En nog eerder op de c2.com wiki .
 
Zie {{pattern|Gummiberen}} voor een alternatieve manier om nummering te bepalen (fibonacci reeksen).
Zie {{pattern|gummiberen}} voor een alternatieve manier om nummering te bepalen (fibonacci reeksen).

Revision as of 13:34, 29 November 2006

Het planningsspel - plannen met kaartjes (versie voor klant en leverancier)

Neem een set indexkaarten, de klant vertelt een wens in de vorm van een verhaaltje (in het engels: user story) (klant schrijft verhaaltje). De titel van dit verhaaltje komt bovenop de indexkaart te staan. In het midden van de indexkaart kan eventueel een zin met wat meer detail staan, of een tekening die beschrijft wat de klant wil (in het geval van software kan het een schets van een scherm of webpagina zijn). Acherop het kaartje kunnen eventueel acceptatietests of acceptatiecriteria geschreven worden. Als klanten en ontwikkelaars beter op elkaar ingespeeld zijn volstaat vaak de titel van het verhaaltje, in combinatie met het volgende:

Een verhaaltje is een belofte voor verdere communicatie tijdens de uitvoering van het werk. Het is dus geen volledige specificatie van het werk dat gedaan moet worden. We gaan ervanuit dat het realiseren van een verhaaltje een spel van samenwerken en uitvinden is. Het is dus de bedoeling dat klant en leverancier samen werken, in plaats van tegen over elkaar gezet te worden (zoals met een programma van eisen nog wel eens wil gebeuren).Klanten en leverancier zijn gezamenlijk eigenaar van het resultaat – deze manier van werken is dus resultaat gericht.

(je kunt het project zien als een tijdelijke cooperatie tussen klanten en ontwikkelaars) De ontwikkelaars adviseren de klant, maar nemen geen beslissingen. De klant bepaalt waarde. Adviseren gebeurt voornamelijk door vragen (bijvoorbeeld door de socratische methode toe te passen), soms door uit te leggen wat er mogelijk is – liever nog door laat zien wat kan (show, don't tell). Hier zit een spanningsveld tussen klantgericht werken en technologische innovatie – aan de ene kant wil je doen wat de klant wil, maar de klant weet niet altijd wat er mogelijk is (tegen welke kosten). Als het goed loopt, lost dit planningsproces het vanzelf op, omdat gaandeweg de klant een beter gevoel krijgt voor wat er mogelijk is, en de ontwikkelaars een beter gevoel krijgen voor wat de klant wil en wat de klant echt nodig heeft.

Als de klant een aantal verhaaltjes heeft vertelt, en de titels op kaartjes heeft geschreven, is het tijd voor ontwikkelaars bepalen complexiteit. De gedachte achter deze stap is dat plannen eenvoudiger is in termen van relatieve complexiteit of moeilijkheid. De eenvoudigste manier om dit te doen is de verhalen op volgorde van moeite te leggen. Het eenvoudigste verhaal gaat bovenaan, en zo verder naar beneden. verhalen die even complex zijn kunnen naast elkaar gelegd worden.

Nadat verhalen in volgorde van complexiteit zijn gelegd, kunnen er gummiberen op geschreven worden. gummiberen zijn een aantal 'punten' voor verhalen. Een verhaal met een lager aantal gummiberen is eenvoudiger dan een verhaal met een groter aantal gummiberen.

Hoeveel gummiberen schrijf je op een verhaal? Er zit hier een verschil tussen de eerste keer dat je het planningsspel speelt en latere keren – de eerste keer moet je vanaf niets bepalen hoe veel gummiberen te geven aan een verhaal. Een eenvoudige manier om dit te doen is de eenvoudigste story 20 punten te geven, en daarna met 30,40 etc. verder te nummeren.

De tweede en volgende keren kun je kijken naar verhalen van de vorige ronde en relatieve complexiteit bepalen door verhalen van deze ronde te leggen naast die van de vorige.

Na ontwikkelaars bepalen complexiteit is het tijd voor klant bepaalt waarde. Hiervoor doen de klanten voor waarde hetzelfde als de ontwikkelaars voor complexiteit – kaartjes op volgorde leggen. In dit geval komen de meest waardevolle verhalen bovenaan.

Ook hier is het mogelijk om soortgelijk als aan gummiberen punten op de kaartjes te schrijven, in dit geval waardepunten geheten. Heel soms is het mogelijk voor klanten om waarde in euros op te geven. Meest voorkomend is de verhalen in volgorde aan de muur hangen, of bij voorbeeld in een wiki of een online verhalenverzamelbak te zetten.

Na deze stap geven de ontwikkelaars een schatting over hoeveel verhalen ze in de komende ronde kunnen doen. Voor de eerste ronde is dit een gokje, voor volgende rondes kan de snelheid van de vorige ronde gebruikt worden. snelheid is eenvoudigweg het aantal gummiberen per ronde.

De lijst van verhalen, op volgorde van waarde gelegd noemen we een restpuntenlijst.

context

Zie gummiberen voor een alternatieve manier om nummering te bepalen (fibonacci reeksen).