한국   대만   중국   일본 
Koskmudel ? Vikipeedia Mine sisu juurde

Koskmudel

Allikas: Vikipeedia

Koskmudel (ka jada-, kaskaad- ja klassikaline mudel inglise keeles waterfall model ) [1] [2] on uks enimteatud ja vanimaid tarkvaraarenduse meetodeid [3] , mis on oma nimetuse saanud jarjestikuse veekoskede analoogiast ? vesi langeb uhelt astmelt jargmisse ega poordu tagasi. [4] Toos liigutakse samuti samm-sammult madalamale astmele ning koik etapid peavad olema taielikult lopetatud enne jargmise etapi alustamist. [5]

Kose mudeli puhul keskendutakse projekti kaigus tehtavate toode kirjeldustele. Pannakse kirja tood, mis tuleb tulemuse saavutamiseks teha ning maaratakse nende jarjestus, tahtajad, vajalikud ressursid ja tegijad. [6]

Koskmudeli ajalugu [ muuda | muuda lahteteksti ]

Koskmudel

Koskmudelit kirjeldas esmakordselt Winston W. Royce 1970. aastal. Koskmudel on jarjestikune mudel, mida kasutatakse erineva tarkvara loomiseks, kus projekt kulgeb pidevalt allapoole ega poordu tagasi samamoodi nagu koskede puhul. Niisiis tahendab kose mudel, et jargmise etapi juurde peaks liikuma alles siis, kui eelmine etapp on lopule viidud, kuigi mone mudeli puhul voivad moningad variatsioonid ja muutused olla. [7]

Royce utles, et programmi arendamiseks on kaks olulist etappi: analuus ja kodeerimine, kuid just seetottu, et haldama peab kogu tarkvaraarendusega seotud intellektuaalset vabadust, peab kasutama ka mitmeid teisi uldkulude etappe, mis suuremahulise projekti jaoks on nouded susteemile, tarkvara nouded, analuus, programmi kujundus, kodeerimine, testimine, toimingud. Paljusid Royce'i ideid peetakse tanapaeval iganenuks, kuid probleem ei ole mitte niivord koskmudeli raskes moistmises, vaid selles, et tema vaartuslikest ideedest kiputakse liiga kergekaeliselt loobuma. Moned koskmudeli omadused on valtimatud ja probleemide valtimiseks tuleb olla eriti tahelepanelik. [8]

Koskmudelit jargivad susteemiarendajad teostavad jarjestikku jargmised etapid: nouete analuus, disainimine, realiseerimine, testimine ja hooldamine.

Koskmudeli etapid [ muuda | muuda lahteteksti ]

Koskmudeli etapid [9]

Nouete analuus ja kirjeldamine [2] [ muuda | muuda lahteteksti ]

  • Susteemianaluus
  • Tarkvaraanaluus

Susteemi ja tarkvara kavandamine [2] [ muuda | muuda lahteteksti ]

  • Andmestruktuurid
  • Tarkvara arhitektuur
  • Liideste omadused
  • Algoritmilised detailid

Realisatsioon ja moodulite testimine [2] [ muuda | muuda lahteteksti ]

  • Luuakse programmiosad (funktsioonid, klassid)
  • Luuakse moodulid (programmiosad uhendatakse)
  • Koike testitakse eraldi

Integratsioon ja susteemi testimine [2] [ muuda | muuda lahteteksti ]

  • Programmid ja moodulid uhendatakse
  • Testitakse susteemi loogikat ja osade liidestamist
  • Testitakse vastavust nouetele (valideerimine)

Kasutamine ja hooldus [2] [ muuda | muuda lahteteksti ]

  • Tarkvara kasutatakse
  • Tarkvara muudetakse/taiustatakse, sest:
    • Kasutajad avastavad vigu
    • Umbrus ja tookeskkond muutuvad
    • Klient tahab lisafunktsionaalsuseid

Koskmudeli skeem [ muuda | muuda lahteteksti ]

Koskmudeli skeem [4]

Pohiidee kohaselt jagatakse tegevused nii, et iga tegevus toimub jadamisi eraldi etapina. Olulise tahelepanekuna tuleb markida, et eri autoritel on erinev etappide nimekiri. [9]

Koskmudelit jargivad susteemiarendajad labivad jarjest mitmesuguseid etappe: [4]

  • Eeluuring ? sooritatakse susteemiarenduse tasuvusuuring;
  • Susteemi nouete pustitamine ? kaardistatakse kasutajate jt huvipoolte vajadused ning nouded susteemile;
  • Susteemi nouete analuus ? sustematiseeritakse nouded, noudeid tapsustatakse, lahendatakse vastuolud nouetes;
  • Susteemi arhitektuuri projekteerimine ehk nouetele vastava lahenduse disain;
  • Kodeerimine ehk programmeerimine;
  • Testimine ;
  • Levitamine ehk kasutuselevott;
  • Hooldus .

Iga etapi sooritamise jarel sooritatakse jargmine. Kaesoleva etapi sisendiks on eelneva etapi valjund, kaesoleva etapi valjund on jargneva etapi sisendiks (nt arhitektuur baseerub nouetel ning programm luuakse arhitektuuri alusel). Eelnevate etappide juurde tagasi ei poorduta. Kui testimise kaigus avastatakse viga, mille juured on arhitektuuris, siis koskmudel jaab hatta juhiste andmisega, kuidas poorduda tagasi arhitektuuri etapi juurde, labida uuesti programmeerimise etapp ning minna teisele testimisringile. [4]

Eelnevalt kirjeldatud etappe ei pea organisatsioon taielikult ise labi viima ? voimalik on osta sisse teatud tegevuste taitmist voi osta sisse valmistarkvara ja seda kohandada. Tuupiliselt tuleb eeluuring, susteemi nouete pustitamise ja testimise tegevused siiski labi viia organisatsiooni tootajate olulise osalusega tagamaks tarnitava susteemi sobivuse organisatsiooni tooprotsessidega. Otsuse ? kas valmistada susteem ise, osta sisse arendus voi valmistarkvara ja seda kohandada ? tegemisel tuleks lahtuda tulu-kulu analuusimisest, samuti edasiarenduse jatkusuutlikkusest. [4]

Kuigi mudelil on palju kriitikud on koskmudel teatud tuupi projektide jaoks vaga kasulik ning voib oluliselt kokku hoida nii aega kui ka kulusid. Mudeli kasutamine soltub suuresti sellest, kui hasti moistetakse oma kliendi vajadusi ja kui muutlikud need vajadused on. Muutlike projektide jaoks on olemas teised mudelid. [10]

Koskmudeli eelised ja puudused [ muuda | muuda lahteteksti ]

Eelised [ muuda | muuda lahteteksti ]

  • Kergesti arusaadav ja kasutatav; [5]
  • Lihtne hallata tanu selle jaikusele ? igast faasist on spetsiifiline ulevaade; [5]
  • Uks etapp lopetatakse, enne kui alustatakse teisega; [5]
  • Tootab hasti vaikeste projektidega, kus noudmised on kindlalt paigas. [5]
  • Protsessi ja tulemused dokumentatsioon on korras. [11]

Puudused [ muuda | muuda lahteteksti ]

  • Hiline testimisperiood ? muudatusi on raske ellu viia, kui testimise kaigus selgub, et midagi on valesti; [3] [5]
  • Tarkvara on kasutatav vaid arenduse lopus, mitte varem; [5]
  • Korge riskitase ja teadmatus; [5]
  • Mudel ei sobi keeruliste projektide jaoks; [5]
  • Kehv mudel pikkade ja jatkuvate projektide jaoks; [5]
  • Ei sobi ka projektidele, kus nouetel on suur risk muutuda; [5]
  • Projekti paindumatu jaotus faasideks; [2]
  • Klient naeb tulemust alles lopus ja valesti moistetud nouded loppevad katastroofiga. [2]

Millal kasutada koskmudelit? [ muuda | muuda lahteteksti ]

Koskmudelit saab kasutada, kui:

  • Projekt on vaike; [5]
  • Nouded on hasti tuntud, selged ja fikseeritud; [5]
  • Toote maaratlus on stabiilne; [5]
  • Tehnoloogia ja tehtavad muudatused on arusaadavad; [2] [5]
  • Puuduvad mitmetahenduslikud nouded; [5]
  • Kvaliteetsed allikad on vabalt kattesaadavad; [5]
  • Tarkvara on suhteliselt vaikesemahuline. [2]

Viited [ muuda | muuda lahteteksti ]

  1. Katrin Kaljula. Tarkvara testimine nouete formuleerimise, analuusi ja disaini etapis. Tartu 2004. Lk 11 [1]
  2. 2,00 2,01 2,02 2,03 2,04 2,05 2,06 2,07 2,08 2,09 (vaadatud 27.11.2017)
  3. 3,0 3,1 [2]
  4. 4,0 4,1 4,2 4,3 4,4 (vaadatud 25.11.2017)
  5. 5,00 5,01 5,02 5,03 5,04 5,05 5,06 5,07 5,08 5,09 5,10 5,11 5,12 5,13 5,14 5,15 5,16 (vaadatud 25.11.2017)
  6. Margo Siilber. Tee Nii. Projektijuhtimise konspekt. Tallinn 2014. Lk 42
  7. Waterfall Software Developement Model Oxagile (vaadatud 24.11.2017)
  8. Waterfall (vaadatud 24.11.2017)
  9. 9,0 9,1 "(vaadatud 27.11.2017)" . Originaali arhiivikoopia seisuga 2.03.2018 . Vaadatud 27.11.2017 .
  10. Understanding the Pros and Cons of the Wterfall Model of Software Developement (vaadatud 27.11.2017) [3]
  11. Waterfall Model (vaadatud 27.11.2017)