7. Hooldus

iDevide ikoon Eesmärgid

1) Teada muutuste dokumenteerimist tarkvaras ja programmi dokumentatsioonis

2) Tuua näiteid meetoditest, mida saab kasutada kvaliteedi tagamiseks programmi käigushoidmisel (nt programmi teksti kontroll)


Lõppversiooni valmimise ja paigaldamise järgselt on tänapäeval vajadus tarkvara lahenduse hoolduse järele. Selline vajadus on tingitud sellest, et testimise käigus ei ole tihti võimalik ette näha kõiki tekkida võivaid olukordi, koodi võib olla jäänud mittekorrektseid lahendusi ja funktsioone, teised lahendused, millega tarkvara on sidestatud, võivad muutuda, seadusandlikud aktid, mida tarkvaralahendus peab järgima, võivad muutuda jne.

IEEE standart 1219 defineerib tarkvara hoolduse järgmiselt: „The modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment.” Vabatõlge eesti keelde kõlaks selliselt: „Tarkvaratoote täiustamine pärast üleandmist parandamaks vigu, parandamaks jõudlust või muid parameetreid, kohandamaks tarkvara muutunud keskkonnaga.”

Põhimõtteliselt on tarkvara hooldus jagatav nelja kategooriasse:

  • ·         Kohandav: tarkvara muutmine seoses muutunud keskkonnaga
  • ·         Täiendav: tarkvara muutmine seoses uute (äri)vajadustega muudatuste tegemine
  • ·         Parandav: ilmnenud vigade parandus
  • ·         Ennetav: tulevikus tekkida võivate probleemide ennetamine

Enamus tarkvara hooldusest on kas kohandava või täiendava isdeloomuga.

Muudatuste tegemisele peab eelnema muudatuse analüüs, analüüsimisel tuleb lähtuda järgmisest kriteeriumitest:

  • ·         Muutuse tüüp – kas muudatus parandab sisulisi vigu või lisab uue funktsionaalsuse
  • ·         Muutuse ulatus – kui suure muudatusega on tegu, kui suur on muudatuse tegemiseks kuluv ressursside hulk
  • ·         Muutuse kriitilisus – kas ja kui suurel määral mõjutab muudatus tarkvara stabiilsust ja suurendab turvariske

Muudatuste mahust ja olemusest lähtuvalt on võimalik muudatusi liigitada järgmiselt:

  • ·         Versioon (version): suurem ja põhjalikum muutus, uute funktsioonide lisamisega on muudetud tarkvara struktuuri
  • ·         Väljalase (release): muudatus on lisanud uut funktsionaalsust
  • ·         Paik (patch): väiksemat sorti muudatus, lahendab mõne tekkinud probleemi või parandab vea.

Kõik muudatused tarkvara omadustes ja funktsionaalsuses tuleb kindlasti dokumenteerida. Muudatuste tegemine võib põhjustada uusi vigu ja seetõttu on äärmiselt oluline teada muudatuste olemust ja ajalugu. Kuna tarkava hoolduse käigus tekkivaid muudatusi reeglina on üsna palju, siis tuleb muudatusi ka  hallata. Muudatuste haldamiseks on loodud mitmeid vahendeid ja keskkondi.

Lisalugemist: wikipedia.org