Introducere în Agile și Scrum

Agile este o metodologie de dezvoltare software care are lățimea de bandă pentru a se adapta rapid la schimbarea cerințelor proiectului și pentru a se adapta la dezvoltarea unui nou produs în timp ce proiectul este în desfășurare sau după finalizarea proiectului, spre deosebire de gestionarea tradițională a proiectului.

Să înțelegem avantajul distinctiv pe care îl are agil față de metodologia tradițională de gestionare a proiectelor:

Abordare traditionala:

  • Planificare detaliată înainte de început
  • Permite adoptarea unei modificări minime
  • Definiție de proiect fix

Abordare agilă:

  • Planificarea minimă înainte de început este necesară
  • Va accepta și se va adapta la schimbări
  • Timp și cost fixate

Scrum este cea mai utilizată și populară abordare pentru a implementa o metodologie agilă.

Vom ajunge la secțiunea scrum în scurt timp, dar mai întâi, să vedem mai multe despre cadrul agil.

Principii în spatele manifestului agil

  1. Satisfacția clienților este de cea mai mare prioritate, care este obținută prin livrarea continuă și timpurie a unui software valoros.
  2. Furnizați un software de lucru într-un interval scurt de timp, cu dezvoltarea continuă de noi software / produse în linie, urmând aceeași abordare.
  3. Ar trebui să fim capabili să răspundem cerințelor în schimbare, chiar dacă vine târziu în timpul ciclului de viață SDLC.
  4. Membrii echipei ar trebui să rămână motivați mereu și pentru asta, ar trebui să fie oferit suficient suport și un mediu bun.
  5. Dezvoltatorii și oamenii de afaceri trebuie să lucreze zilnic împreună pe tot parcursul proiectului.
  6. Cel mai eficient mod de conversație este considerat a fi interacțiunea față în față.
  7. Dezvoltare durabilă. Toți membrii echipei ar trebui să poată menține un ritm constant.
  8. Un produs / software de lucru este considerat a fi măsura principală a progresului.
  9. La sfârșitul zilei, accentul principal ar trebui să fie excelența tehnică și designul robust.
  10. Simplitatea trebuie urmată pe parcursul întregului proces SDLC
  11. Echipele ar trebui să prezinte efectiv eficiența continuă și să adopte orice modificări pentru a crește eficacitatea.
  12. Designul și arhitectura robuste provin din echipe de autoorganizare.

Abordări pentru implementarea agilă:

Link: https://goo.gl/images/fkZqGe

  1. SCRUM - Aceasta este o abordare iterativă în care există ceva numit sub formă de sprinturi care durează până la una sau două săptămâni. Această abordare permite echipelor să livreze în mod regulat produsul de lucru sau software-ul.
  2. Kanban - Pentru a pune în aplicare agil, această abordare utilizează un cadru vizual. Aici nu există sprinturi cu o durată fixă, iar echipa primește sarcina dintr-un backlog prioritar.
  3. Extreme Programming (XP) - Această abordare are ca scop îmbunătățirea calității software - ului și capacitatea de reacție prin încorporarea simplitate, feedback - uri și adoptarea schimbare.
  4. Feature Driven Development (FDD) - Această abordare include 5 activități de bază care sunt - Dezvoltați un model de ansamblu, construiți o listă de caracteristici, planificați după caracteristică, proiectați după caracteristică și construiți după caracteristică.
  5. Dezvoltarea sistemului adaptativ (ASD) - Această abordare poate fi utilizată pentru construirea de sisteme și sisteme complexe și se concentrează mai ales pe colaborarea în echipă și autoorganizarea. Cuprinde 3 activități iterative care sunt - Speculează, colaborează și învață.
  6. Metoda de dezvoltare a sistemului dinamic - DSDM este o abordare agilă care urmează o abordare iterativă și incrementală care se bazează în mare parte pe metodologia de dezvoltare rapidă a aplicațiilor. Acesta abordează eșecurile comune ale proiectelor, cum ar fi problemele bugetului de proiect, termenele care lipsesc etc.
  7. Dezvoltare software Lean - Dezvoltarea software Lean este o abordare agilă, care are 7 principii de bază, iar acestea sunt: ​​Eliminarea deșeurilor, Îndrumarea echipei, Livrarea rapidă, Optimizarea întregului, Construirea calității, Amânarea deciziilor și amplificarea învățărilor.

Ce este Scrum?

În secțiunile anterioare, am văzut deja abordările care sunt utilizate pentru a implementa procesul Agile, iar Scrum a fost una dintre ele, Scrum este una dintre cele mai importante și mai utilizate metodologie Agile. Un scrum este o abordare iterativă în care există ceva numit sprinturi care durează până la una sau două săptămâni. Această abordare permite echipelor să livreze în mod regulat produsul de lucru sau software-ul. Aici responsabilitățile, rolurile și întâlnirile sunt decise în Scrum, iar sprinturile sunt programe în care există planificare sprint, demo sprint, standup zilnic și retrospectivă sprint.

Role Scrum / Echipe Scrum:

Link: https://goo.gl/images/XpNHBe

  1. Scrum Master - Scrum Master este un rol care este responsabil pentru echipa Scrum să urmeze metodologia Scrum. Scrum Master organizează întâlniri, încurajează echipa, facilitează planificarea și urmărirea, tratează provocările și gestionează blocajele. Scrum Master comunică, de asemenea, cu Proprietarul produsului pentru a vă asigura că programul de produs este pregătit pentru următorul sprint.
  2. Proprietar de produs - Proprietarul produsului este responsabil pentru analiza și comunicarea versiunii software către echipa Scrum. De asemenea, Proprietarul produsului se coordonează cu Scrum Master pentru a decide cu privire la listele de produse pentru sprinturi.
  3. Echipa de dezvoltare - Echipa de dezvoltare este formată din profesioniștii care sunt responsabili pentru dezvoltarea continuă, testarea și livrarea software-ului. Ei determină modul de a livra bucăți de lucrări în trepte frecvente.

Pași în fluxul Scrum:

Link: https://goo.gl/images/6YTUPf

  1. Backlog Produs - Backlog produs menține lista de caracteristici ale produsului. Este responsabilitatea proprietarului produsului și a maestrului Scrum să acorde prioritate articolelor de retard pe baza poveștilor și cerințelor utilizatorului.
  2. Planificarea Sprint - este o întâlnire care este facilitată de Scrum Master, în care Proprietarul produsului prezintă detaliile produsului, stabilește criteriile de acceptare a livrării și echipa de dezvoltare care definește munca și efortul pe care l-au progresat zilnic.
  3. Rafinare de backlog - Pentru a menține actualizarea produsului înapoi, utilizăm Rafinament Backlog. Aici poveștile utilizatorilor sunt împărțite în părți mai mici și orice povești de utilizator irelevante sunt eliminate
  4. Daily Scrum - Este zilnic o întâlnire de 15 minute în care se discută în principal trei întrebări care sunt: ​​ce a fost realizat ieri, care este planul pentru astăzi și care sunt obstacolele.
  5. Reuniunea Sprint Review - Această întâlnire este realizată la sfârșitul fiecărui sprint, unde este prezentată o demonstrație live pentru a arăta ce s-a realizat pe parcursul sprintului.
  6. Sprint Retrospective Meeting - De asemenea, putem numi această întâlnire ca întâlnire de succes în care echipa discută despre procesul care a funcționat sau care nu a funcționat în timpul sprintului cu soluțiile de rezolvare.

Concluzie

În acest articol, am văzut că Agile este o metodologie de dezvoltare software care are lățimea de bandă pentru a se adapta rapid la schimbarea cerințelor proiectului și pentru a se adapta la dezvoltarea de noi produse în timp ce proiectul este în desfășurare sau după finalizarea proiectului, spre deosebire de managementul de proiect tradițional în timp ce Scrum este cea mai utilizată și populară abordare a implementării metodologiei agile.

Articole recomandate

Acesta a fost un ghid pentru Ce este Agile și Scrum. Aici am discutat despre diferitele abordări ale Agile și Scrum. Puteți parcurge și alte articole sugerate pentru a afla mai multe -

  1. Ce este inteligența artificială
  2. Întrebări la interviu Agile Scrum
  3. Ce este SDLC
  4. Agile vs Scrum vs Cascada