Modelis Vmodel vs Waterfall
Viena no vecākajām diskusijām programmatūras inženierijā ir debates starp ūdenskritumu un V modeli. Šīs debates notiek par labāko programmatūras modeli, ko izstrādātāji var izmantot. Programmatūras izstrādes procesā ir iesaistītas dažādas fāzes. Fāzes ir līdzīgas gan ūdenskritumā, gan V modelī, un vienīgais, kas līdz šim ir bijis strīdīgs, ir pieeja, kuru šie divi modeļi var sasniegt ar.
V modelī ir daudz darbību, kuras, uzzīmējot kopā uz shematiskas diagrammas, veido V formu. Katrā teiktajā fāzē ir atbilstoša fāze, kas saistīta ar testēšanu. Šis modelis vienāda skaita testēšanas un izstrādes dēļ tiek dēvēts par verifikācijas un validācijas modeli. Verifikācijas puse nodarbojas ar izstrādes beigām, bet validācija - ar testēšanas posmiem. Starp darbībām, uz kurām attiecas verifikācija, ir prasību analīze, kurā informāciju iegūst no gala lietotāja. Šī informācija ir svarīga programmatūras dokumentācijas izstrādē.
Nākamais ir sistēmas dizains, kura mērķis ir sagatavot programmatūras funkcionālu dizainu. Nākamā lieta, kas seko rindā, ir arhitektūras dizains. To sauc arī par augsta līmeņa dizainu, kas nodrošina saskarnes un datu bāzes tabulas, kā arī tabulu atkarības. Pēdējais izstrādes procesa posms ir kodēšana, kurā viss projekts tiek sadalīts mazās kodēšanas daļās, kuras pēc tam tiek apvienotas, lai izveidotu visu sistēmu.
Validācijas pusei, no otras puses, ir četras pakāpes, tāpat kā verifikācijas posmā. Šīs fāzes sākas ar vienības testēšanu, tad integrācijas testēšanu, sistēmas testēšanu un, visbeidzot, lietotāju pieņemšanas pārbaudi, kurā visa sistēma tiek novērtēta kopumā.
Ūdenskrituma modelis ir agrākā programmatūras izstrādes procedūra, un tā izcelsme ir ražošanas un celtniecības nozarē. Šī procesa pamatkoncepcija ir tāda, ka notiek secīga procesu plūsma, kas viena pēc otras mērogojas, kā redzams ūdenskritumā. Šīs ūdenskrituma modeļa fāzes ietver prasību apkopošanu un analīzi, kur apkopotas klienta prasības. Šis solis noved pie projektēšanas fāzes, kurā tiek izveidota lielākā daļa programmatūras, un pēc tam ieviešanas fāze, kurā tiek uzrakstīts programmatūras kods. Nākamais posms ir pārbaude un atkļūdošana, kas noved pie piegādes un, visbeidzot, apkopes posma.
Galvenā atšķirība starp diviem modeļiem ir tā, ka testēšanas darbības tiek veiktas pēc izstrādes beigām. Liekas, ka V modelis izskatās pēc modeļa, kuram ir noteikts sākums un beigas, turpretī ūdenskrituma modelis nepārtraukti atkārtojas. V modelis atšķiras ar to, ka tas ir vienlaicīgs process. Salīdzinot ar dažādu tirgū ražotu programmatūru, šķiet, ka programmatūra, kas ražota, izmantojot V procesu, ir zemāka, jo ir daudz testēšanas darbību, nevis ūdenskrituma modelim, kam ir viens testēšanas posms, kad projekts ir pabeigts..
Tāpēc var teikt, ka V modeļa izmantošana ir vēlama vienmēr, kad notiek nepārtrauktas izmaiņas, kuras jāiekļauj. Tas attiecas uz cilvēku vai attīstību, kura dēļ klients nav pārliecināts par sava projekta vajadzībām, jo viņi turpina mainīt to, kas, viņuprāt, šķiet ideāls. Cilvēkiem ar fiksētām prasībām, kas nemainīsies projekta izstrādes posmā, vajadzētu samierināties ar ūdenskrituma modeli. Svarīgi arī atzīmēt, ka izmaiņas V modelī ir lētas, jo testēšana notiek un izstrāde notiek vienlaikus. Tas neattiecas uz ūdenskrituma modeli, kam parasti ir dārga lieta, jo visus programmatūras defektus nevar pamanīt, līdz tas nonāk testēšanas fāzē..