Tehtävän suorittamiseen on useita tapoja, ja se koskee myös ohjelmistojen kehittämistä. Kehittäjän on tehtävä satoja päätöksiä ja käydä läpi erilaisia lähestymistapoja kurssin aikana. Yksi ensimmäisistä päätöksistä, jotka hänen on tehtävä, on valita oikea kehitysmenetelmä. Ketterä ja vesiputous ovat kaksi yleisintä, mutta luotettavaa menetelmää ohjelmistojen kehittämiselle. No, molemmat palvelevat samaa tarkoitusta, joka on löytää paras mahdollinen lähestymistapa saada projekti toimeen mahdollisimman lyhyessä ajassa, mutta he tekevät sen hyvin eri tavalla. Molempia lähestymistapoja on käytetty jo pitkään suurten ERP (yritysresurssien suunnittelu) -projektien toteuttamiseen. Vaikka molemmat ovat saman kolikon kaksi puolta, heillä on kohtuullinen osuus eroista.
Ketterä on yksi näkyvimmistä ohjelmistojen kehittämismenetelmistä, joka noudattaa asteittaista lähestymistapaa tehtävien suorittamiseen. Ajatuksena on toimittaa tuotteita nopeammin käyttämällä ERP-toteutuksia säilyttäen samalla metodologian eheys. Se on Lean-ajattelusta johdettu projektimenetelmä, jossa vaatimukset ja ratkaisut etenevät tiimien ja loppukäyttäjien välisellä kollektiivisella yhteistyöllä. Se on moderni lähestymistapa kehitykseen, jossa korostetaan adaptiivista oppimista, asteittaista toimitusta, evoluutiokehitystä ja jatkuvaa iteraatiota. Se sallii muutosten tekemisen kehitysjakson aikana, mikä tarjoaa joustavuuden projektin etenemisen valvontaan ja vähentää siten epäonnistumisen riskiä.
Vesiputous on suunnitelmavetoinen perinteinen kehitysmenetelmä, joka seuraa peräkkäistä suunnitteluprosessia, joka voi olla toisinaan jäykkä. Kehityssykli on jaettu tapahtumasarjaan vaatimusten dokumentoinnista tuotteen toimittamiseen. Kehittäjät saavat jatkaa vain yhden vaiheen onnistuneen suorittamisen jälkeen. Asiakkaan on tarkistettava ja hyväksyttävä jokainen vaihe perusteellisesti ennen kehittäjien siirtymistä seuraavaan vaiheeseen. Toisin kuin Agile, se ei salli muutosten tekemistä kehitysjakson aikana, mikä tekee koodin kumoamisen melkein vaikeaksi, mikä lisää epäonnistumisen riskiä. Edistymistä voidaan kuitenkin helposti mitata, koska se vaatii kehittäjiä luomaan paperipolun jokaiselle kehitysjakson vaiheelle mahdollistaen sujuvan ja ennustettavan työnkulun.
Sekä Agile että Waterfall ovat kaksi näkyvimmistä ohjelmistokehitysmenetelmistä, joita käytetään ERP-projekteissa korkean arvon tuotteiden toimittamiseen mahdollisimman lyhyessä ajassa. Yhteisestä päämäärästä huolimatta he kuitenkin käyttävät erilaisia lähestymistapoja saadakseen projektit päätökseen. Vaikka Agile noudattaa asteittaista lähestymistapaa saadaksesi asiat päätökseen, Waterfall käyttää peräkkäistä suunnitteluprosessia.
Molemmat ovat toteuttamiskelpoisia menetelmiä, joita käytetään projektinhallinnassa, mutta eri tavoin. Vesiputous käyttää perinteistä lähestymistapaa, joka voi olla toisinaan jäykkä ja jossa koko kehitysprosessi on jaettu tapahtumasarjaan suunnittelusta aina tuotantoon saakka. Ketterä, toisaalta, on uudempi kuin vesiputous ja käyttää inkrementaalista lähestymistapaa laihaan kehitykseen.
Vesiputous on enemmän kuin suunnitelmavetoinen, joka näkee analysoinnin, suunnittelun, koodauksen, toteutuksen ja testauksen ohjelmistokehitysprojektin eri vaiheina. Se toimii hyvin, kun projektin laajuus tunnetaan etukäteen, mutta se rajoittaa muutoksia ja rajoittaa siten sopeutumiskykyä. Ketterä, nykyaikaisena lähestymistapana avoin muutoksille tulee tietysti hinnalla, mutta toimii hyvin, kun projektin laajuutta ei tunneta.
Ketterä alkaa yksinkertaisella projektisuunnittelulla, joka alkaa pienistä moduuleista tietyn ajanjakson ajan. Kehitysprosessin vaiheet kulkevat rinnakkain säännöllisten palautteiden kanssa, ja tilauskantaa ylläpidetään, jotta välilehdet pysyisivät edistymisessä. Vesiputous on päinvastoin peräkkäinen prosessi, joka ei valvo projektin etenemistä. Kehittäjä voi siirtyä seuraavaan vaiheeseen vasta suoritettuaan ensimmäisen vaiheen onnistuneesti, koska se noudattaa peräkkäistä lähestymistapaa.
Ketterän metodologian sopimusehdot mahdollistavat projektin osittaisen onnistumisen ja vähentävät epäonnistumisriskiä. Nykyaikaisena lähestymistapana siinä priorisoidaan arvoon perustuva prosessi, joka vaatii ensin arvokkaiden ominaisuuksien käyttöönottoa, mikä vähentää käyttökelvottoman tuotteen riskiä. Vesiputous taas tarkoittaa "kaikki tai ei mitään" -lähestymistapaa, joka lisää epäonnistumisriskiä, koska se rajoittaa projektin osittaista onnistumista.
Sekä Agile että Waterfall ovat kaksi suosituinta ohjelmistokehitysmenetelmää, jota käytetään ERP-projekteissa, mutta ne seuraavat erilaisia lähestymistapoja palvellakseen yhteistä tavoitetta; eli toimittaa vaaditun tuotteen mahdollisimman lyhyessä ajassa ilman virheitä ja virheitä. Agile noudattaa entistä asteittaista lähestymistapaa ohjelmistokehitykseen, joka tarjoaa joustavuuden valvoa kehitystä koko kehitysjakson ajan. Vesiputous puolestaan tekee kaiken peräkkäin suunnittelusta ja aloittamisesta toteutukseen ja ylläpitoon. Kehittäjät voivat siirtyä seuraavaan vaiheeseen vasta suoritettuaan ensimmäisen vaiheen onnistuneesti, mikä rajoittaa muutoksia ja lisää siten epäonnistumisriskiä. Ketterä mahdollistaa muutosten tekemisen kehitysjakson aikana, mikä vähentää täydellisen epäonnistumisen riskiä.