Mis on planeerimismäng?

Planeerimismäng on osa tarkvaraarenduse tüübist, mida nimetatakse äärmuslikuks programmeerimiseks. See loob mängulaadse keskkonna, kus äri- ja arendustöötajad, keda mängus nimetatakse “klientideks” ja “programmeerijateks”, teevad koostööd uue tarkvara väljatöötamiseks. Planeerimismängul on kaks osa: väljalaske planeerimine ja iteratsiooni planeerimine.

Väljalaske planeerimine on planeerimismängu esialgne faas, kus meeskonnaliikmed määravad kindlaks, millised funktsioonid tarkvaral on ja kui kaua kulub funktsioonide arendamiseks. Mäng algab sellega, et kliendid loovad “lugusid”. Selles kontekstis on lood tarkvaralt soovitud lõpptulemuse lühikirjeldused. Iga lugu kirjutatakse tavaliselt eraldi registrikaardile. Kliendid võivad luua lugusid mängu mis tahes punktis.

Seejärel saavad programmeerijad lood ja hindavad maksumust või iga loo valmimiseks kuluvat aega. Kui klientidel on kuluprognoosid, asetavad nad lood tähtsuse järjekorda. Programmeerijad ja kliendid saavad kogu protsessi jooksul üksteiselt küsimusi esitada, et selgitada lugude hinnanguid ja prioriteete. Meeskond võib protsessi käigus lisada ka uusi lugusid või jagada suure loo mitmeks looks. Iga kord, kui see juhtub, peab uuele loole või lugudele olema määratud kulu ja prioriteet.

Programmeerijatel on viimane sõna kuluprognooside osas ja klientidel prioriteetide osas, nii et igal rühmal on ülim võim oma erialade üle. Kui kulud ja prioriteedid on lõplikult kindlaks määratud, võtab meeskond kohustuse vabastamise plaani järgida. Väljalaskeplaan võib olla “andmepõhine” või “lugupõhine”.

Andmepõhise kohustuse korral valivad kliendid väljalaskekuupäeva ja programmeerijad määravad, kui palju aega nad saavad arendamiseks kulutada. Lõpuks valivad kliendid lood, mida selle aja jooksul kokku liita. Loopõhine väljalaskeplaan tähendab, et kliendid hakkavad väljalaskele lugusid lisama ja programmeerijad määravad valitud lugude avaldamiskuupäeva. Kliendid saavad jätkata lugude lisamist, kuni nad otsustavad, et kumulatiivsed valitud lood saavad järgmise väljalasena koos töötada.

Iteratsiooni planeerimine on pidev planeerimine, mis toimub tarkvara arendamise ajal. Planeerimismängu iteratsioonid toimuvad kahenädalaste intervallidega, mille jooksul programmeerijad loovad kasulikku tarkvara mõne väljalaske planeerimise käigus valitud loo jaoks. Iga kahe nädala lõpus valivad kliendid lood, mida nad soovivad järgmise kahe nädala jooksul luua ja programmeerijad arvutavad välja, kui palju tööd nad selle ajaga tegelikult valmis saavad.