Jugametoodika vs RUP
Tarkvaratööstuses kasutatakse tänapäeval arvukalt erinevaid tarkvara arendamise metoodikaid. Juga arendamise meetod on üks varasemaid tarkvara arendamise meetodeid. Waterfall tarkvaraarenduse metoodika on järjestikune mudel, milles iga etapp viiakse täies mahus lõpule ja järgitakse fikseeritud järjekorras. RUP (Rational Unified Process) on iteratiivse tarkvaraarenduse metoodikate kohandatav protsessiraamistik. RUP tegeleb juga arengu mitme kriitikaga, näiteks jäikus.
Mis on juga metoodika?
Jugametoodika on üks varasemaid tarkvaraarendusmudeleid. Nagu nimest järeldada võib, on tegemist järjestikuse protsessiga, milles progresseerub mitu faasi ülalt alla, analoogselt juga. Waterfall-mudeli etapid on nõudmiste analüüs, kavandamine, väljatöötamine, testimine ja rakendamine. Ärianalüütikud (või programmeerijad ise, kui see on väike organisatsioon) viivad analüüsi etapi läbi, saades projekti kliendilt süsteemi ja ärinõuded. Seejärel töötavad tarkvaraarhitektid (või vanemad tarkvaraarendajad) välja kujundusdokumendid, millel on kujutatud kavandatud süsteemi struktuur ja komponendid. Seejärel kodeerivad nooremad arendajad projekteerimisdokumentide abil. Pärast arenduse lõpuleviimist antakse toode testimismeeskonnale üle testimiseks ja kinnitamiseks. Lõpuks rakendatakse (või integreeritakse) toode kliendi saidil ja projekt allkirjastatakse. Oluline on siinkohal märkida, et enne järgmisele faasile liikumist on kõik etapid täielikult täidetud. See mudel oli riistvarale orienteeritud arendusmeetodi (kohandatud töötlevas tööstuses ja ehituses) kohandamise otsene tulemus, kuna tol ajal polnud ametlikku tarkvara arendamise mudelit.
Mis on RUP??
RUP kuulub iteratiivsete tarkvaraarenduse metoodikate hulka. Selle töötas välja Rational Software Corporation (IBM) 2003. aastal. Tegemist on tegelikult kohandatava protsessiraamistikuga (mitte ühe konkreetse protsessiga), mida arendusorganisatsioon saab vastavalt oma vajadustele kohandada. Veega sarnane, sellel on kindlad etapid nagu algus, väljatöötamine, ehitamine ja üleminek. Kuid erinevalt juga on RUP korduv protsess. RUP-i hõivatud kolm strateegiat on kohandatav protsess, mis juhendab arengut, automatiseeritud tööriistad protsessi kiirendamiseks ja teenused, mis aitavad protsessi ja tööriistu kiiremini kasutusele võtta. Need strateegiad hõlmavad tarkvara arendamise kuut parimat tava (iteratiivne arendus, nõuete haldamine, komponendipõhine arhitektuur, visuaalsed tarkvaramudelid, pidev muudatuste kontrollimine ja haldamine).
Mis vahe on juga metoodika ja RUP vahel??
Ehkki Waterfall metoodika ja RUP on määratlenud fikseeritud etapid, on nende kahe mudeli vahel peamised erinevused. Peamine hälve on see, et kuigi jugametoodika on selgelt määratud etappidega protsess, milles praegune faas viiakse lõpule enne järgmisse faasi minekut, on RUP iteratiivne protsess. Erinevalt juga metoodikast arendab RUP toodet aktsionäride tagasiside põhjal mitmes etapis. Kuna iga RUP-i iteratsioon annab käivitatava väljalaske, saavad kliendid eeliseid märgata palju varem kui Waterfall. Ja lõpuks, Waterfall'i metoodika on ettekirjutav konkreetne protsess, samas kui RUP on tarkvaraprotsesside kohandatav raamistik.