Agiilne (veebi, mobiili vms) arendus vs Waterfall
Lühidalt: kas tunnitasu põhiselt ja agile või projektipõhiselt ja waterfall. Agiilne on uus ja paremini töötav. Waterfall on vanamoodne ja enamasti saab projekti lõpus pettuda, kuna mitte keegi ei suuda projekti alguses kogu projekti ette näha ning “oih, siin vaja see-ja-see ümber teha” selgub alles projekti lõpus. Siis aga on muudatuste sisse viimine kallim.
Tunnipõhiselt agiilsel moel arutatakse kõiki asju jooksvalt läbi. Midagi ei pane lukku rohkemaks kui 1 nädala jooksul jõuab ära teha. Võib eelarve lukku panna aga kõike muud tuleks jooksvalt arutada. Võib kuluda vähem töötunde kui alguses tundus aga kui panna ülempriir siis mitte rohkem, kuna teeme deploy peale igat sprint’i (enamsti nädal) ja siis mõtleb ümber ja otsustab ja tihti jätab asju välja, lisab muid teemasid juurde.
Waterfall meetodiga läheb kõik enne tööde alustamist lepingusse kirja. Mitte midagi, mida lepingus pole, juurde ei tule enne kui leping on täidetud ja makstud. Iga pisemgi muudatus eeldab uut lepingut / ajakulu / lisakulu. Et olla seif side, siis kõik kahtlased kohad lähevad lepingusse maksimum töötundide realt, et mitte sattuda olukorda, kus osad töötunnid jätab klient maksmata. Arendajatele meeldib tihti waterfall rohkem, kuna siis saab tihti mingi osa töötundide eest raha, mida ei pidanudki tegema. Samas on see libe tee, sest ei saa rahulikult arendusega tegeleda vaid peab kogu aeg näpuga lepingus järge ajama ja niipea, kui kasvõi pisemgi asi pole seal kirjas (ja pea kunagi ei oska ju keegi lepingusse iga detaili kirja panna), siis tuleb kliendile öelda: “see pole selles lepingus, sellest räägime kui see leping täidetud.” Kui neid asju tuleb liiga palju, siis aga võib klient pahaseks saada ja kui suhted pole head, siis on tüütu tööd teha. Mis siis, et raha saab rohkem.
Agile puhul on enamasti klient rõõmsam lõpuks ja enamasti on koostöö pikem sest iga kell saab peale lennata ja mida iganes muuta/teha. Ja mis tarkvara see on, mida ei muudeta? Peabki kogu aeg muutma. Ja see, mis millegi tegemine maksab selgub iga nädal, mitte projekti lõpu. Mida varem info kätte tuleb, seda parem. Alati.
Olen inglise keeles pikemalt sellest kõigest kirjutanud siin>> Uncle Bob on paljude progejate suurim iidol ja ta seletab väga hästi, miks waterfall ei tööta ja agile on ainuõige tee. Agile on Eestis miskipärast alles üsna vähe praktiseeritud ja sellepärast kirjutasin eesti keeles veidi rohkem ABC ja inglise keeles ongi pigem hea lugemine peale selle posituse lugemist.
Seal on pikemalt ka kirjutatud, miks on “puhas” kood kõige tähtsam ja kuidas “kiiruga kokku vuristatud” kood on küll alguses soodsam aga see hind läheb üsna pea ebanormaalselt kalliks sest keegi ei saa enam aru, mis seal toimub🙂😊