Agile vs V Methodologies (Model)
Det finnes mange forskjellige programvareutviklingsmetoder som brukes i programvarebransjen i dag. V Metodikk (V-modell) er en forlengelse av vannfallsutviklingsmetoden (som er en av de tidligste metodene). V-modellens hovedfokus gir like vekt til koding og testing. Agile modell er en nyere programvareutviklingsmodell introdusert for å løse manglene i eksisterende modeller. Hovedfokus for Agile er å inkorporere testing så tidlig som mulig og å frigjøre en fungerende versjon av produktet veldig tidlig ved å bryte ned systemet til svært små og håndterbare deler.
Hva er V Metoder (modell)?
V Metodikk (V-modell) er en programvareutviklingsmodell. Det regnes som en forlengelse av den typiske Waterfall-programvareutviklingsmodellen. V-modellen bruker de samme forholdene mellom fasene som er definert i Fossemodell. Men i stedet for å synke lineært (som vannfallsmodellen) går V-modellen ned diagonalt og beveger seg deretter tilbake (etter kodingsfasen), og danner formen på brevet V. Denne V-formen er dannet for å vise forholdet mellom hver fase av utvikling / design og tilhørende testfase. Tid og nivå av abstraksjon er representert henholdsvis av henholdsvis horisontal og vertikal akse.
Testingen (stigende sti, høyre side av V) er gjort for verifisering, mens de tilsvarende designfasene (nedstigningsbanen, venstre side av V) brukes til validering. I V-modellen blir lik vekt på koding og testing. V-Model anbefaler å opprette testdokument ved siden av designdokumenter / kode. For eksempel skal integreringstestdokumenter skrives når design på høyt nivå blir dokumentert og enhetstester skal dokumenteres mens detaljert designplan utføres. Dette innebærer at en gjennomføringsplan for hver test skal opprettes på forhånd, ikke vente til utviklingen er ferdig, slik at den kan leveres til testteamet.
Hva er Agile?
Agile er en svært ny programvareutviklingsmetode basert på det agile manifestet. Dette ble utviklet for å løse noen mangler i de tradisjonelle metodene for utvikling av V-modell og vannfall. Agile metoder er basert på å gi høy prioritet til kundens deltakelse tidlig i utviklingssyklusen. Det anbefales å inkorporere testing av kunden tidlig og ofte som mulig. Testing er gjort på hvert punkt når en stabil versjon blir tilgjengelig. Grunnlaget for Agile er basert på starttest fra begynnelsen av prosjektet og fortsetter hele tiden til prosjektets slutt. Nøkkeltallene til Agile er "kvalitet er lagets ansvar", som understreker at kvaliteten på programvaren er ansvaret for hele laget (ikke bare testteamet). Et annet viktig aspekt ved Agile er å bryte ned programvaren til mindre håndterbare deler og levere dem til kunden veldig raskt. Å levere et arbeidsprodukt er av største betydning. Deretter fortsetter teamet å forbedre programvaren og levere kontinuerlig på hvert stort trinn. Dette oppnås ved å ha veldig kortvarige sykluser kalt sprints og få tilbakemelding til forbedring på slutten av hver syklus. Bidragsytere uten mye samspill av teamet, som utviklere og testere i de tidligere metodene, jobber nå sammen i Agile-modellen.
Hva er forskjellen mellom Agile og V Methodologies (Model)?
Agile modell leverer en fungerende versjon av produktet veldig tidlig sammenlignet med V-Model. Etter hvert som flere funksjoner leveres trinnvis, kan kunden innse noen av fordelene tidlig. Testtidspunktet for Agile er relativt kort sammenlignet med V-modellen, fordi testing er gjort parallelt med utviklingen. Agile er en proaktiv modell (på grunn av sine svært korte sykluser) sammenlignet med den mye mer reaktive V-modellen. V-modellen er veldig stiv og relativt mindre fleksibel enn Agile-modellen. På grunn av alle disse fordelene, er Agile foretrukket over V-modellen for øyeblikket.