Algusesse Tagasi

Kosemudel


Kosemudel (ingl. k. waterfall model) on lineaarne jadapõhine tarkvaraarendusprotsessi elutsükli lähenemismeetod. See on üks esimesi elutsükli mudeleid ning kasutab projektisiseselt loogilist arenduse elutsükli sammude järjestust. Seda saab võrrelda sellega, kuidas vesi voolab kosest alla. Meetodi käigus püstitatakse konkreetsed lõpp-eesmärgid ning peale nende saavutamist pole neid enam võimalik täiendada. Tänapäeval on kosemudeli asemel pigem enamlevinud dünaamilisemad agiilsed mudelid.

Tagasipäärdumine eelmisesse etappi on ekeruline ning kui eelneas etapis tuvastatakse viga, saab selle juurde tagasi tulla alles siis, kui tarkvara on juba kasutusse läinud.

Etapid:

  1. Projekti nõuete defineerimine

    Dokumenteeritakse arendatava toote/süsteemi nõuded, käitumine, sihtriistvara jne. Etapp võib jaguneda kaheks - eraldi süsteemi ja nõuete analüüs.

  2. Süsteemi ja tarkvara kavandamine

    Kavandatakse arendatava toote süsteem ja struktuur, keskendudes selle funktsionaalsetele omadustele. Need võivad olla andmestruktuurid, tarkvara arhitektuur, liideste omadused ja protseduurilised ning algoritmilised detailid. Etapi jooksul tehtud töö dokumenteeritakse ning dokumentatsiooni põhjal hinnatakse teostuse jooksul projekti kvaliteeti.

  3. Töö teostus ning moodulite testimine

    Eelmistes etappides valminud kavandi järgi toimub toote arendus, mille käigus luuakse programm või moodulite kogum. Testitakse valminud mooduleid ja moodulikogumikke. Olenevalt dokumenteeritud kavandi detailsusest oleneb sellest etapist projekti arenduslihtsus - mida detailsem on projekt, seda lihtsam ja mehhaanilisem saab olla teostuse etapp.

  4. Integratsioon ja süsteemi testimine

    Toimub kogu valminud tarkvarasüsteemi testimine, peale mida tarnitakse toodet kliendile ja/või sihtrühmale. Testitakse lähtuvalt süsteemi ühilduvusest varem dokumenteerituga (kas süsteem oma funktsionaalsuse osas nõudeid täidab ning kontrollitakse süsteemi detaile).

  5. Kasutamine ja hooldus

    Tegemist on kõige pikema tarkvara elutsükli etapiga. Süsteemi võidakse muuta, kui kasutajad avastavad vigu, ümbrus ja töökeskkond muutuvad või klient vajab uut funktsionaalsust. Arendustöö teostamiseks korratakse kõiki eelnevaid etappe, kuid ainult olemasoleva süsteemi muutmise eesmärgil.


Iga etapi tulemusena tekib dokumentatsioon, mis kirjeldab vastavas etapis saavutatud tulemit. Kogu dokumentatsioon kinnitatakse, järgnev etapp ei tohi olla samaaegselt töös, kui eelmine pole lõpetatud.

Kosemudeli eelised ja probleemid

Eelised Probleemid
Selgesti defineeritud eesmärgid ja tähtajad Testimine toimub enamasti elutsükli lõpus
Heade kodeerimispraktikate kinnistamine meeskonnas Mudel on liiga jäik, töö käigus leitud suuremate vigade korral võib osutuda vajalikuks alustada kogu tsükkel uuesti nullist
Konkreetne struktuur lihtsustab ülesannete korraldust ja jälgimist Ei anna ruumi töö käigus esitatud uuenduste või muudatuste soovidele kliendi poolt


Viited kasutatud infole:

EUCIP e-õppe arhiiv