Metodologia Agile – SCRUM - Valentina Jardan

28
Metodologia Agile – SCRUM Elaborat: Valentina Jardan

Transcript of Metodologia Agile – SCRUM - Valentina Jardan

Page 1: Metodologia Agile – SCRUM - Valentina Jardan

Metodologia Agile – SCRUM

Elaborat: Valentina Jardan

Page 2: Metodologia Agile – SCRUM - Valentina Jardan

Dezavantajele metodelor clasice de management a proiectelor

Forțe uriaşe în timpul etapei de planificare; Resurse enorme pentru modificarea cerinţele

tehnice într-un mediu ce se schimbă rapid; Tratarea personalului ca factor de producţie;

Page 3: Metodologia Agile – SCRUM - Valentina Jardan

Rezultatul metodelor clasice implementate în IDSI* Haos datorită schimbării cerinţelor - cerinţele

unui proiect pot să se schimbe în faza de design, implementare şi chiar lansare. În mai toate metodologiile de dezvoltare, analiza este făcută în partea de început a proiectului, şi nici o schimbare nu mai este permisă pînă spre final.

Estimări nerealiste de timp, cost şi calitate a proiectelor - managerul de proiect şi dezvoltatorii tind să subestimeze cît timp şi resurse sunt necesare pentru un proiect, şi cîte funcţionalităţi pot fi livrate. Acestea nu pot fi niciodată prevazute 100% în faza de început a ciclului de dezvoltare.

Page 4: Metodologia Agile – SCRUM - Valentina Jardan

Soluţia? Agile Software Development – nume preluat de la sportul de Rugby unde toată echipa acţionează împreună - analogie se face la dezvoltarea software unde echipa lucrează împreună pentru a dezvolta cu succes produse de calitate.

Page 5: Metodologia Agile – SCRUM - Valentina Jardan

Ce este Agile? Metodologie de management a proiectelor ce încearcă

să micşoreze riscurile de dezvoltare şi timpul de execuţie prin implementarea proiectelor în formă foarte flexibilă şi interactivă.

Page 6: Metodologia Agile – SCRUM - Valentina Jardan

Caracteristicile Agile Este iterativ: o iteraţie are între 1-4 saptămîni,în

rezultat sunt livrate anumite funcţionalităţi ale proiectului.

Este bazat pe timp:durata iteraţiei e fixă şi nu poate fi modificată pe parcursul proiectului. În acest fel există întotdeauna un rezultat productiv la finalul iteraţiei.

Deschis către client:la finalul fiecărei iteraţii există un rezultat care poate fi prezentat clientului.

Bazat pe livrarea de versiuni intermediare ale produsului: fiecare iteraţie va implementa complet toate “task-urile” cuprinse în acea iteraţie

Page 7: Metodologia Agile – SCRUM - Valentina Jardan

Metodologii care derivează din Agile AGILE există în mai multe feluri:

XP SCRUM DSDM, Crystal, Feature Driven Lean Development etc. Toate folosesc principii de baza ale filozofiei AGILE,

dar o implementează în moduri diferite.

Page 8: Metodologia Agile – SCRUM - Valentina Jardan

Sunt AGILE! Prioritatea este satisfacerea nevoilor clientului

prin livrarea în timp a soft-ului; Cererile de schimbare sunt binevenite, chiar şi

în stadiile avansate ale dezvoltării; Livrăm frecvent soft funcţional, cu o frecvenţă

săptămînală spre lunară, cu preferinţă pentru termenii mai scurţi;

Page 9: Metodologia Agile – SCRUM - Valentina Jardan

Principiul Agile:YAGNI "You Aren't Going To Need It... unless the

business says so!".

Prin acest principiu suntem încurajaţi săimplementăm doar acele elemente pe care lesolicită clientul şi nimic mai mult!

Page 10: Metodologia Agile – SCRUM - Valentina Jardan

Scrum

Page 11: Metodologia Agile – SCRUM - Valentina Jardan

Principiul metodologiei SCRUM• dezvoltarea incrementală a aplicaţiei software;• livrări frecvente - de regulă au loc o dată la 4 săptămâni;• clientul primeşte de fiecare dată o aplicaţie ce conţine un număr tot

mai mare de funcţionalităţi şi care se află în perfectă stare de

funcţionare.

Page 12: Metodologia Agile – SCRUM - Valentina Jardan

Reguli în Scrum Această metodă necesită patru tipuri de şedinţe :

Şedinţele zilnice: echipa se reuneşte în fiecare zi şi petrece circa 15 minute, în picioare, pentru a răspunde la următoarele trei întrebări: ce am făcut ieri? Ce voi face azi? Cu ce obstacole mă confrunt azi?

Şedinţele de planificare: întreaga echipă se adună pentru a decide care sunt funcţionalităţile care vor alcătui următorul sprint, şi pentru a actualiza lista generală.

Şedinţele de revizuire a activităţii: în timpul acestei şedinţe, fiecare membru prezintă ceea ce a făcut pe durata sprintului. Se organizează o demonstraţie a noilor funcţionalităţi şi o prezentare a arhitecturii. Aceasta este o şedinţă informală, de două ore, la care participă toată echipa.

Şedinţele retrospective: la finalul fiecărui sprint, echipa analizează aspectele care au funcţionat bine, precum şi pe cele care au funcţionat mai puţin bine. În timpul acestei şedinţe de 15–30 de minute, se organizează un vot de încredere pentru a decide ce îmbunătăţiri trebuie implementate.

Page 13: Metodologia Agile – SCRUM - Valentina Jardan

Avantaje reducerea documentaţiei la minimul cu scopul sporirii productivităţii; evitarea „efectului de tunel", adică faptul de a obţine rezultatul abia la livrarea

finală şi de a nu întrezări nimic concret pe durata întregii faze de dezvoltare; compunerea secvenţială a conţinutului sprint-urilor permite efectuarea unei

modificări sau adăugarea unei funcţionalităţi care nu era prevăzută iniţial. Acesta este principalul aspect care face ca această metodă să fie „agilă“;

metodă participativă: fiecare membru al echipei este invitat să îşi exprime părerea şi poate contribui la toate deciziile luate în cadrul proiectului, fiind astfel mai implicat şi mai motivat;

facilitarea comunicării: lucrînd în aceeaşi sală de dezvoltare sau fiind conectată prin intermediul diferitelor mijloace de comunicare, echipa poate comunica uşor şi poate schimba informaţii despre impedimentele întâlnite în scopul eliminării cât mai rapide a acestora;

ameliorarea cooperării: comunicarea zilnică dintre client şi echipa face posibilă o colaborare mai strânsă între cele două părţi;

creşterea productivităţii: prin eliminarea anumitor „exigenţe" specifice metodelor clasice, precum documentaţia;

timpul de livrare a produsului final se reduce semnificativ.

Page 14: Metodologia Agile – SCRUM - Valentina Jardan

Riscuri şi soluţii• Dimensiunea echipei: fiind limitată la 7 -10 persoane, dimensiunea

echipei se poate transforma într-un obstacol dacă se depăşeşte numărul de membri recomandat. În acest caz, organizarea de şedinţe devine imposibilă. Soluţia constă în realizarea unui „Scrum of Scrums“ - împărţirea proiectului în echipe de dimensiuni standard şi adăugarea unei instanţe superioare care să grupeze ScrumMasterii fiecărui Scrum;

• Cereri multiple: cererile pot proveni din mai multe surse în cadrul unui proiect şi pot uneori să fie dificil de gestionat datorită aspectului lor contradictoriu. Pentru a remedia această problemă, trebuie să se utilizeze în mod obligatoriu o aplicaţie de gestiune a cererilor;

• Calitatea produsului realizat: cu cât numărul echipelor este mai mare, cu atât calitatea este mai greu de controlat. Pentru aceasta, este important să existe o politică de calitate riguroasă şi un plan de calitate a proiectului. Verificarea frecventă a codului şi introducerea unor indicatori pentru măsurarea performanţei programatorilor permit reducerea la minimum a acestui risc.

Page 15: Metodologia Agile – SCRUM - Valentina Jardan

Organizare Scrum

• Metodologia SCRUM implică intervenţia a trei protagonişti :• Product owner: responsabilul de produs şi coordonatorul

echipei clientului. El este cel care defineşte şi stabileşte funcţionalităţile prioritare şi alege data şi conţinutul fiecărui sprint pe baza volumelor de lucru comunicate de echipă.

• ScrumMaster: acesta facilitează buna desfăşurare a proiectului, are grijă ca fiecare membru să poată lucra la capacitate maximă eliminând impedimentele şi protejând echipa de perturbările exterioare. De asemenea, acordă o atenţie specială respectării diferitelor faze SCRUM.

• Echipa: fiind de regulă alcătuită din circa 4-10 persoane, echipa adună la un loc specialiştii necesari în cadrul unui proiect, şi anume: arhitectul, designerul, programatorul, testerul etc. Echipa se organizează singură şi rămâne neschimbată pe toată durata sprintului.

Page 16: Metodologia Agile – SCRUM - Valentina Jardan

Tabla Scrum

Page 17: Metodologia Agile – SCRUM - Valentina Jardan

Tabla Scrum în LTIC

Page 18: Metodologia Agile – SCRUM - Valentina Jardan

Comunicare Programator&Tester

Page 19: Metodologia Agile – SCRUM - Valentina Jardan

Tabla LTIC restructurată

Page 20: Metodologia Agile – SCRUM - Valentina Jardan

Motivare Scrum

Page 21: Metodologia Agile – SCRUM - Valentina Jardan

Restricţii şi recomandări pentru tabla Scrum Cît mai puţine sarcini mici în Sprint per persoană cu

atît mai bine; Modificaţi tabla Scrum conform necesităţilor echipei

şi a proiectului; Sarcini curente în realizare maxim 2; Numărul de sarcini plasate pe tabla trebuie să fie

realizate la finisarea Sprint-ului; Nu se acceptă sarcini noi în Sprint-ul care este în

proces de realizare. Soluţie: Înlocuirea sarcinilor;

Page 22: Metodologia Agile – SCRUM - Valentina Jardan

Sprint Software

Page 23: Metodologia Agile – SCRUM - Valentina Jardan

Cui se adresează acest tip de organizare?

Acest tip de organizare poate fi utilizat în majoritatea proiectelor;

Metodologia Agile – SCRUM este destinată în special proiectelor care nu au un cadru bine conturat;

E nevoie o echipă cu iniţiativă care cuprinde oameni cărora le place să experimenteze, să schimbe şi să se adapteze cerinţelor;

Echipe care stiu sa se organizeze;

Page 24: Metodologia Agile – SCRUM - Valentina Jardan

Este IDSI o echipa Agile-Scrum?

Page 25: Metodologia Agile – SCRUM - Valentina Jardan

Este IDSI o echipa Agile-Scrum? Numărul foarte mare de studenţi (70%) cu un orar de lucru part-time; Cele 4 tipuri de şedinţe Scrum nu pot fi organizate; Categorii de vîrstă şi mod de percepere diferit a procesului de lucru; Nu toţi membrii echipei vor să fie Agile; Dimensiunea echipei este mare şi nu se regasesc în ea posturile

necesare unei echipe Scrum; Numărul mare de proiecte la mentenanţă; Fiecare membru al echipei este implicat în mai mult de 1 proiect în

Sprint; Nu pot fi planificate şi estimate corect sarcinile pentru Sprint; Sarcini neplanificate se soluţionează în timpul Sprint-ului; Nu este posibil de estimat corect timpul la sarcini de către echipă; Nu se face livrarea proiectului la finisarea fiecărui Sprint; etc

Page 26: Metodologia Agile – SCRUM - Valentina Jardan

Soluţia?

Page 27: Metodologia Agile – SCRUM - Valentina Jardan

Link-uri utile http://www.agilemoldova.com/ http://agilemanifesto.org/

Page 28: Metodologia Agile – SCRUM - Valentina Jardan

Întrebări ?