Difference between revisions of "Planningsspel voor ontwikkelprojecten"

From AardRock Wiki
Jump to navigation Jump to search
(→‎Spelverloop: het wordt steeds mooier!)
 
(4 intermediate revisions by 2 users not shown)
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 (voor klant 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}}.
==Een cooperatief spel van communicatie en samenwerken==


(je kunt het project zien als een tijdelijke {{pattern|Cooperatie}} tussen klanten en ontwikkelaars)
Het is een {{pattern|resultaat gericht}} {{pattern|cooperatie}} spel voor twee (soorten) spelers:
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.
*Klanten
*Ontwikkelaars.  


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.  
==Doel van het spel==
De klant doet een wens en de ontwikkelaar helpt hem om er werkelijkheid van te maken. De ontwikkelaar zegt wat het moet kosten en de {{pattern|klant bepaalt waarde}} van deze nieuwe werkelijkheid. Het spel draait om de spanning tussen {{pattern|klantgericht werken}} en {{pattern|technologische innovatie}} De ontwikkelaar wil realiseren wat de klant wenst, maar de klant weet minder goed (tegen welke kosten) dat pas mogelijk is. De {{pattern|ontwikkelaars adviseren de klant}}, maar neemt geen beslissingen. Dat mag alleen de klant. Adviseren gebeurt voornamelijk
*door vragen (bijvoorbeeld door de {{pattern|socratische methode}} toe te passen),
*door uit te leggen wat er mogelijk is – liever nog door {{pattern|laat zien wat kan}} (show, don't tell).


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}}.
Voor een goed verloop van het spel zijn de volgende punten belangrijk:


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.  
====Communiceren====
Voortdurende samenspraak tijdens de uitvoering van het werk. Een volledige specificatie van het werk dat gedaan moet worden is zo overbodig.
====Samenwerken====
Het realiseren van een verhaaltje een spel van samenwerken en uitvinden. Klant en leverancier moeten {{pattern|samen werken}}, in plaats van tegen (over) elkaar (zoals met een {{pattern|programma van eisen}} nog wel eens wil gebeuren).
====Samen delen====
Klanten en ontwikkelaar zijn {{pattern|gezamenlijk eigenaar}} van het resultaat.


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.  
Als het spel goed loopt, lossen de problemen vanzelf op door communicatie en samenwerking. De klant krijgt gaandeweg een beter gevoel voor wat er mogelijk is, en de ontwikkelaars een beter gevoel voor wat de klant wil en wat de klant echt nodig heeft.  


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.
==Spelverloop==


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.  
==={{pattern|vier succes}}===
Bij de tweede en volgende {{pattern|ronde}} telt de klant zijn zegeningen door te kijken welke wensen er de afgelopen ronde in vervulling zijn gegaan. Hiervoor komen {{pattern|glasheldere acceptatiecriteria}} goed van pas.  


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}}. 
===Doe een wens===


De lijst van verhalen, op volgorde van waarde gelegd noemen we een {{pattern|Restpuntenlijst}}.
De klant doet een wens en de ontwikkelaar helpt hem om er werkelijkheid van te maken.
#De klant vertelt zijn wens in de vorm van een verhaaltje (in het engels: user story) ({{pattern|klant schrijft verhaaltje}}). Elke wens is een apart verhaaltje op een aparte indexkaart.
#Neem een set indexkaarten. De titel van elk verhaaltje komt bovenop een indexkaart te staan.
#Beschrijf of teken in het midden van de indexkaart wat uitgebreider wat de klant wil (in het geval van software kan het een schets van een scherm of webpagina zijn).
#Zet achterop het kaartje kunnen {{pattern|acceptatietests}} of {{pattern|glasheldere acceptatiecriteria}}


==context==
Voor geoefende spelers volstaat vaak de titel van het verhaaltje.


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.  
===Schat de kosten===
En nog eerder op de c2.com wiki .
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.
Zie {{pattern|Gummiberen}} voor een alternatieve manier om nummering te bepalen (fibonacci reeksen).
 
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}}.
 
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.
 
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.
 
===Schat de opbrengsten===
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.  
 
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.  
 
===Schat in hoeveel je deze ronde kunt doen===
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}}. 
 
De lijst van verhalen, op volgorde van waarde gelegd noemen we een {{pattern|restpuntenlijst}}.
 
context
 
Zie {{pattern|gummiberen}} voor een alternatieve manier om nummering te bepalen (fibonacci reeksen).
 
[[Category:patronen]]

Latest revision as of 12:07, 17 January 2007

Het planningsspel - Plannen met kaartjes (voor klant en ontwikkelaars)

Een cooperatief spel van communicatie en samenwerken

Het is een resultaat gericht cooperatie spel voor twee (soorten) spelers:

  • Klanten
  • Ontwikkelaars.

Doel van het spel

De klant doet een wens en de ontwikkelaar helpt hem om er werkelijkheid van te maken. De ontwikkelaar zegt wat het moet kosten en de klant bepaalt waarde van deze nieuwe werkelijkheid. Het spel draait om de spanning tussen klantgericht werken en technologische innovatie De ontwikkelaar wil realiseren wat de klant wenst, maar de klant weet minder goed (tegen welke kosten) dat pas mogelijk is. De ontwikkelaars adviseren de klant, maar neemt geen beslissingen. Dat mag alleen de klant. Adviseren gebeurt voornamelijk

Voor een goed verloop van het spel zijn de volgende punten belangrijk:

Communiceren

Voortdurende samenspraak tijdens de uitvoering van het werk. Een volledige specificatie van het werk dat gedaan moet worden is zo overbodig.

Samenwerken

Het realiseren van een verhaaltje een spel van samenwerken en uitvinden. Klant en leverancier moeten samen werken, in plaats van tegen (over) elkaar (zoals met een programma van eisen nog wel eens wil gebeuren).

Samen delen

Klanten en ontwikkelaar zijn gezamenlijk eigenaar van het resultaat.

Als het spel goed loopt, lossen de problemen vanzelf op door communicatie en samenwerking. De klant krijgt gaandeweg een beter gevoel voor wat er mogelijk is, en de ontwikkelaars een beter gevoel voor wat de klant wil en wat de klant echt nodig heeft.


Spelverloop

vier succes

Bij de tweede en volgende ronde telt de klant zijn zegeningen door te kijken welke wensen er de afgelopen ronde in vervulling zijn gegaan. Hiervoor komen glasheldere acceptatiecriteria goed van pas.

Doe een wens

De klant doet een wens en de ontwikkelaar helpt hem om er werkelijkheid van te maken.

  1. De klant vertelt zijn wens in de vorm van een verhaaltje (in het engels: user story) (klant schrijft verhaaltje). Elke wens is een apart verhaaltje op een aparte indexkaart.
  2. Neem een set indexkaarten. De titel van elk verhaaltje komt bovenop een indexkaart te staan.
  3. Beschrijf of teken in het midden van de indexkaart wat uitgebreider wat de klant wil (in het geval van software kan het een schets van een scherm of webpagina zijn).
  4. Zet achterop het kaartje kunnen acceptatietests of glasheldere acceptatiecriteria

Voor geoefende spelers volstaat vaak de titel van het verhaaltje.

Schat de kosten

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.

Schat de opbrengsten

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.

Schat in hoeveel je deze ronde kunt doen

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).