Ūdenskrituma metodika pret RUP
Mūsdienās programmatūras nozarē tiek izmantotas dažādas programmatūras izstrādes metodoloģijas. Ūdenskrituma izstrādes metode ir viena no senākajām programmatūras izstrādes metodēm. Waterfall programmatūras izstrādes metodoloģija ir secīgs modelis, kurā katra fāze tiek pabeigta pilnībā un seko noteiktā secībā. RUP (Rational Unified Process) ir pielāgojams iteratīvu programmatūras izstrādes metodoloģiju procesu ietvars. RUP pievēršas vairākām kritikām par ūdenskrituma attīstību, piemēram, stingrību.
Kas ir ūdenskrituma metodoloģija?
Waterfall metodoloģija ir viens no agrākajiem programmatūras izstrādes modeļiem. Kā norāda nosaukums, tas ir secīgs process, kurā progress plūst cauri vairākām fāzēm no augšas uz leju, līdzīgi kā ūdenskritums. Ūdenskrituma modeļa fāzes ir prasību analīze, projektēšana, izstrāde, testēšana un ieviešana. Biznesa analītiķi (vai paši programmētāji, ja tā ir maza organizācija) veic analīzes fāzi, iegūstot sistēmas un biznesa prasības no projekta klienta. Pēc tam programmatūras arhitekti (vai vecākie programmatūras izstrādātāji) izstrādā dizaina dokumentus, kuros attēlota piedāvātās sistēmas struktūra un komponenti. Pēc tam jaunākie izstrādātāji veic kodēšanu, izmantojot dizaina dokumentus. Pēc izstrādes pabeigšanas produkts tiek nodots testēšanas komandai testēšanas un verifikācijas procesu veikšanai. Visbeidzot, produkts tiek ieviests (vai integrēts) klienta vietā un projekts tiek parakstīts. Šeit ir svarīgi atzīmēt, ka katra fāze ir pilnībā pabeigta, pirms pāriet uz nākamo posmu. Šis modelis bija tiešs rezultāts, vienkārši pielāgojot uz aparatūru orientētu izstrādes metodi (kas atrodama ražošanas un būvniecības nozarēs), tajā laikā nebija oficiāla programmatūras izstrādes modeļa.
Kas ir RUP?
RUP pieder iteratīvās programmatūras izstrādes metodoloģiju saimei. To 2003. gadā izstrādāja Rational Software Corporation (IBM). Tas faktiski ir pielāgojams procesa ietvars (nevis viens konkrēts process), ko izstrādes organizācija var pielāgot atbilstoši savām vajadzībām. Nedaudz līdzīgs ūdenskritumam, tam ir noteiktas fāzes, piemēram, izveide, izstrāde, būvniecība un pāreja. Bet atšķirībā no ūdenskrituma RUP ir iteratīvs process. Trīs RUP tvertās stratēģijas ir pielāgojams process, kas vada izstrādi, automatizēti rīki procesa paātrināšanai un pakalpojumi, kas palīdz ātrāk pieņemt procesu un rīkus. Šīs stratēģijas stažieris aptver sešas programmatūras inženierijas labākās prakses (iteratīva izstrāde, pārvaldības prasības, komponentu arhitektūra, vizuālie programmatūras modeļi, nepārtraukta izmaiņu pārbaude un pārvaldība).
Kāda ir atšķirība starp Waterfall Methodology un RUP?
Lai gan Waterfall metodoloģijai un RUP ir noteiktas fiksētas fāzes, starp šiem diviem modeļiem pastāv būtiskas atšķirības. Galvenā atzinība ir tāda, ka, lai gan Waterfall metodoloģija nepārprotami ir secīgs process ar noteiktiem soļiem, kuros pašreizējā fāze tiek pabeigta pirms pāriešanas uz nākamo posmu, RUP ir iteratīvs process. Atšķirībā no ūdenskrituma metodoloģijas, RUP izstrādā produktu vairākos posmos, pamatojoties uz akcionāru atsauksmēm. Tā kā katra RUP iterācija rada izpildāmu laidienu, klienti iegūst priekšrocības daudz agrāk nekā Waterfall. Visbeidzot, Waterfall metodoloģija ir preskriptīvs konkrēts process, savukārt RUP ir pielāgojams programmatūras procesu ietvars.