Scrum

SCRUM – partea 1

Probabil ca, daca lucrati in domeniul IT, sunteti la curent cu noua moda: Scrum. In cele ce urmeaza o sa fac o scurta analiza si o comparatie intre metodologia Scrum si preacunoscutul model Waterfall.

In primul rand, sa identificam jucatorii:

  • Product owner
    Stabileste prioritatile, fara a decide cum vor fi implementate.
  • Scrum master
    Se asigura ca proiectul merge bine, incearca sa faciliteze depasirea obstacolelor si e principala interfata dintre echipa si elementele externe.
  • Echipa
    Decide cum va fi implementat proiectul si este responsabila de livrarea produsului.
  • Stakeholders
    Oricine e influentat, pozitiv sau negativ, de succesul proiectului. In principal suntem interesati de clienti si sponsori.
  • Management
    Echipa care controleaza mediul in care se dezvolta proiectul. Alternativ, echipa manageriala poate fi inclusa la capitolul ‘stakeholders’

Mai mentionez cativa termeni folositi in Scrum:

  • Product backlog
    Contine lista cerintelor care trebuie satisfacuta de proiect/produs. Cerintele sunt descrise la nivel inalt, fara detalii de implementare.
  • Sprint
    Perioada de timp in care echipa trebuie sa livreze setul agreat de cerinte. Tipic, dureaza intre o saptamana si o luna, cea mai comuna durata fiind de doua saptamani.
  • Sprint backlog
    Lista cerintelor pe care echipa trebuie sa le satisfaca in sprintul curent. Acesta este creat prin selectarea ceritelor din topul listei ‘Product backlog’, cat timp echipa considera ca timpul alocat este suficient. Cerintele sunt impartite in task-uri descrise cu suficiente detalii astfel incat toti membrii echipei sa le inteleaga.
  • Task
    Cerintele de nivel inalt sunt impartite in activitati (task-uri), care ar trebui sa dureze intre 4 si 16 ore.
  • Burn down chart
    Un grafic care arata care este nivelul de munca ramasa din sprintul curent. Acest grafic este afisat public pentru intreaga echipa.
  • User story
    O cerinta adaugata la ‘product backlog’ care identifica tipul de utilizator, rezultatul dorit si actiunea care trebuie intreprinsa de acesta. In mod normal are urmatoarea forma: Ca <tip_de_utilizator> fac <actiunea> pentru a obtine <rezultat>.

In partea 2, o sa analizam care e procesul de dezvoltare al unui produs folosind Scrum.