Angle down Atgal

Agile ir Waterfall metodikos: kurią pasirinkti projekto valdymui?

Prieš pradedant įgyvendinti bet kokį projektą, tenka susidurti su projektų valdymo metodikos pasirinkimu. Šis sprendimas ne tik iš esmės pakeis projekto eigą, bet ir gali daryti įtaką šio rezultatams.

Šiuo metu labiausiai paplitusios dvi metodikos - tai Agile ir Waterfall. Šių metodikų tikslas vienas – rasti būdą per kuo trumpesnį laiką sėkmingai įgyvendinti projektą, tačiau abiejų veikimo principai gerokai skiriasi. Paprasčiau tariant, projekto valdymo metodika nustato, kaip bus organizuojamos ir įgyvendinamos projekto užduotys.

Dažniausiai metodikos naudojamos informacinių technologijų srityje, tačiau neretai pritaikomos ir kitų projektų valdymui. Paskutiniu metu pastebima tendencija, kad būtent Agile metodikos gerąsias praktikas ir principus vis dažniau taiko ne IT projektų įgyvendinimui.

Kas yra Agile metodika?

Agile metodikoje pagrindinis dėmesys skiriamas nuolatinėms kūrimo ir testavimo iteracijoms viso kūrimo proceso metu. Čia labai svarbus komandos bendravimas. Tarpusavyje nuolatos turi bendrauti produkto kūrimo / projekto įgyvendinimo komanda, testuotojai, projekto vadovai (vadybininkai) ir klientai. Kiekvienos darbo dienos pradžioje ar pabaigoje turi vykti darbų aptarimas, kas ką nuveikė ir planuoja nuveikti toliau, su kokiais iššūkiais ar problemomis susidūrė, kokios pagalbos gali reikėti, kad kūrimo procesas nesustotų ir pan. Labai svarbu, kad visi komandos nariai tarpusavyje dalintųsi informacija apie einamuosius darbus.

Agile metodika pasižymi tuo, kad visas projekto laikas yra suskirstytas į „laiko dėžutes“, vadinamas sprintais. Kiekvienas sprintas turi apibrėžtą trukmę su aiškiai įvardintais rezultatais, kuriuos reikia pasiekti. Darbo eiga ir rezultatai planuojami pagal prioritetus, išsakytus kliento. Vienas sprintas dažniausiai trunka 2 savaites ir neturėtų viršyti 1 mėnesio. Po kiekvieno sprinto vyksta visos komandos pasitarimas - retrospektyva, kuris padeda dar efektyviau planuoti darbus ir siekti dar geresnių rezultatų planuojamame kitame laikotarpyje.

Agile yra metodika, tinkama programinės įrangos kūrėjams ir inžinieriams, arba kuriant naujus produktus, kai būsimas rezultatas dar nėra visiškai aiškiai apibrėžtas, o laikui bėgant, keičiasi kliento ar vartotojų poreikiai, jų sprendimai. Dėl šios priežasties Agile yra paremta nuolatinio atnaujinimo pagal poreikius ir prioritetus principu. Dinamiškas Agile metodas leidžia projektą vystyti lanksčiai, greitai reaguoti ir įgyvendinti pokyčius.

Kas yra Waterfall metodika?

Waterfall reiškia linijinį požiūrį į projekto valdymą. Tai tradicinis metodas, kuris pagrįstas griežtu planavimu ir plano atlikimu žingsnis po žingsnio. Čia viskas privalo vykti nuosekliai: kiekvienas naujas etapas pradedamas tik galutinai baigus prieš tai numatytą. Dažniausiai Waterfall metodika skirstoma į 7 etapus:

Idėjos išgryninimas: šiame etape gimsta idėja, sprendžiama ką ir kodėl norima sukurti.

Iniciavimas ir analizė: šis žingsnis skirtas atlikti konkurentų analizę, parengti klientų apklausas, surinkti visą reikiamą informaciją, dokumentuoti viską, ko reikės projektui, įskaitant ir galutinio rezultato (pvz.: sistemos ir programinės įrangos) reikalavimus.

Dizainas: yra dvi šio etapo dalys – loginis ir fizinis dizainas. Nusprendžiama, kaip turi atrodyti ir veikti programinė įranga ar produktas, sukuriama gaminio architektūra.

Programavimas / kūrimas: tai žingsnis, kuomet atliekamas pagrindinis projekto darbas, visos idėjos ir dokumentacijos tampa apčiuopiamos. Į projekto vystymą įsijungia programuotojai ar kitų produktų kūrimo komandos, kurios sukuria programinę įrangą / produktą pagal pateiktą dokumentaciją.

Testavimas: tai apima visas testavimo dalis. Pirma atliekamas klaidų testavimas ir taisymas, vėliau gali būti paleista beta versija, kurią testuoja ir vertina vartotojas.

Įgyvendinimas: šiame etape pristatoma galutinė programinės įrangos ar produkto versija klientui arba įvyksta pilnas pakoreguotos sistemos paleidimas.

Waterfall metodas yra tinkamas tiksliai apibrėžtiems projektams valdyti, kur nenumatoma jokių esminių pokyčių. Tai turėtų būti tokia programinė įranga ar produktas, kurio galutinė vizija aiški, reikalavimai ir sprendimai nekinta nuo pat pradžios iki pat paleidimo. Kitu atveju bus sudėtinga įgyvendinti pokyčius ir kartu laikytis kiekvieno etapo baigtumo, prieš pradedant kitą etapą, principo. Taikant šį metodą labai svarbu, kad kiekvienas etapas būtų baigtas iki galo numatytu laiku ir nekliudytų pradėti naujo. Grįžti į ankstesnę darbo fazę negalima, viskas juda tolygiai krioklio principu ir nesigręžioja atgal, todėl metodologija ir vadinama Waterfall.

Esminiai Agile ir Waterfall skirtumai

Lankstumas. Waterfall metodika yra struktūrizuota ir nuosekliai judanti nuo vieno etapo prie kito, todėl čia negalima pritaikyti pokyčių. Projektas turi būti gerai apgalvotas iš anksto ir nesikeisti viso vystymo metu. Tuo tarpu Agile metodas daug lankstesnis. Bet kuriame projekto etape galima įvesti naujus pakeitimus, įgyvendinti papildomus kliento reikalavimus ir taikyti naujus sprendimus.

Proceso suskirstymas dalimis. Agile metodika pasižymi projekto skirstymu į sprintus, kurių metu turi būti pasiekti iš anksto numatyti rezultatai, kurie gali būti pateikti klientui išbandyti ir taip gaunamas grįžtamasis ryšys. Pagal Waterfall metodą valdomi projektai skirstomi į etapus. Kiekvienas etapas turi būti galutinai baigtas prieš pereinant prie kito. Nėra galimybės projekto metu keisti sprendimų, nes negalima sugrįžti į prieš tai buvusį etapą.

Projektų reikalavimų rengimas. Waterfall projekto reikalavimų rengime programuotojai ir testuotojai nedalyvauja, o ruošiant Agile reikalavimus dalyvauja visi komandos nariai, todėl dažnai sprendimai būna išsamiau aptarti ir geriau parengti.

Pagrindinis dėmesys. Agile metodu siekiama sutelkti dėmesį į kliento pasitenkinimą produktu, taip pat didelis dėmesys skiriamas naujovių įvedimui ir gebėjimui prisitaikyti prie kintančių kliento poreikių. Waterfall metodo akcentas yra galutinis produktas. Siekiama kuo greičiau ir tiksliau padaryti tai, kas buvo aprašyta dokumentacijoje.

Projekto dokumentacija. Projektą vystant su Agile metodika projekto aprašymas gali būti pildomas ar keičiamas bet kuriuo metu. Priešingai yra naudojant Waterfall metodą. Šiuo atveju negalima keisti dokumentacijos pradėjus vykdyti projekto plėtrą.

Projekto vaizdas. Waterfall metodikoje visas projektas vertinamas kaip vienas. Visiškai priešingas vaizdas atsiranda Agile metode, čia projektas skirstomas į mažesnes dalis (projektėlius).

Komandos koordinavimas. Komandos koordinavimas yra labai ribotas taikant Waterfall, jos dydis nesvarbus. Priešingai, Agile modelis teikia pirmenybę mažai, bet įsitraukusiai komandai. Taigi jos narių koordinavimas ir bendravimas yra labai intensyvus.

Testavimas. Waterfall metodikoje yra specialus testavimo etapas, kuris prasideda tik galutinai baigus kūrimo (programavimo) etapą. Taikant Agile metodą, testavimas atliekamas kartu su programinės įrangos / produkto kūrimu.

Reikalavimų aiškumas. Jei reikalavimai labai aiškūs ir norima nuoseklumo juos įgyvendinant, geriausiai rinktis Waterfall metodiką. Svarbu nepamiršti, kad vėliau pakeitimai nebus galimi. O, jei projekto reikalavimai abstraktūs ir, tikimasi, keisis vystymo metu, toks projektas geriausiai bus valdomas naudojant Agile.

Agile ir Waterfall metodikos labai skirtingos, todėl verta prieš pasirenkant kurią nors gerai pasvarstyti, kuris metodas bus tinkamiausias valdyti konkrečiam projektui. Supratus esminius skirtumus nesunku teisingai pasirinkti projekto valdymo metodą, padėsiantį optimizuoti kūrimo procesus ir palengvinti komandos darbą.

Remiamas turinys

comment Skaitytojų komentarai (0)

Rekomenduojamas video turinys


Taip pat skaitykite