Metodologia de dezvoltare Scrum

Scrum (skrʌm «luptă») - o metodologie de management de proiect. Accentul principal al acestei metodologii este pe controlul calității procesului de dezvoltare. Scrum este una dintre cele mai populare „metodologia“ de dezvoltare de software. În plus față de proiect de dezvoltare software de management, Scrum poate fi de asemenea folosite pentru programele de întreținere.

Metodologia de dezvoltare Scrum

Metoda în prima Scrum a fost prezentat la revizuirea generală documentată, format în mod clar și descrise în legătură Schwaber și Jeff Sutherland, care in urmatorii cativa ani, au lucrat impreuna pentru a descrie și prezenta toate experiența și modele de bune practici pentru managementul de proiect într-o singură, în metodologia, care este cunoscut astăzi ca Scrum.

Utilizarea Scrum implică etapa de planificare pentru a partaja dezvoltarea proiectului pe mai multe mici de timp fix iterație, altfel cunoscut sub numele de sprinturi Sprint. Fiecare iterație succesive în funcție de prioritatea de a oferi utilizatorului final completează programul de lucru cu noi caracteristici. În același timp, proces strict fix de dezvoltare durată scurtă de sprint oferă previzibilitate și flexibilitate.

Procesul de management de proiect Scrum

Scrum proiect Terminologie

  • Sprint - stadiu de dezvoltare;
  • Sprint restante - sarcina fazei de dezvoltare;
  • restante de proiect - Lista cerințelor pentru funcționalitate.

Sprint iterație

Baza Scrum este o Sprint - stadiu de dezvoltare, în care a efectuat unele lucrări pe produs. proiect de dezvoltare completă constă în etape scurte Sprint'ov. Funcțiile care trebuie să fie puse în aplicare pe fiecare Sprint'e. strict fixe și nu se poate schimba cursul sprint; acestea sunt defalcate în sarcini, cu evaluările și prioritățile.

Înainte de fiecare Sprint a făcut de planificare Sprint. care este conținutul estimat restante de proiect și a format restante Sprint. conține sarcini (Story, Bugs, Sarcini), care trebuie să fie îndeplinite în sprint curent. Fiecare Sprint ar trebui să aibă un scop, un factor motivant care poate fi atins prin îndeplinirea sarcinilor restante Sprint.

Sprint este întotdeauna limitată în timp (1-4 săptămâni) și are aceeași lungime pe toată durata de viață a produsului. La sfârșitul Sprint trebuie să fie primite de noua lucrare, dar nu versiunea finală a produsului.

Cerințe de proiect restante Lista proiectelor

restante de proiect - un document care listează toate proiectului cerințelor funcționale, și anume Lista funcționalitate program care trebuie să fie puse în aplicare. lista elementelor care urmează să fie sortate în ordinea importanței. Pe parcursul proiectului și o listă de priorități poate varia, în funcție de nevoile clientului, idei noi sau condiții în schimbare.

În clasic Scrum înțeles că titularul de proiect poate face modificări direct în cadrul proiectului, dar nu și în actualul Sprint. În cele mai multe cazuri, bugetul de dezvoltare de software este fix. Acest lucru înseamnă că clienții cu capacitatea de a influența progresul prea limitat. Cu toate acestea, dacă este necesar, poate fi emis „Act adițional“ la contract, ținând cont de schimbările din domeniul financiar care au realizat proiectul ca necesitatea de a adăuga sau modifica oricare dintre activitățile proiectului pentru client este foarte urgentă. Acest lucru contribuie la dezvoltarea proiectului ceruta de client, mai degrabă decât ceea ce este prezentat în mod oficial în TOR.

Prin urmare, ca restante. Ca o regulă, utilizată lista de sarcini ale specificațiilor tehnice prezentate și fixate în contract, plus fixe în îmbunătățiri suplimentare acordurilor bilaterale care apar în cursul lucrărilor.

O listă de cerințe Sprint Sprint restante

Revista dorește Sprint Sprint restante conține funcționalitatea proiectului într-o anumită etapă Sprint'a.

Roluri în managementul proiectelor Scrum

În urma procedurii de Scrum în procesul de producție există anumite roluri, împărțite în 2 grupuri, „porci“ și „pui“. Aceste nume au fost utilizate pe scară largă din cauza următoarea glumă:

Pui oferă porc: „Să deschidem un restaurant!“ Porcul holbeaza la pui si spune: „Ideea este bună, dar cum vrei să-l sun?“ Pui crede pe scurt și să răspundă. „De ce nu suna" Omletă cu șuncă?“.
„Asta nu se va face, - întâlnește un porc - pentru că atunci am să dedice la proiect, și vei fi implicați doar parțial.“

Potrivit „Pigs“ Scrum crea un produs, în timp ce „pui“ nu este atât de mult interesat în produsul finit. Ei nu le pasă dacă proiectul are succes sau nu, pentru a le este puțin afectat. Prin urmare, „puilor“ cerințele, dorințele și ideile sunt luate în considerare, dar nu au voie să incluse direct în Scrum-proiect de curs.

Clasic Scrum folosește 3 roluri de bază ( „Porci“):

roluri suplimentare (roluri auxiliare) în metodologia Scrum ( „Pui“):

  • clienții interesați - persoane fizice care au inițiat proiectul, și pentru care proiectul va fi profitabil. Ele sunt implicate în Scrum numai în timpul ședinței de revizuire Sprint Sprint Review;
  • Managerii de gestionare a personalului;
  • Consultanții experți Experți Consulting.

etapele lucrării

La începutul fiecărei etape a echipei câștigă Declarația de listă restante de proiect cât mai multe sarcini ca fiind capabil să efectueze efectiv pentru etapa Sprint'a. Se împarte în subactivități și sincronizare precisă.

Metodologia de dezvoltare Scrum

planificare Sprint întâlnire de planificare Sprint

La începutul unei noi iterație Sprint'a trebuie să planificați în consecință. Pentru a face acest lucru, proiectul Backlog'a selectat sarcini care pentru echipa Sprint DT trebuie să le efectueze. Pe baza sarcinilor selectate create Backlog Sprint'a.

Fiecare sarcină trebuie să fie de a evalua sprint în ideale ore-om. Soluția de rezolvare a problemei ar trebui să ia de la 8 până la 16 ore, și anume nu mai mult de două zile lucrătoare. Dacă este necesar, sarcina poate fi împărțită în subactivități.

În timpul planificării este discutat și determinată de ordinea de realizare a domeniului de aplicare deplină a muncii. Durata reuniunii are limite stricte (mai puțin de o zi lucrătoare) și depinde de durata și de comandă iterație experiență.

Metodologia de dezvoltare Scrum

Monitorizarea zilnica, întâlniri zilnice

întâlniri zilnice. în caz contrar, cunoscut sub numele de reuniune-stand up are loc în fiecare zi. De-a lungul echipa Sprint'a se întâlnește în mod regulat, în același timp. Fiecare membru al echipei DT trebuie să răspundă la trei întrebări:

  • Ce sa făcut ieri?
  • Ce se va face astăzi?
  • Care sunt problemele?

În efectuarea zilnică de întâlnire este important să nu scadă pentru a discuta detaliile tehnice ale proiectului, o clarificare formală statut de proiect.

Oprește sprint, Rezilierea anormală

Oprirea sprint înainte de termen poate fi făcută în circumstanțe excepționale. În cazul în care echipa își dă seama că el nu poate atinge obiectivul de sprint în timpul alocat, atunci se poate opri Sprint. Sprint, de asemenea, se poate opri în cazul în care titularul de proiect nu mai este necesar pentru a atinge obiectivul de sprint.

După oprirea Sprint a avut loc o întâlnire cu comanda DT. o discuție cu privire la motivele pentru oprire. După aceea, echipa continuă la următorul Sprint'a.

Figura sarcini de ardere diagramă Burndown

Pentru o reprezentare vizuală a stării de proiect folosind Burndown de ardere sarcini diagrama diagramă. indicând valoarea muncii depuse și de muncă rămase în ceea ce privește timpul alocat pentru dezvoltarea proiectului. Diagrama ar trebui să fie în mod regulat (zilnic), actualizate în timp real, pentru a arăta progresul și costurile lucrărilor la proiect și sprint. graficul Burndown ar trebui să fie disponibile pentru toți membrii proiectului.

Există două tipuri de diagrame:

  • graficul de combustie funcționează pentru sprintul, ceea ce reprezintă suma și sarcinile restante executate în sprint curent;
  • Diagrama de lucru de ardere pentru un proiect, care reprezintă suma sarcinilor restante efectuate și a terminat produs software (de obicei, pe baza numărului de sprinturi).
Metodologia de dezvoltare Scrum

Caracteristici Scrum-proiect

1. Modificări Scrum proiectelor în cerințe pot fi făcute în orice moment.
Astfel, este posibil să se schimbe întârzierile produse în cursul punerii în aplicare. Acest lucru face dificilă utilizarea principiilor Scrum în proiecte de cost fix / timp fix. Scrum ideologie susține că este imposibil să se prevadă toate schimbările, astfel încât nu există nici un sens de a planifica în avans pentru întregul proiect este limitat doar de programare just-in-timp, adică. E. Numai planificarea lucrărilor de care urmează să fie executate în următoarea Sprint'ah.

2. Scrum-proiect, principala sursă de informații de încredere este o experiență empirică a participanților.
În «Călăuză Scrum» se referă la necesitatea punerii în aplicare integrale și exactă a prevederilor Scrum, în absența unui lider formal și manager.

3. Echipa Motivația joacă un rol important în succesul Scrum-proiect.
Unul dintre principiile de bază ale Scrum-proiect este disponibilitatea echipei multi-funcțional și auto-organizare DT. Studiile efectuate de sociologi arată că numărul angajaților auto-motivați, capabile de auto-organizare nu este mare. Astfel, doar o mică parte din personalul este capabil să lucreze în mod eficient într-un proiect, fără Scrum schimbări semnificative în rolurile, ceea ce duce la o utilizare incorectă a principiilor Scrum.

Pro și contra Scrum-proiect

Unul dintre principalele avantaje din punct de vedere al Clientului, un start-Srcum proiect rapid, cu cele mai înalte funcții prioritare și cel mai mic buget posibil. Astfel, Scrum se concentrează pe client. Scrum permite clientului să facă modificările cerințelor în orice moment, dar nu poate garanta că aceste modificări vor fi puse în aplicare. Posibilitatea cerințelor în schimbare este atractiv pentru mulți clienți. În plus față de acest lucru, Scrum simplifică monitorizarea progresului lucrărilor.

Cu toate acestea, modificările cerințelor Scrum-proiectare se va schimba, de asemenea, bugetul proiectului. Un compromis rezonabil este să încheie acordul de a dezvolta proiectul cu o defalcare treptată, plus un acord suplimentar cu privire la modificările survenite în cursul dezvoltării proiectului.

O slăbiciune importantă a Scrum este de a crea un multi-funcțional echipe de auto-organizare. Formarea unei echipe de dezvoltare eficientă a Scrum-proiecte sunt adesea asociate cu lipsa de specialiști adecvate (cunoștințe + experiență + salariu) în societate și pe piața forței de muncă.

Trebuie remarcat faptul că Scrum nu este adecvat pentru punerea în aplicare a statului-comenzi, în cazul în care pentru a începe dezvoltarea de software ar trebui să fie toate convenite, și anume, TK este format și cerințele definite stabilite datele în etape și a aprobat bugetul.