TSM - Estimarea vitezei sprinturilor în SCRUM

Vasile Tomoiagă - Project Manager @ Evozon

Doresc să prezint o metodă simplă de a calcula capacitatea de lucru a unei echipe în cadrul unui sprint și velocitatea proiectului pentru sprintul următor, în condițiile în care deja există un backlog cu sarcini de lucru (work items), toate estimate în story points. Am inclus un spreadsheet template (fișă de calcul șablon) ce se poate consulta sau folosi ca sursă de inspirație.

Context

Lucrez cu SCRUM de câțiva ani, iar pe parcursul timpului am dezvoltat o metodă pentru a monitoriza capacitatea echipei și a estima corect velocitatea sprinturilor următoare. A funcționat destul de bine pentru mine, motiv pentru care fac această metodă publică în speranța că va ușura planificarea sprinturilor voastre.

Notă: Acest articol presupune că echipa voastră are deja un backlog cu sarcini de lucru, toate estimate în story points.

Primul vostru sprint

Sunteți Scrum Master și trebuie să gestionați primul vostru sprint. Ce tooluri puteți folosi? Cel mai probabil, compania pentru care lucrați are astfel de tooluri și puteți apela la colegii voștri pentru ajutor. Dacă nu, vă puteți crea propriile tooluri. Din moment ce planificarea sprinturilor presupune niște calcule, cele mai folosite produse software sunt fișele de calcul (spreadsheets).

Ce trebuie să includeți?

Asta e tot! Acestea sunt ingredientele pentru a aplica o matematică simplă care vă va ajuta să vă planificați sprintul.

Concentrați-vă sprinturile într-un tabel sumativ (Overview Sheet)

Pentru a avea o imagine clară, de ansamblu a tuturor sprinturilor trebuie să vă concentrați sprinturile într-un tabel sumativ (Overview Sheet). Pentru a realiza acest lucru, trebuie să enumerați pe o coloană toate sprinturile, iar apoi, pentru fiecare sprint trebuie să menționați capacitatea calculată (în fiecare fișă de calcul).

Pentru a estima velocitatea aveți nevoie de date istorice. În primul sprint, nu aveți date istorice, deci nu puteți folosi formula. Ceea ce puteți face este să introduceți un număr rezonabil, realist, precum numărul de zile lucrătoare din cadrul sprintului: capacitatea.

Sprint 1. Velocitate estimată = Capacitatea sprintului (doar pentru Sprintul 1)

La finalul sprintului 1, veți obține velocitatea reală (numărul exact de story points livrate). Folosiți această valoare pentru a estima velocitatea sprintului 2:

Velocitatea estimată a sprintului 2 = (Capacitatea sprintului 2) * (Story Points per zi în sprintul 1)

Notă: Story Points per zi = (Velocitatea livrată / Capacitatea sprintului)

Pentru următoarele sprinturi, velocitatea estimată va fi egală cu capacitatea sprintului înmulțită cu media Story Points per zi din sprinturile anterioare.

Sprintul 4. (Velocitatea estimată) = Capacitatea sprintului * (Media Story Points per zi din sprinturile anterioare)

După cinci sprinturi velocitatea estimată va fi foarte realistă. De asemenea, procentul de finalizare a sarcinilor de lucru va fi foarte aproape de 100%.

Procentul de finalizare a sarcinilor de lucru (Completion Rate). Pe măsură ce parcurgeți din ce în ce mai multe sprinturi, procentul mediu de finalizare a sarcinilor de lucru va tinde spre 100%.

Apoi, trebuie (1) să introduceți disponibilitatea echipei și zilele libere în cadrul ședinței de planificare, (2) să introduceți velocitatea asumată a sprintului (Committed Velocity) dacă aceasta este diferită de cea estimată (Projected Velocity), iar ultimul pas, (3) să introduceți velocitatea livrată (Completed Velocity) la finalul sprintului în Overview sheet. Sunt doar trei pași manuali și câteva formule! Apropo, nu vă îngrijorați, toate formulele se regăsesc în Google Spreadsheet template de la finalul articolului.

Tabelul sumativ - definiția coloanelor

Tabelul sumativ (Overview table) de mai sus are o serie de coloane ce au nevoie de o descriere succintă.

Deveniți profesioniști: includeți disponibilitatea și gradul de senioritate

Echipa voastră nu este o entitate fixă. Unii membri pot să nu fie 100% disponibili în cadrul unei echipe. Dacă un membru lucrează cu jumătate de normă, 4 ore din 8, puteți evidenția acest lucru foarte simplu: capacitatea voastră zilnică nu este 1, ci (e.g.) ½., sau pot lucra în cadrul echipei de luni până miercuri, iar săptămâna următoare de joi până vineri etc.

Când aveți un membru nou, această persoană va livra în primul sprint între 0-10%. Rezultatele sale măsurabile vor fi mai aproape de zero, din moment ce persoana încă învață și se acomodează. Fiecare sprint va crește acest procent cu aproximativ 10%, după 10 sprinturi noul venit fiind complet integrat. Acest aspect trebuie monitorizat, de la sprint la sprint creșterea fiind mai mult sau mai puțin de 10%.

Capacitatea per membru = (Zile lucrătoare * Senioritate)

Gata. Planificarea sprintului va merge lin pe baza unor date de intrare și a unor formule simple. Toate datele rezultate din sprint vor fi salvate, iar firma le poate folosi în diverse moduri.

După cum am promis, iată Sprint Planning Template (șablonul de planificare a unui sprint):

Vizualizați șablonul: https://bit.ly/SprintPlanTemplate

Copiați șablonul: https://bit.ly/CopySprintPlanTemplate