Dviejų projektų vadovų pokalbis prie kavos: „Waterfall – tai 1970-ųjų dalykas, pasaulis seniai dirba Agile!” – „Bent jau su Waterfall viskas aišku nuo pradžių, o ne ‘pažiūrėsim po sprinto’.” Tai realios diskusijos atspindys, su kuriuo susiduria daugelis organizacijų, renkantis projektų valdymo metodą.
Kaip dažniausiai būna – teisūs abu. Tik kiekvienas apie skirtingus projektus.
Kas yra Waterfall?
Waterfall (krioklio) metodas – nuoseklus projektų valdymas: kiekviena fazė baigiama prieš pradedant kitą. Analizė → projektavimas → įgyvendinimas → testavimas → perdavimas. Kaip vanduo krioklyje, projektas teka viena kryptimi.
Waterfall privalumai
- Aiškus planas nuo pat pradžių – apimtis, biudžetas ir terminai sutariami prieš pradedant darbus.
- Kiekvienas žino, ką daryti iki pabaigos – mažiau derinimo eigos metu.
- Lengviau planuoti resursus ir susijusius darbus – kada reikės kokių specialistų, žinoma iš anksto.
- Geriau tinka projektams su stabilia aplinka ir gerai apibrėžtais reikalavimais.
Waterfall trūkumai
- Nelankstus pokyčiams: jei reikalavimai pasikeičia įpusėjus, keitimas brangus.
- Rezultatą klientas pamato tik pabaigoje – jei kas nors suprasta ne taip, paaiškėja vėlai.
- Rizika „popierinės pažangos”: dokumentai tvarkingi, o realaus veikiančio rezultato ilgai nėra.
Kas yra Agile?
Agile – iteratyvus metodas: darbas vyksta trumpais ciklais (sprintais), po kiekvieno pateikiamas veikiantis tarpinis rezultatas, o planas nuolat tikslinamas pagal grįžtamąjį ryšį.
Agile privalumai
- Galimybė reaguoti į pokyčius realiuoju laiku – reikalavimų kaita yra ne problema, o proceso dalis.
- Klientai mato pažangą kas kelias savaites – nesusipratimai išaiškėja anksti, kol juos pigu taisyti.
- Sukuriama tai, kas realiai veikia ir džiugina klientą, o ne tai, kas prieš metus buvo įrašyta specifikacijoje.
Agile trūkumai
- Sunkiau iš anksto pasakyti galutinę kainą ir terminą – tai iššūkis biudžetuojant.
- Reikalauja nuolatinio užsakovo įsitraukimo: be reguliaraus grįžtamojo ryšio sprintai sukasi tuščiai.
- Be disciplinos „lankstumas” gali virsti chaosu – Agile nėra „dirbame be plano”.
Kada kuris tinka?
Waterfall tinka, kai: reikalavimai gerai apibrėžti ir mažai keisis, aplinka stabili, klaidų kaina didelė, o rezultato negalima kurti dalimis – pavyzdžiui, statybos, gamybos linijos diegimas, reguliaciniai projektai.
Agile tinka, kai: reikalavimai gali keistis, svarbus greitas grįžtamasis ryšys, produktą galima kurti ir naudoti dalimis – pavyzdžiui, programinės įrangos kūrimas, paslaugų dizainas, inovacijų projektai.
Hibridinis modelis: geriausia iš abiejų
Pasirinkti metodą reikia atsižvelgiant į projektą – bet realybėje daugelis verslo projektų nėra nei grynai „statybos”, nei grynai „softas”. Todėl vis dažniau naudojamas hibridinis modelis:
- Waterfall – planavimui ir architektūrai. Projekto pradžioje aiškiai apibrėžiama apimtis, biudžetas, pagrindiniai etapai ir atsakomybės. Tai duoda valdybai ir finansų vadovui atsakymus, kurių jie pagrįstai reikalauja.
- Agile – įgyvendinimui. Etapų viduje dirbama trumpais ciklais su reguliariais tarpiniais rezultatais ir galimybe koreguoti kursą.
Praktikoje toks derinys pasiteisina, pavyzdžiui, IT sistemų diegimo projektuose: bendras diegimo planas ir biudžetas fiksuojami Waterfall principu, o konfigūravimas ir testavimas vyksta sprintais su nuolatiniu vartotojų grįžtamuoju ryšiu.
Svarbiausia hibridinio modelio sąlyga – aiškus susitarimas, kurios projekto dalys valdomos kuriuo principu ir kas už ką atsakingas. Kitaip gaunamas ne hibridas, o painiava: vieni laukia patvirtinto plano, kiti jau „iteruoja”.
Metodas – įrankis, ne religija
Diskusijos „Waterfall vs Agile” dažnai virsta tikėjimo klausimu. Mūsų praktika rodo paprastesnę tiesą: metodas yra įrankis, kurį reikia rinktis pagal projektą, komandą ir organizacijos brandą. Blogiausias pasirinkimas – aklai taikyti vieną metodą visiems projektams vien todėl, kad „pas mus taip priimta”.