Vmodel vs model vodopada
Jedna od najstarijih rasprava o softverskom inženjerstvu je rasprava između vodopada u odnosu na V model. Ova se rasprava vrti oko najboljeg softverskog modela koji programeri mogu koristiti. Postoje različite faze koje su uključene u proces razvoja softvera. Faze su slične i u vodopadu i u V modelu, a jedino što je dosad bilo sporno jest pristup kojem se ova dva modela mogu postići.
U V modelu postoji mnogo aktivnosti koje, kada se zajedno crtaju na shematskom dijagramu, tvore V oblik. Svaka faza koja se kaže ima odgovarajuću fazu koja je uključena u testiranje. Taj se model zbog jednakog broja testiranja i razvoja naziva modelom provjere i validacije. Strana provjere bavi se završnim razvojem, dok se validacija bavi fazama ispitivanja. Među aktivnosti na koje se podvrgava verifikacija uključuju se analiza zahtjeva u kojima se informacije prikupljaju od krajnjeg korisnika. Te su informacije važne u razvoju softverske dokumentacije.
Slijedi dizajn sustava koji ima za cilj pripremiti funkcionalni dizajn softvera. Sljedeće što slijedi u liniji je arhitektonski dizajn. To se također naziva i dizajn visoke razine koji odnosi sučelja i tablice baze podataka i ovisnosti tablica. Posljednja faza u razvojnom procesu je kodiranje gdje je cijeli projekt podijeljen na male dijelove za kodiranje koji se zatim spajaju radi stvaranja cijelog sustava.
Na drugoj strani, potvrda ima četiri faze kao i u fazi provjere. Te faze započinju testiranjem jedinice, zatim integracijskim testiranjem, testiranjem sustava i na kraju testiranjem prihvaćanja korisnika gdje se cijeli sustav ocjenjuje u cjelini.
Model vodopada najraniji je postupak izrade softvera, a njegovo podrijetlo potječe iz proizvodne i građevinske industrije. Osnovni koncept ovog procesa je da postoji slijed tijeka procesa koji se smanjuju jedan za drugim, kao što se vidi u vodopadu. Ove faze modela vodopada uključuju prikupljanje i analizu zahtjeva gdje se skupljaju zahtjevi klijenta. Ovaj korak vodi u fazu dizajna u kojoj se stvara većina softvera, a zatim i fazu implementacije u kojoj je napisan softverski kod. Faza koja slijedi je testiranje i uklanjanje pogrešaka, što dovodi do isporuke i konačno faze održavanja.
Glavna razlika koja je primijećena između dva modela je da se ispitivanja obavljaju nakon završetka razvoja. Čini se da V model izgleda kao model s određenim početkom i krajem, dok je model vodopada kontinuirano iteravan. Model V razlikuje se istodobnim postupkom. Iz različitih softvera koji je proizveden na tržištu, čini se da je softver proizveden pomoću V procesa niži, jer postoje brojne aktivnosti testiranja za razliku od modela vodopada koji ima jedinstvenu fazu testiranja nakon završetka projekta.
Stoga se može reći da je upotreba V-modela poželjna kad postoje stalne promjene koje je potrebno uključiti. To je za osobu ili razvoj koji je klijent nesuvislo u potrebama svojih projekata, jer stalno mijenjaju ono što oni smatraju da izgleda idealno. Ljudi s fiksnim zahtjevima koji se neće promijeniti u fazi razvoja projekta trebali bi se dogovoriti za model vodopada. Važno je također napomenuti da su promjene u V modelu jeftine za provedbu, jer se testiranje odvija i istovremeno. To nije slučaj s modelom vodopada, koji ima tendenciju skupe afere, jer se bilo kakvi nedostaci softvera ne mogu primijetiti dok ne dođe do faze ispitivanja.