Zašto programeri igraju poker na poslu?

Određeni aspekti agilnog razvoja softvera sigurno izgledaju čudno ljudima koji ih prvi put vide, ali verujte da se iza svakog od njih stoji jako dobar razlog. Jedan od najbitnijih delova svakog razvoja softvera je planiranje. Kada pravite neki program na tradicionalan način, faza planiranja ume da potraje, mesec, dva, a bogami ponekad i više. Glavni razlog za to je kompleksnost softvera, nejasne specifikacije i zahtevi klijenta i tako dalje. Tradicionalno planiranje je zato prilično neefikasno kada je u pitanju kreiranje softver.

Agilan razvoj softvera prihvata kao činjenicu da ne može da definiše tačne zahteve za razvoj softvera usred promenljivih zahteva klijenta i umesto toga se usresređuje na „user stories“, tj. ono što taj softver treba da radi iz perspektive korisnika.  Sledeći korak je kreiranje Product backlog-a, gde ulaze sve „user stories“, a zatim tim bira jednu ili više njih za aktuelni Sprint, tj. vremenskih okvir u kome treba kreiraju taj deo softvera. Nakon toga tim se sastaje da aktuelnu „user story“ rastave na manje delove i svakoj od njih dodele ocenu na veoma zanimljiv način.

Članovi tima igraju „Scrum poker“ koristeći prave ili virtuelne karte (postoji aplikacija za mobilne telefone), tako što svakom zadatku u Sprint Backlog-u daju određenu težinu.  Na kartama se, umesto žandara, kralja ili dame, nalaze brojevi poređani po fibonačijevom nizu, od 0 do 100. Tu je i posebna karta koje ima znak pitanja ili simbol za beskonačno.

Kada se jednom zapišu svi zadaci, vreme je za Poker, tj. svaki član tima mora da oceni zadatak. Ukoliko neko da preveliku ili premalu ocenu u odnosu na ostatak grupe, onda mora da obrazloži svoje razloge. Karte se ne pokazuju ostalim članovima tima, da ne bi uticali jedni na druge, što celoj priči daje malu draž, i natera srce da brže kuca. Takođe ukoliko neko da najveću ocenu, to je obično znak da se taj zadatak ili mora dodatno rastaviti ili da je prevelik za sadašnji sprint.

Kada ovo čitate sigurno vam sve deluje jednostavno, možda čak i zabavno, što povremeno i ume da bude, ali ovo je jako bitna faza u razvoju softvera. Greška tokom ove faze može da se odrazi na ceo Sprint, te Agile Planing, čiji je deo Scrum Poker, treba shvatati vrlo ozbiljno.

Puzzle Software će tokom novembra organizovati niz kurseva posvećenih agilnom razvoju softvera, a ovde bi izdvojili dvodnevni trening koji se sastoji od „Agile Requirements i Agile Planning And Estimating“. Pohađanje ovih kurseva se preporučuje softverskim inženjerima i poslovnim korisnicima koji se bave razvojem softvera.

bitsyu