Vassfall vs. Smidig: Kva er den beste tilnærminga for eit programvareutviklingsprosjekt?

7/27/2021
7 minutes
Jakub Ryba

Eitt av dei første vala å ta når ein startar eit programvareutviklingsprosjekt er metodikken å bruke. I tilfelle du er ny innan utvikling, er ein utviklingsmetodikk rett og slett måten du organiserer arbeidet ditt på.

For programvareutviklingsprosjekter er de to mest populære metodene Vannfall og Agile. Hvis du spør en moderne utvikler, vil de sannsynligvis fortelle deg at Vannfall er dødt. Imidlertid brukes Vannfallsmetoden fortsatt mye i dag fordi mange organisasjoner fortsatt bruker tradisjonelle utviklingsmiljøer og prosesser.

Både Vannfall og Agile har sine unike krav, sterke sider og utfordringer. For å hjelpe deg med å vurdere når du skal bruke en av disse metodene, skal vi gå gjennom deres fordeler og ulemper, hvor den ene kan være mer egnet enn den andre, og om det er mulig å kombinere de to tilnærmingene og dra nytte av hver av dem samtidig.

 

Vannfallsmetoden

Som navnet antyder, beskriver Vannfall en trinnvis tilnærming med en foreskrevet rekke aktiviteter. Det innebærer at du begynner med å samle og dokumentere alle krav, deretter går videre til design, utvikling, testing og til slutt implementering og levering.

Ingen påfølgende trinn kan begynne hvis det nåværende trinnet ikke er fullført, og sluttresultatet er en oppsummering av alle trinnene som er involvert for å produsere det endelige produktet.

 

Fordeler med vannfallsmetoden

Utviklere bruker vannfallsmetoden fordi den er enkel. Den gjør det mulig å definere hva du bygger i stor detalj i begynnelsen, noe som gjør det enklere å sette start- og sluttdatoer, milepæler og leveranser.

Når utviklingen starter, kan teammedlemmene konsentrere seg om arbeidet sitt uten kontinuerlig å involvere interessenter for å diskutere produktkrav.

Videre, siden alt er dokumentert og godkjent før utvikling, er det endelige produktet mer forutsigbart. Teamet trenger ikke å møtes ofte for å sikre at prosjektet holder seg på kurs for å oppnå det ønskede resultatet.

 

Potensielle ulemper med vannfallsmetoden

Selv om vannfallsmetoden er strukturert og enkel, har den noen begrensninger som gjør den relativt uegnet for noen prosjekter.

For det første kan definisjon av krav på forhånd begrense rommet for kreativitet fordi den ikke oppmuntrer teammedlemmer til å utnytte muligheter de kan oppdage under utviklingen.

Vannfallsmetoden er heller ikke egnet for prosjekter som krever aktiv deltakelse fra sluttbrukere. Derfor er den ikke ideell for prosjekter som krever aktiv kundeinvolvering.

Til slutt kan en rigid metode gjøre det vanskeligere å inkorporere kostnadsjusteringer, spesielt hvis udefinerte behov oppstår underveis. Å gjøre endringer i et ferdig produkt innebærer vanligvis omfattende og kostbare endringer.

 

Den Agile tilnærmingen

Agile-metoden erstatter rigide strukturer med en mer samarbeidsorientert prosess, der krav og resultater utvikles gjennom iterasjoner.

Med Agile-metoden kan et prosjektteam begynne med å etablere noen få initielle krav, deretter gå videre til design, utvikling, testing og implementering. Etter implementering samler teamet tilbakemeldinger og etablerer nye krav for neste oppdatering. Denne syklusen fortsetter til det endelige ønskede produktet er oppnådd.

 

Fordeler med Agile-metoden

Agile tilbyr mye mer fleksibilitet enn Vannfall. Teamet ditt kan enkelt justere prioriteringer og krav for å møte endrede behov. Fleksibilitet fremmer også kreativitet fordi teammedlemmer vet at nye ideer kan implementeres med letthet.

Til forskjell fra vannfallsmetoden, oppmuntrer Agile til tverrfunksjonelt samarbeid. Fordi forventninger kan justeres under utviklingen, jobber interessenter tettere sammen, bidrar med nye ideer og gir hverandre muligheten til å levere det beste endelige produktet.

Agile-prosjekter utvikles og implementeres raskere fordi de hopper over de innledende trinnene med detaljert strukturering og dokumentasjon. Teamet bruker tiden og energien sin på å utvikle og forbedre programvaren med hver iterasjon.

 

Potensielle ulemper med Agile-metoden

Agile har mange fordeler, men det kan være mindre egnet for noen initiativer. Det primære bekymringen med denne tilnærmingen er at tidslinjer, milepæler, budsjetter og det endelige resultatet av prosjektet er mindre forutsigbare. En fleksibel tilnærming til utvikling betyr at resultatene kan være betydelig annerledes enn det som opprinnelig var tenkt.

I tillegg krever Agile den aktive deltakelsen fra alle teammedlemmer og sluttbrukere. Hele teamet må være forberedt på å bruke tid, bygge tillit og bidra til å bygge produktet.

På grunn av at Agile ikke insisterer på dokumentasjon, kan det være mindre egnet for prosjekter som krever omfattende dokumentasjon, som helsevesen og offentlige initiativer.

Til slutt holder Agile et prosjekt mer åpent for endringer enn Vannfall. Som et resultat er omarbeid ofte uunngåelig, noe som skaper muligheten for forsinkelser og ekstra kostnader.

 

Korleis kan du velje mellom Agile og Waterfall for prosjektet ditt?

Agile og Waterfall er unikt effektive. Så, den rette tilnærminga for deg vil avhenge av naturen til prosjektet ditt.

Hvis prosjektet ditt har ein stram tidsfrist, eit stramt budsjett, førehandsdefinerte funksjonar eller strenge regulatoriske krav, vil Waterfall vere det beste for deg. Med denne tilnærminga kan du tydeleg definere prosjektet og følgje ein fast og forutsigbar sti for å oppnå det ønska produktet.

På den andre sida, hvis du ikkje er sikker på kva du treng å byggje i starten, tidsplanen og budsjettet ditt er fleksibelt, du er open for nye idear, og teamet ditt verdset samarbeid over å jobbe i siloar, er Agile vegen å gå.

 

Implementer ein Redmine hybrid løysing for det beste frå begge verdener

På dette tidspunktet lurer du sikkert på om det er mogleg å kombinere både Agile og Waterfall for å dra nytte av fordelane med kvar tilnærming. I sanninga mange utviklingsteam kombinerer desse to metodane for å optimalisere ressurs-utnytting og maksimere kundetilfredshet.

Med Easy Redmine sine Scrum og Kanban-verktøy, kan du utvikle ein hybrid modell der prosjektet startar med ein Waterfall-tilnærming for å kome fram til ein godkjent design, og deretter adopterer Agile for å forbetre det.

Alternativt kan du starte med Agile for å utvikle eit bilete av det endelege produktet ditt og hoppe til Waterfall når du tydeleg forstår kva prosjektet ditt vil oppnå.

Registrer deg med Easy Redmine og få det beste av Agile og Waterfall for prosjektet ditt.

Agile prosjektstyring? Enkelt.

Få alle kraftige verktøy for perfekt prosjektplanlegging, styring og kontroll i én programvare.

Prøv Easy Redmine i en 30-dagers gratis prøveperiode

Full funksjonalitet, SSL-beskyttet, daglige sikkerhetskopier, i din geografiske plassering