Ce este metodologia agilă în managementul de proiect?
ca o echipă care trebuie să livreze un produs până la o anumită dată, există multe lucruri care pot merge greșit.
Ultimul pe care îl doriți este să folosiți un mod învechit de lucru care nu servește pe nimeni.
Dacă utilizați instrumente de management de proiect și doriți să le complimentați cu o metodologie care funcționează-unul care Vă permite să oferiți valoare rapidă – o metodologie agilă ar putea fi ceva în care să vă uitați.
îmbrățișarea unui agil Metodologia permite echipelor de dezvoltare software să învețe să învețe să învețe să învețe din greșelile lor rapid, astfel încât să poată continua să livreze lansări în pași și să ofere valoare fără a irosi timp la lansări mari care durează pentru totdeauna să se execute.
cu un sondaj recent care constată că îmbrățișarea managementului de proiect permite organizațiilor să fie de 28 de ori mai productivă (în comparație cu cele Asta nu), Agile poate fi calea de urmat pentru multe companii.
Să ne aruncăm adânc în ceea ce face să funcționeze agil.
Ce este metodologia agilă ?
Manifestul agil al dezvoltării software, care a fost înființat în 2001, a stârnit o schimbare de paradigmă în industria dezvoltării software, promovând ideea că valoarea și colaborarea cu clienții ar trebui să vină pe primul loc. Iată o definiție din manifest agil de dezvoltare software pentru a vă oferi o idee despre ce agil este tot Despre.
„Descoperim modalități mai bune de a dezvolta software făcând acest lucru și ajutându -i pe ceilalți să o facă.
prin această lucrare am ajuns la valoare:
- Persoane și interacțiuni asupra proceselor și instrumentelor de dezvoltare
- Software de lucru peste documentație cuprinzătoare
- Colaborarea clienților în ceea ce privește negocierea contractului
- Răspuns la schimbarea următoare un plan. ”
Credit de imagine: http://nvisia.com
Există multe interpretări diferite (cunoscute și sub denumirea de arome) pentru metodologii agile, precum și pentru certificări astăzi, dar, de obicei, se încadrează într -una din cele două categorii: Scrum sau Kanban.
Atât Scrum, cât și Kanban se învârt în jurul conceptului de îmbunătățire continuă și furnizarea durabilă a rezultatelor corecte a muncii.
Ce este scrum?
Scrum este un cadru care vă ajută să construiți produse în etape incrementale ale dezvoltării care intenționează să ofere valoare și să crească mai rapid satisfacția clienților. Iată o modalitate de a înțelege cum arată metodologia Agile Scrum la un nivel înalt:
- Proprietarul produsului definește și prioritizează Backlogul produsului
- Echipa lucrează în sprinturi pentru a livra funcționalități/caracteristici/valoare
- La sfârșitul fiecărui sprint, echipa demonstrează lucrul de lucru Funcționalitatea
- Planificarea sprint se bazează pe o perioadă de interval tipic de două săptămâni
- prin eliberarea deseori, echipele atenuează riscul primind feedback -ul timpuriu
- Cele mai bune proiecte păstrează software Echipele de dezvoltare s -au concentrat pe satisfacerea nevoilor clienților de -a lungul tuturor aspectelor ciclului de viață al dezvoltării produselor.
- Nu este prescriptiv în modul în care gestionați dezvoltarea și livrarea bazată pe teste
- , de obicei, nu prescrie modul în care dezvoltatorii ar trebui să urmărească progresul
- Nu există faze stricte sau Transmiteri între dezvoltare și operațiuni
- Echipa urmărește munca și adaptează procesele pentru a răspunde nevoilor în schimbare
- Vizualizarea fluxului de lucru (Kanban Boards) evidențiază blocajele în procesul dvs.
- în loc de Concentrându-se pe sprinturi bazate pe timp, echipele Kanban se concentrează pe fluxul continuu
Chiar dacă am rezumat Scrum ca un singur proces de dezvoltare a software -ului, este important să ne dăm seama că acest proces are multe piese în mișcare, cu un set complex de dependențe.
Fiecare echipă va descoperi cele mai bune practici agile care funcționează pentru mediul lor, dar principala premisă este de a menține echipele mici concentrate pe furnizarea funcționalității de lucru la sfârșitul fiecărui sprint. < /P>
Ce este kanban?
Kanban este o metodologie agilă funcționează ușor diferit de scrum în câteva moduri:
Deoarece Kanban este mai flexibil și mai adaptabil decât Scrum, mulți oameni îl folosesc pentru a gestiona echipele de la distanță.
Credit imagine: http: // en .wikipedia.org
Când lucrați cu o echipă distribuită (mai ales dacă sunt contractori sau freelanceri), principalul obiectiv ar trebui să fie să vă asigurați că toată lumea înțelege la ce articole de lucru sunt lucrate în orice moment – de fapt, iată o listă Cel mai bun software de desktop de la distanță și instrumente de acces Pentru a verifica-instrumente care pot fi o funcționare la distanță Și mai bine.
Acesta este motivul pentru care vă recomandăm să folosiți tablouri Kanban precum Jira Software sau Trello, unde toată lumea poate vedea ce face echipa în orice moment și să ia măsuri în consecință.
Beneficiile metodologiilor agile pentru managementul proiectului
Când vine vorba de o dezvoltare durabilă, oferind membrilor echipei mai multă autonomie înseamnă că sunt împuterniciți să ia decizii în conformitate cu obiectivele generale ale proiectului.
Deoarece sunt mai aproape de ceea ce se întâmplă zilnic, echipa poate realoca resursele sau poate aplica tactici diferite, după cum este necesar, în loc să aștepte aprobarea managementului sau să se bazeze pe programele de sarcini depășite.
Să fim sinceri aici: poate fi greu să convingem un manager că, uneori, este bine ca echipa să producă documentație și să nu code. Cu toate acestea, echipele agile beneficiază de lucrul în faze (definite de proprietarul produsului), cu iterații scurte pentru testare și feedback în loc de faze lungi de lucru, urmate de faze și mai lungi ale corecțiilor de erori.
prin dezvoltarea software-ului, testarea acestuia și eliberarea mai rapidă a funcțiilor de software, echipele încrucișate pot încorpora modificări și feedback de la utilizatori mai devreme, care reduce timpul de piață pentru produse noi. Aceasta înseamnă că echipele agile pot aborda mai repede problemele clienților sau punctele de durere decât concurenții care nu se eliberează suficient de des.
De exemplu, dacă o companie de turism ar dori să adauge funcționalitate „asemănătoare cu uber”, în care pasagerii ar putea rezerva călătorii cu telefoanele mobile, spre deosebire de a-i saluta pe o cabină pe stradă, ar fi benefic pentru ei să dezvolte și să testeze această caracteristică în timp ce aplicația lor este încă în dezvoltare.
Dacă iterațiile durează prea mult, atunci piața țintă s-ar fi putut muta pe o altă metodă (de exemplu, rezervarea prin companii de partajare a călătoriei precum Lyft) până la momentul în care compania de turism poate Dezvoltați noua lor caracteristică.
prin ruperea sarcinilor în piese mai mici de la început, echipele se pot asigura că se concentrează pe livrarea celor mai critice funcții pentru a menține utilizatorii angajați.
Să aruncăm o privire la un alt exemplu. Când dezvoltați o aplicație mobilă pentru pasagerii care se bazează pe transportul public, nu contează câte caracteristici are aplicația dacă nimeni nu o folosește din cauza unor probleme tehnice precum conectivitatea sau durata de viață a bateriei. Prin construirea și testarea fiecărei caracteristici ca funcționalitate independentă înainte de a trece la următoarea fază, echipele agile atenuează riscurile tehnice și asigură succesul proiectului în mai puțin timp.
prin eliberarea deseori pe tot parcursul dezvoltării (de exemplu, în fiecare săptămână), proprietarii de produse pot obține feedback valoros mult mai devreme în ciclul de viață, ceea ce reduce efortul irosit finalizarea lucrărilor care nu pot fi utilizate niciodată.
De exemplu, dacă o echipă Agile dezvoltă o aplicație de mesagerie și proprietarul produsului descoperă că majoritatea utilizatorilor preferă să trimită fotografii folosind WhatsApp în loc de funcția lor actuală, pot înceta să o construiască și să se concentreze pe alte funcții care vor beneficia imediat utilizatorii .
prin colaborarea cu părțile interesate pe parcurs (de exemplu, echipe de marketing și designeri grafici), echipele au mai multe informații despre ceea ce este posibil de la început, ceea ce îi împiedică să promită și să nu mai delreze în viitor.
echipe agile se concentrează, de asemenea, pe furnizarea de muncă de calitate, pe lângă respectarea termenelor, astfel încât echipele să poată menține relații pe termen lung cu clienții sau clienții care știu că pot conta pe ele pentru proiecte noi.
Acestea sunt doar câteva dintre beneficiile pe care le obțineți atunci când utilizați Scrum, Lean sau orice altă metodologie Agile pentru Managementul Proiectului.
Ce gestionare a proiectului agil nu este
Când auziți cuvântul „agil” în ceea ce privește managementul de proiect, vă poate determina să vă gândiți la procese flexibile în care dezvoltatorii au multă libertate și pot oferi noi funcții rapid, fără prea mult supraveghere din partea managerilor.
În timp ce acest cadru de colaborare este unul dintre motivele pentru care mulți oameni preferă agil față de metode tradiționale precum cascada, există unele diferențe distincte între cele două abordări pe care proprietarii de produse ar trebui să le înțeleagă înainte de a alege o metodă.
În timp ce este adevărat că dezvoltarea de software agil oferă rezultate mai rapide decât cascada, echipele au încă nevoie de check-in-uri regulate cu părțile interesate pe parcursul fiecărei iterații, astfel încât să știe ce caracteristici sau funcționalități construiesc și cum vor beneficia utilizatorii.
Proiectele Agile nu sunt ușor de gestionat pentru organizațiile care au un proces de dezvoltare strict în locul în care un manager de proiect sau directori trebuie să aprobe fiecare acțiune înainte de a merge mai departe.
În sfârșit, proiectele agile nu se potrivesc fiecărei echipe sau organizație, așa că ar trebui să vă asigurați că fiecare membru este familiarizat cu abordarea înainte de a decide viitorul proiectului dvs.
Ce management de proiect agil este
prin descompunerea sarcinilor în piese mai mici de la început și adăugând feedback -ul utilizatorilor pe parcursul dezvoltării, echipele agile pot oferi noi caracteristici mai rapide decât concurenții care pot dura luni pentru a elibera produse similare.
echipele colaborează, de asemenea, mai strâns cu părțile interesate în fiecare fază de dezvoltare, ceea ce îi ajută să abordeze proactiv punctele de durere în avans, în loc să piardă timpul creând funcționalitate inutilă.
Credit de imagine: http://apm.org.uk
În cele din urmă, atunci când utilizați metode Scrum sau Lean pentru managementul proiectului, veți putea dezvolta produse de înaltă calitate într-un interval de timp scurt, fără a sacrifica succesul pe termen lung al utilizatorilor dvs.
Cu o abordare corectă, Agile poate oferi rezultate mai bune decât metodele tradiționale, astfel încât proprietarii de produse ar trebui să-i ofere o șansă înainte de a lua decizia finală.
, concentrându -se puternic pe colaborare și implicând părțile interesate de -a lungul fiecărei faze de dezvoltare, abordările scrum și slabe au ajutat cu succes multe echipe de produse să se itereze mai repede ca niciodată.
Cerințe înainte de a utiliza dezvoltarea agilă ca parte a procesului de echipă
procesele agile, în special Scrum, necesită achiziție de la întreaga echipă înainte de a deveni o metodă oficială de gestionare a proiectului.
Aceasta înseamnă că toți proprietarii de produse, managerii și părțile interesate trebuie să înțeleagă de ce Agile este mai bun decât alte metode și ce se pot aștepta în ceea ce privește livrările.
Fără sprijin din partea fiecărui membru al organizației dvs., trecerea la o nouă metodologie ar putea provoca probleme morale în cadrul echipelor sau ar putea îngreuna managerii să le gestioneze fără să simtă că lipsesc ceva important.
Cadrul Agile necesită, de asemenea, proprietarii de produse să se ocupe de mai multă comunicare cu părțile interesate pe parcursul fiecărui pas de dezvoltare. Aceasta poate fi o provocare, deoarece este posibil ca managerii de produse să nu fie la fel de familiarizați cu metodologiile agile în comparație cu dezvoltatorii care au folosit Scrum sau Lean în trecut.
Deși acest lucru nu va reprezenta o problemă pentru membrii juniori care sunt noi în managementul de proiect, poate face mai greu ca echipa senior să conducă la a fi mai adaptativi dacă nu au lucrat îndeaproape cu echipele agile înainte.
În cele din urmă, fiecare dezvoltator ar trebui să fie bine versat în rolul și responsabilitățile sale atunci când lucrează la un proiect agil, deoarece nu ar trebui să existe nicio ghicire despre ceea ce trebuie să facă la un moment dat.
Dacă dezvoltatorii de software nu își cunosc sarcinile în avans, s -ar putea să se lupte să îndeplinească termenele sau să creadă că nu sunt productivi până nu știu ce se așteaptă de la ei. Vorbind despre sarcini, folosind software de gestionare a sarcinilor Vă va permite să profitați la maxim de agil atunci când vine vorba Succesul proiectului.
Cine ar trebui să utilizeze Agile Project Management?
Oricine dorește să obțină rezultate cât mai repede posibil cu contribuții minime din partea părților interesate se va bucura să folosească abordări scrum sau slabe pentru managementul de proiect. Ambele metode oferă multe beneficii față de modelele tradiționale de cascadă. Pe partea de flip, aceste abordări se bazează foarte mult pe munca în echipă în timpul dezvoltării, așa că ar trebui să le utilizați doar dacă echipa dvs. este dispusă să învețe și să se adapteze la nevoie.
Dacă aveți deja o echipă Scrum, care este confortabilă cu fluxurile de lucru iterative și cerințele minime, Scrum sau Lean poate fi una dintre cele mai bune opțiuni de gestionare a proiectului pentru următorul dvs. produs.
Credit de imagine: http://apm.org.uk
necesită mult mai puțin angajament din partea părților interesate, în timp ce încă obțin rezultate rapid, astfel încât acestea sunt ideale pentru întreprinderile care doresc să elibereze o nouă caracteristică la fiecare câteva săptămâni, fără a sacrifica viteza sau calitatea.
De asemenea, Agile Project Management funcționează bine atunci când utilizați software din această listă a cel mai bun software PLM -Ei fac du -te mână în mână.
Cum te economisesc metodele de dezvoltare agilă?
Cel mai mare beneficiu al utilizării cadrului Agile este că veți economisi bani în bugetul dvs. obținând funcții mai repede fără a lucra ore suplimentare.
Multe organizații petrec luni și chiar ani pentru proiecte cu o listă lungă de cerințe înainte de a le elibera vreodată la utilizatorul final.
Acest lucru nu numai că crește șansa de a crea produse buggy sau inutilizabile, dar necesită și mai mult timp de la DevOps, care trebuie să abordeze o inundație constantă de feedback de la fiecare departament din cadrul companiei înainte de a putea trece la următoarea sarcină.
cu metode Scrum sau Lean, echipele de produse se concentrează foarte mult pe colaborare, astfel încât sarcinile sunt finalizate mult mai repede, deoarece toată lumea știe ce se așteaptă de la ele înainte de timp.
Proprietarii de produse nu vor pierde atât de mult timp adunând feedback, care economisesc bani, deoarece nu va trebui să angajeze cât mai mulți consultanți pentru a monitoriza proiectul.
În schimb, se pot concentra pe dezvoltarea de noi funcții, să le aprobe de echipa lor și să le distribuie rapid clienților, fără a fi nevoie să aștepte feedback de la diferite departamente înainte de a merge mai departe.
În cele din urmă, modelele de dezvoltare agilă oferă mai puține riscuri pentru întreprinderi, deoarece echipele pot elibera produse cu cerințe minime care vor economisi bani pe termen lung.
prin scoaterea unor versiuni mai mici la fiecare câteva săptămâni sau luni, nu va trebui să vă actualizați produsul la fel de mult odată ce va fi lansat, astfel încât nu va trebui să angajați dezvoltatori suplimentari sau să petreceți actualizări de testare a timpului suplimentar.
TRAILD cu echipe distribuite atunci când se utilizează metodologii de dezvoltare software Agile
s -ar putea să vă gândiți că un cadru agil scalat în proiectele dvs. de dezvoltare software ar putea fi dificil dacă echipele dvs. de dezvoltare nu funcționează din aceeași locație.
Cu toate acestea, valorile agile afirmă că comunicarea este de cea mai mare importanță și vă puteți adapta structura echipei pentru a lucra în jurul acestui model de management.
De exemplu, dacă aveți echipe distribuite geografic, ar fi dificil să ne întâlnim împreună în persoană. Ar trebui să utilizați instrumente precum software-ul de conferință video, astfel încât toată lumea să poată fi la curent cu ceea ce fac colegii lor.
Va trebui să vă asigurați că dezvoltarea dvs. bazată pe caracteristici se întâmplă și că echipele implicate înțeleg cât de importantă este transparența, deoarece a avea un cadru agil la scară înseamnă că toată lumea trebuie să știe Ce se întâmplă în orice moment. Dacă nu simt că fac parte din proces, atunci pot exista probleme de comunicare mai târziu, care ar putea duce la probleme la eliberarea de noi funcții.
O modalitate excelentă de a promova livrarea timpurie și continuă a valorii cu echipa dvs. este să vă asigurați că aveți un backlog.
Unele echipe creează povești pentru utilizatori, astfel încât toată lumea să știe exact la ce ar trebui să lucreze la un moment dat și să se simtă mai conectați la proiect. Acest lucru poate ajuta, de asemenea, la reducerea blocajelor dacă un dezvoltator se blochează pe o sarcină, asigurându -vă că altele sunt întotdeauna disponibile pentru a gestiona alte funcții.
Cum încep cu dezvoltarea agilă?
Dacă ați decis că utilizarea unei metode de gestionare Agile ar fi cea mai bună pentru compania dvs., va trebui să luați în considerare ca un scrum master să vină pentru a ajuta la stabilirea unor politici specifice companiei. De asemenea, vă ajută să știți ce tip de cadru este cel mai potrivit pentru proiectele dvs. de dezvoltare software.
De exemplu, Scrum permite autoorganizarea în cadrul echipei, în timp ce Lean promovează îmbunătățirea continuă prin reflecție regulată și obținerea feedback-ului clienților.
ar trebui să luați în considerare, de asemenea, dimensiunea echipei dvs. de dezvoltare, deoarece unele cadre vor funcționa mai bine pentru echipele mai mici, în timp ce altele pot fi mai potrivite pentru organizații mai mari.
După ce ați decis asupra unui model de management specific, ar trebui să creați o întârziere și să atribuiți sarcini dezvoltatorilor în consecință, astfel încât toată lumea să înțeleagă solid ceea ce se așteaptă să realizeze.
ar trebui să postați, de asemenea, orice actualizări de cod într -un depozit online, astfel încât toți membrii să poată vedea la ce lucrează coechipierii lor în loc să se bazeze doar pe actualizări verbale care ar putea duce la comunicare greșită.
Acum știți exact care este dezvoltarea de software agil, cum funcționează și chiar cum să începeți aplicarea acestor concepte la procesul dvs. de gestionare a proiectului.
Agile Metodologie FAQ
Ce este o metodologie agilă?
pe scurt, o metodologie agilă este un cadru pentru gestionarea proiectelor de dezvoltare software care prioritizează comunicarea și colaborarea asupra documentației.
Implementările specifice ale acestui model de management vor varia în funcție de preferințele echipei, dar de obicei include un fel de cadru flexibil care poate fi adaptat în funcție de tipul de proiect al echipei dvs. lucrează la.
cadre agile includ, în general, tehnici precum crearea de povești ale utilizatorilor și împărțirea sarcinilor mari în unități mai mici pentru a le face mai gestionabile. Ideea din spatele utilizării acestui tip de model este astfel încât echipele de dezvoltare să poată elibera produse cu cerințe minime care vor economisi bani pe termen lung.
prin scoaterea unor versiuni mai mici la fiecare câteva săptămâni sau luni, nu va trebui să vă actualizați produsul la fel de mult odată ce va fi lansat, astfel încât clienții să fie mai mulțumiți.
Care sunt avantajele unei metodologii agile?
Există multe avantaje pentru utilizarea unui cadru de dezvoltare agilă, inclusiv:
Dezvoltare mai rapidă a software-ului -Utilizarea cel mai bun software de parcurs împreună cu o metodologie agilă înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă că înseamnă Dezvoltatorii dvs. nu trebuie să petreacă o cantitate mare de timp scriind documentație extinsă, vor putea reduce timpul de lansare și să obțină produse pe piață mai repede. De asemenea, face mai ușor de făcut integrarea continuă care ar putea fi necesară.
Credit imagine: http://denysys.com
comunicare îmbunătățită între membrii echipei -Cu actualizări constante pe întregul ciclu de viață al unui proiect, toată lumea ar trebui să fie păstrată la curent cu ceea ce le Colegii fac acest lucru, există foarte puțin loc pentru comunicare greșită sau concedieri în sarcini.
Membrii echipei se angajează să finalizeze sarcinile în loc să le dea jos până mai târziu, ca responsabilitate pentru fiecare sarcină este atribuită dezvoltatorilor respectivi. Acest lucru ajută la promovarea unui sentiment de proprietate în munca care se face, astfel încât dezvoltatorii vor fi mai motivați să facă tot posibilul.
relații îmbunătățite cu clienții – Dacă lucrați cu clienți externi, modelele agile pot ajuta la eficientizarea comunicării între ei și echipa dvs. de dezvoltare, astfel încât toată lumea să știe ce ar trebui să se aștepte unul de la celălalt și când aceste așteptări sunt datorat.
Calitatea produsului este îmbunătățită în timp, deoarece acest model permite rafinări constante pentru produsul dvs., deoarece este construit.
Beneficiile de mai sus reprezintă doar câteva dintre numeroasele motive pentru care au existat o creștere a numărului de organizații care aleg să adopte metodologii de gestionare a software -ului agil.
Ce este dezvoltarea software-ului cascadei?
Aceasta este o abordare tradițională a ingineriei software care urmează o cale liniară din fazele inițiale ale planului de proiect, proiectare, implementare, testare și întreținere.
Credit imagine: http://yugasa.com
Multe organizații folosesc în continuare acest model într -o anumită capacitate sau alta, deoarece oferă un sentiment clar de progres la finalizarea sarcinilor.
Cu toate acestea, deoarece majoritatea proiectelor nu pot fi finalizate într -o singură ședință fără cerințe pe parcurs, există potențial de apariție a erorilor.
Înfășurați.
În concluzie, ar trebui să înțelegeți mai bine ce este metodologia agilă și de ce dvs. sau compania dvs. doriți să o utilizați pentru proiecte viitoare.
Unele concepții greșite comune care înconjoară acest model sunt că poate fi utilizat pentru orice tip de proiect și că este doar un alt cuvânt pentru un mediu haotic de dezvoltare a aplicațiilor fără structură.
Cu toate acestea, împărțind sarcini mari în altele mai mici, puteți aduce produse pe piață mai repede, ceea ce vă poate economisi timp și bani de organizare.
Atâta timp cât cei care lucrează la echipă au instrumentele potrivite, nu există niciun motiv pentru care un cadru agil nu ar trebui să fie pe radarul fiecărei organizații în această zi și vârstă.