Mis on hooldusvabastus?

Hooldusväljalase on tarkvaraväljaanne, mis parandab turvavea või väiksema vea ilma põhikomponente muutmata või uusi funktsioone lisamata. Tavaliselt nummerdatakse need kümnendikku või sajandikku, et eristada neid suurematest väljalasetest, mis on nummerdatud lihtsalt versiooniks 1.0, versiooniks 2.0 ja nii edasi. Hooldusväljalase on osa tarkvara väljalaske elutsükli süsteemide töö- ja tugietapist.

Iga tarkvararakendus läbib tarkvara väljalaske elutsükli. See algab süsteemianalüüsi ja nõuete tuvastamisega, mis on andmete ja protsesside modelleerimise etapp. Seejärel läheb see edasi projekteerimisetappi, ehitusetappi, teostusetappi ning lõpuks käitamis- ja tugietappi. Just selles viimases etapis rakendatakse kasutajatele pidevat tehnilist tuge hooldusväljaannete juurutamise kaudu, mis parandavad vigu või uuendavad kogu süsteemi põhinõudeid ümber kujundades.

Põhiliste programmeerimisvigade parandamiseks on tavaliselt vaja hooldusväljaannet. Need ilmnevad tavaliselt vigade tõttu, mis tehti tarkvara elutsükli ühes eelnevas etapis. Kui näiteks nõuete analüüsi etapis esitatakse nõuded valesti või kinnitatakse need valesti, võib see kaasa tuua suuri vigu, mis ilmnevad alles palju hiljem. See on tegelikult tavaline nähtus, mistõttu on peaaegu iga kunagi välja antud tarkvara kunagi pidanud läbima hooldusväljaande.

Hooldusväljalasel on mitu põhieesmärki. Esiteks peaks väljalase tegema muudatusi olemasolevates programmides, et parandada nõuetes, kavandamises või rakendamisetapis tehtud vigu. Samuti peaks see tagama, et äsja tehtud parandused ei segaks muudetud segmendi muid aspekte ja et äsja tehtud muudatused ei segaks teiste segmentide tegevusi. Lõpuks ei tohiks väljalase süsteemi jõudlust kahjustada. Üldiselt püüavad tarkvarainsenerid selle protsessi võimalikult kiiresti lõpule viia, ohverdamata kvaliteeti või töökindlust.

Enne hooldusväljaande väljastamist tuleb seda põhjalikult testida kolme meetodi abil: üksuse testimine, süsteemi testimine ja regressioonitestimine. Üksuse testimine tagab, et programmi konkreetne segment, mis parandati, töötab nüüd õigesti. Süsteemi testimine seevastu tagab, et programmi äsja fikseeritud segment ei sega teisi programmisegmente. Regressioonitestimisel kasutatakse statistilisi andmeid, et kontrollida, kas muutused mõjutasid positiivselt või negatiivselt üldist läbilaskevõimet või reaktsiooniaega.

Süsteemi hoolduse viimane ja võib-olla kõige olulisem aspekt on versioonikontroll. Protsessi selles osas registreerib koolitatud tarkvarapõhine raamatukoguhoidja hoolikalt kõiki tehtud muudatusi ja jälgib neid. See võimaldab tarkvarainseneridel tagasi pöörduda, kui hooldusväljaandes ilmnevad ootamatud vead.