Snažan i slap
Postoji više od jednog načina ostvarivanja zadatka, a to vrijedi i za razvoj softvera. Razvojni programer mora donijeti stotine odluka i proći kroz različite pristupe tijekom tečaja. Jedna od prvih odluka koje mora poduzeti jest odabrati pravu metodologiju razvoja. Agile i Waterfall su dvije najčešće pouzdane metodologije za razvoj softvera. Pa, obje služe istoj svrsi koja je pronaći najbolji mogući pristup kako bi se projekt učinio u što kraćem roku, ali to čine vrlo drugačije. Dostupni su pristupi za implementiranje velikih projekata ERP (Enterprise Resource Planning) već dulje vrijeme. Iako obje su dvije strane istog novčića, one imaju svoj pravi udio razlika.
Što je agilno?
Agile je jedna od najistaknutijih metodologija razvoja softvera koja prati inkrementalni pristup izvršavanju zadataka. Ideja je brža isporuka proizvoda pomoću implementacije ERP-a uz očuvanje integriteta metodologije. To je projektna metodologija koja proizlazi iz Leanovog razmišljanja gdje zahtjevi i rješenja napreduju kroz kolektivnu suradnju između timova i krajnjih korisnika. To je suvremeni pristup razvoju koji naglašava prilagodljivo učenje, inkrementalnu isporuku, evolucijski razvoj i kontinuiranu iteraciju. Omogućuje promjene tijekom razvojnog ciklusa, što omogućuje fleksibilnost nadzora napretka projekta čime se smanjuje rizik neuspjeha.
Što je slap?
Slap je planirani tradicionalni pristup razvoju koji slijedi sekvencijski proces dizajna koji može ponekad biti krut. Razvojni ciklus podijeljen je na niz događaja od dokumentiranja zahtjeva do isporuke proizvoda. Razvojni programeri mogu nastaviti samo nakon uspješnog završetka jedne faze. Svaka faza mora biti temeljito pregledana i odobrena od strane klijenta prije nego što programeri prijeđu na sljedeću fazu. Za razliku od Agile, ne dopušta promjene tijekom razvojnog ciklusa što ga čini gotovo teško poništiti kod, čime se povećava rizik neuspjeha. Međutim, napredak se može lako mjeriti jer zahtijeva da programeri izrade papirnati put za svaku fazu razvojnog ciklusa omogućujući glatki i predvidljivi tijek rada.
Razlika između agilnosti i slapova
1) Metodologija agilnosti i slapova
Agile i Waterfall su dvije od najistaknutijih metodologija razvoja softvera koje se koriste za ERP projekte kako bi u najkraćem mogućem roku isporučivali proizvode visoke vrijednosti. Međutim, unatoč zajedničkom cilju, koriste se različiti pristupi kako bi se projekti učinili. Dok Agile slijedi inkrementalni pristup kako bi se stvari učinile, Waterfall koristi sekvencijski proces dizajna.
2) Pristup u agilnom i slapu
Obje su izvedive metode koje se koriste u upravljanju projektima, ali na različite načine. Slap koristi tradicionalni pristup koji može biti ponekad krut i gdje se cijeli razvojni proces dijeli na niz događaja počevši od začeća i sve do proizvodnje. Složen, s druge strane, noviji je od vodopada i koristi inkrementalni pristup mršavom razvoju.
3) Opseg agilnosti i vodopada
Vodopad je više poput planiranog pokreta koji vidi analizu, dizajn, kodiranje, implementaciju i testiranje kao različite faze projekta razvoja softvera. Dobro funkcionira kada je opseg projekta poznat unaprijed, ali ograničava promjene time ograničavajući prilagodljivost. Agilna, kao moderni pristup, otvorena je promjenama koje dolaze po cijeni naravno, ali dobro funkcionira kada je opseg projekta nepoznat.
4) Proces dizajna u agilnom i slapu
Agile počinje jednostavnim projektom, počevši od malih modula tijekom određenog vremenskog razdoblja. Faze razvojnog procesa idu paralelno s redovitim povratnim informacijama i zaostaje se za zadržavanje kartica o napretku. Naprotiv, Slap je sekvencijalni proces koji ne nadzire napredak projekta. Razvojni programer može samo prijeći na sljedeći korak nakon što uspješno dovrši prvi korak jer slijedi sekvencijski pristup.
5) Prioritet u agilnom i slapu
Uvjeti ugovora u Agile metodologiji omogućuju djelomičan uspjeh projekta čime se smanjuje rizik neuspjeha. Kao suvremeni pristup, prioritet je proces koji se temelji na vrijednosti koja zahtijeva primjenu vrijednih značajki čime se smanjuje rizik od neupotrebljivog proizvoda. Vodopad, s druge strane, govori o pristupu "sve ili ništa" koji povećava rizik neuspjeha jer ograničava djelomičnu uspješnost projekta.
Agile vs. Waterfall: Usporedna tablica
Sažetak agilnosti nasuprot slapova
I Agile i Waterfall su dvije najpopularnije metodologije razvoja softvera koje se koriste u ERP projektima, ali slijede različite pristupe kako bi služile zajedničkom cilju; to jest da isporučuje traženi proizvod u najmanju moguću vremensku razinu, bez grešaka i pogrešaka. Agile prati više inkrementalni pristup razvoju softvera koji omogućuje fleksibilnost nadgledanja napretka tijekom razvojnog ciklusa. Vodopad, s druge strane, sve počinje od začeća i inicijacije do implementacije i održavanja.Razvojni programeri mogu nastaviti samo do sljedeće faze nakon što uspješno završi prvu fazu koja ograničava promjene time povećava rizik neuspjeha. Agile omogućuje promjene tijekom razvojnog ciklusa što smanjuje rizik od potpunog neuspjeha.