Ketterä vs vesiputous
Siitä on tullut erittäin nopeatempoinen maailma, ja ohjelmistokehitykseen osallistuvien yritysten on reagoitava nopeasti muuttuviin asiakkaiden tarpeisiin ja toiveisiin. Menneet ovat päivät, jolloin projektit saatettiin saattaa päätökseen rauhassa, ja kilpailun lisääntyessä ja projektien oikea-aikaisesta toimittamisesta on tullut keskeinen kysymys ohjelmistokehityksessä. Ketterä ja vesiputous ovat kaksi erittäin suosittua ohjelmistokehityksen menetelmää, joita organisaatioissa käytetään nykyään. Ihmiset ovat vaihtelevasti vastanneet yhden tai toisen menetelmän paremmuudesta. Molemmilla on omat piirteensä, hyvät ja huonot puolensa, ja ne toimivat paremmin erilaisissa olosuhteissa. On järkevää oppia ketterän ja vesiputouksen väliset erot valitsemalla yksi kahdesta järjestelmästä, joka sopii paremmin tarpeisiisi.
Waterfallin ominaisuudet
Kuten nimestä voi päätellä, vesiputousmalli tapahtuu peräkkäin vaiheesta toiseen. Kehittämistä on useita vaiheita, kuten tunnistaminen, suunnittelu, analysointi, suunnittelu, koodaus, testaus, virheenkorjaus, asennus ja lopulta ylläpito. Mallia kehittävä joukkue etenee seuraavaan vaiheeseen vasta edellisen vaiheen päätyttyä. Ohjelmistosuunnittelijat käyttivät paljon aikaa kussakin vaiheessa, jotta virheitä ei esiintyisi, kun ohjelma on valmis testaukseen. Kun ohjelmisto on suunniteltu, sen koodaus tapahtuu ilman muutoksia myöhemmissä vaiheissa. On yleistä käytäntöä pyytää suunnittelu-, koodaus- ja analysointiryhmiä työskentelemään erikseen projektin eri osissa. Dokumentaatio on olennainen osa Waterfall-metodologian ohjelmistokehitystä.
Ketterän ominaisuudet
Ketterä on joustava lähestymistapa jäykkään järjestelmään vesiputouksessa, ja järjestelmän tunnusmerkki on ketteryys ja sopeutumiskyky. Ketterä on luonteeltaan iteratiivinen eikä seuraa asetettua mallia. Useita iteraatioita on mukana suunnittelun, koodauksen ja testauksen kaikissa vaiheissa. Toisin kuin vesiputous, jossa muutoksia ei sallita, kun suunnittelu on valmis, ketterä ei ole jäykkä lähestymistapa, ja kaikki muutokset, jotka voivat johtaa parannuksiin, voidaan tehdä jopa ohjelmistokehityksen viime hetkellä. Jopa joukkueet, jotka on kehitetty kehittämään ohjelmistoja ketterällä lähestymistavalla, ovat luonteeltaan rajat ylittäviä, ja tiivis yhteistyö ja asiantuntemuksen jakaminen on yhteinen piirre toisin kuin Waterfall. Aikaa vievän dokumentaation sijaan tässä painotetaan ohjelmistojen nopeampaa kehittämistä.
Ero ketterän ja vesiputouksen välillä • Tehokkuuden suhteen ketterä on tehokkaampi, koska se on sopeutuva ja reagoiva reaalimaailman ongelmiin. • Tuotteiden vapauttaminen lyhyemmässä ajassa on mahdollista ketterällä menetelmällä, koska viime hetken muutokset voidaan sisällyttää • Vaikka vesiputous on peräkkäinen, ketterä on iteratiivinen luonne • Ketterä on suosittu ja sitä käytetään laajemmissa olosuhteissa kuin vesiputous • Vesiputous soveltuu paremmin sellaisten ohjelmien kehittämiseen, jotka ovat vakaita ja tarvitsevat vain vähän uudistusta • Vesiputous on helpommin hallittavissa ja kustannukset voidaan tietää etukäteen |