Vad är planeringsspelet?
Planeringsspelet är en del av en typ av mjukvaruutveckling som kallas extrem programmering. Det skapar en spelliknande miljö där personal från företag och utveckling, kallad "kunder" och "programmerare" i spelet, samarbetar för att utveckla en ny programvara. Det finns två delar av planeringsspelet: släppplanering och iterationsplanering.
Släppplanering är den inledande fasen av planeringsspelet, där teammedlemmarna bestämmer vilka funktioner programvaran kommer att ha och hur lång tid det kommer att ta att utveckla funktionerna. Spelet börjar med att kunderna skapar "berättelser". Berättelser i detta sammanhang är korta beskrivningar av ett slutresultat som önskas av programvaran. Varje berättelse är vanligtvis skriven på ett separat indexkort. Kunder kan skapa berättelser när som helst i spelet.
Programmerarna får sedan berättelserna och beräknar kostnaden eller hur lång tid det kommer att ta för att slutföra varje berättelse. När kunderna har fått kostnadsberäkningarna placerar de berättelserna i prioritetsordning. Programmerare och kunder kan ställa varandra frågor under hela processen för att förtydliga beräkningarna och prioriteringarna för berättelserna. Teamet kan också lägga till nya berättelser under processen eller dela en stor berättelse i flera berättelser. Varje gång detta händer måste den nya berättelsen eller berättelserna ha en kostnad och prioritet tilldelas dem.
Programmerare har det sista ordet i kostnadsberäkningar och kunderna har det sista ordet i prioriteringar, så att varje grupp har den ultimata myndigheten över sina kompetensområden. När kostnaderna och prioriteringarna har slutförts åtar sig teamet att släppa planen. En släppningsplan kan vara "datadriven" eller "historiedriven."
I det datadrivna åtagandet väljer kunderna ett släppdatum och programmerarna bestämmer hur mycket tid de kan spendera på att utveckla. Slutligen väljer kunderna berättelser för att lägga till den tiden. En historiedriven utgivningsplan innebär att kunderna börjar lägga till berättelser till utgivningen, och programmerarna ställer in släppdatum för de valda berättelserna. Kunderna kan fortsätta lägga till berättelser tills de bestämmer sig för att de ackumulerade valda berättelserna kan fungera tillsammans som nästa utgåva.
Iterationsplanering är den pågående planeringen som sker under mjukvaruutveckling. Iterationerna i planeringsspelet inträffar i två veckors intervall, under vilka programmerarna skapar användbar programvara för några av de berättelser som valts under release-planeringen. I slutet av varannan vecka väljer kunderna de berättelser de vill skapa under de kommande två veckorna, och programmerarna beräknar hur mycket arbete de faktiskt kan slutföra under den tiden.