Agile vs Waterfall: Hvilken tilnærming å ta i webutvikling?

Smidig vs. Foss: Hvilken tilnærming til webutvikling?

En av de største bekymringene for hvert selskap på reisen for å lage et nettsted er å bestemme utviklingsmetodikken som skal brukes. Utviklingsmetodikk er måten å organisere arbeidet med programvareutvikling på. På den ene siden går du den tradisjonelle ruten hvor alt er lagt ut for deg, eller du kan gå den frie veien, hvor du tar den iterative tilnærmingen, en mer fleksibel måte å jobbe med et prosjekt på. Den ene kalles Waterfall-metoden og den andre er smidig.

Foss metode

Foss-metoden har eksistert i veldig lang tid, derfor er det den tradisjonelle tilnærmingen til programvareutvikling. Prosjektet er delt inn i distinkte stadier og deretter fullført i sekvenser. Det nøyaktige antallet stadier i en Waterfall-metode kan variere fra selskap til selskap og prosjekt til prosjekt, men her er den generelle tilnærmingen:

  • Konsept av prosjekt – Som navnet antyder, er det her prosjektene baby steps starter. Det er der frøet til en idé spirer, og det første i Software Development Life Cycle (SDCL).
  • Igangsetting – Finne de riktige personene til å gjøre jobben og utvide prosjektomfanget, komplett med mål, formål og leveringsdato. Analyse – Det vil foreligge kravspesifikasjonsdokument, og det gjøres mulighetsanalyse av prosjektet.
  • Design – Prosjektet antar en definitiv form gjennom mockups, wireframes og storyboards. Koding – Etter designdiagrammet (flytskjemaer, designmodeller) opprettet i forrige trinn, starter teamet arbeidet med selve appen.
  • Testing – Et kritisk stadium hvor all innsats fra de foregående stadiene testes.
  • Produksjon/implementering – Når alle teststadiene er fullført og i orden, vil produktet komme inn på markedet.
  • Vedlikehold – Utviklingsteamet vil utføre kontinuerlige oppgraderinger og feilrettinger av produktet. Nye funksjoner er også lagt til for å sikre at produktet forblir konkurransedyktig.

Smidig

Agile-metoden, basert på Agile Manifesto, er en nyere form som brukes av utviklere i deres programvareutviklingssyklus. Denne metoden fokuserer på å være slank og utvikle MVP-er eller Minimum Viable Products over hver iterasjon i stedet for å håndtere all planlegging på forhånd.

Agile-metodikken følger Agile-manifestet som ble etablert i februar 2017, og legger stor vekt på teamarbeid, kontinuerlig iterasjon, forbedring, tilbakemeldinger fra brukere og tilpasningsevne til kundens krav.

I Agile skjer de ulike fasene av prosjektutviklingen parallelt, mens en backlog sporer funksjonene og forbedringene som er lagt til. Noen av de mest populære implementeringene av Agile inkluderer Scrum, Kanban, FDD eller funksjonsdrevet utvikling, ASD eller adaptiv systemutvikling og XP eller ekstrem programmering.

Velg en for prosjektet ditt

Både Waterfall og Agile prosjektutviklingsmetoder er levedyktige og vil hjelpe deg med å bygge høykvalitetsprodukter. Begge er fleksible og stabile, og hjelper deg å være organisert mens du planlegger et prosjekt.

Du kan bruke Waterfall når:

Det er ikke sannsynlig at kunden endrer sine krav i løpet av prosjektet. Dette er dermed mer egnet for enkle prosjekter med forutsigbare utfall, og for kunder som kommer med definerte krav. Stabilitetsfunksjonen til Waterfall og den lineære og strukturerte utviklingsveien gjør det enklere for prosjektutviklingsteam.

Smidig utvikling følger en mer evolusjonær utviklingsstil.

Du kan bruke Agile når:

Når markedet før deg er litt usikkert, og du må lage et nytt produkt raskt, så vil Agile være en gjennomførbar løsning.

Agile vil også være en god løsning hvis du ikke har råd til å gjøre noen kostbare feil langs linjen, og spesielt hvis du ikke har mye informasjon om prosjektet. Det vil også være bra om du ikke har råd til å stille strenge krav.

Hvis du ikke ønsker å gjøre noen endringer, spesielt når kravene stadig endrer seg, ønsker å redusere kostnader, fikse feil etter hvert som de oppstår, og fjerne usikkerheten under prosjektutviklingssyklusen, så vil Agile være et godt valg . Dette vil sannsynligvis være grunnen til at startups er så positive til Agile.

I Agile utvikling jobber testere og utviklere sammen, og på slutten av hver intensjon vil produktet sendes og leveres til kunden. Funksjonene endret og oppdatert vil
begynne å fungere med en gang.

Forskjellene på et øyeblikk:

Fossprosesser testes etter at arbeidet er utført, feil vil være vanskelig å rette.

Smidig gir mulighet for tonnevis av fleksibilitet, og de stadig skiftende kravene krever ikke presisjon i journalføring.

Det er imidlertid viktig å gå videre med varsomhet, fordi slike prosjekter sannsynligvis vil flyne. Denne metoden er mer passende for svært erfarne utviklere og en klient som har investert nok i prosjektet. Foss tillater ikke noen vrikk, fordi den beveger seg i en tydelig bane med omhyggelig journalføring. Utviklerne kan enkelt forutsi hvordan sluttproduktet vil se ut. Når ett trinn i prosjektet er ferdig, er det ikke lett å kjøre på nytt og gjøre endringer. Alle elementene i prosjektet er på plass, helt fra prosjektets størrelse til tidslinjen og
budsjett.

Smidige bevegelser i en inkrementell designprosess som gir god plass til forbedring. Dette er fordi prosjektet er delt inn i ulike modeller som testes og evalueres mye.

Prosessen med Waterfalls lineære tilnærming:

  • Samle dokumentkrav
  • Lag designet
  • Kode og enhetstest
  • Systemtesting
  • Utfør UAT-brukeraksepttesting
  • Fikse problemer
  • Levere ferdig produkt til kunden
  • Ideell for alle slags prosjekter

Prosessen med Agiles sprinttilnærming

  • Inkrementell tilnærming til programvaredesign
  • Produktet testes i 2-4 ukers iterasjon
  • Kunden får se produktet og foreslå endringer
  • Ideell for små prosjekter

Konklusjon

Å gå gjennom både Agile og Waterfall gjør det åpenbart at hvis du leter etter et prosjekt med klare mål og definitiv progresjon, vil Waterfall være et godt valg. Ta den smidige banen hvis du vil at prosjektet skal utvikle seg etter hvert som det beveger seg nedover veien mot ferdigstillelse. Det kan til og med bli noe mer du hadde planlagt i de innledende stadiene.

Flikr : //visualpun.ch, mandaruby, Lena Ellis


Om forfatteren: Reema jobber som tankeleder ved PHPBabu.

Legg igjen en kommentar