Mis on Tarkvaraarenduse elutsükkel (SDLC - Software Development Life Cycle)


Tarkvaraarenduse elutsükkel on protsess mille käigus tehakse mingisugune tarkvaratoode
Saab ka muuta juba olemasolevat tarkvaratoodet.

Mis on tarkvaratoode?

Tarkvara toode on midagi, mis saavutatakse Tarkvaraarenduse elutsükli käigus selle tulemine
ning mida klient või lõppkasutaja saab kasutada millegi tegemiseks. tarkvaratoode võib olla kas
installeritav programm, serveritarkvara, driver, või ükskõik muu rakendus mis kasutaja jaoks
midagi teeb.

Mis on Tarkvaraarenduse elutsükli eesmärk?


Elutsükkli eesmäk on tagada, et valmistatakse kvaliteetne toode, mis vastab kliendi nõutele
ning kasutaja vajadustele ning ootustele. Olgu need ootused siis funktsionaalsed või mittefunktsionaalsed.
Ideaalis on eesmärk ka tagada seda, et toode valmiks õigeaegselt, jääb oma eelarve piiridesse, töötab
kasutaja jaoks effektiivselt, on võimeline integreeruma kasutaja IT taristuga ja ei ole kulukas hooldada,
ega vajadusel täiendada.


Milline näeb välja tüüpiline Tarkvaraarenduse elutsükkel?

Tarkvaraarenduse elutsükkel on oma sisemuselt jaotatud etappidesks. Olenevalt mudelist need erinevad
aga üldiselt on igas mudelis olemas need 4 üldiselt etappi mingil kujul, kui otsene analoog olenevalt muudelist
puudub. On olemas Analüüs, Projekteerimine ja/või kavandamine, teostus ning hooldus.



Mida nendes etappides tehakse?


Analüüsi etapp

Siin toimub tarkvaraprojektile vajalike nõuete selgitamine. Segitakse välja mida tahab klient, ning
mis lõppkasutajatel vaja on, mida nad sellest. Ootavad. Selgitatakse välja funkstionaalsed nõuded ja ka mittefunktsionaalsed nõuded. Näiteks oleks kalorokalkulaatoril sellised nõuded: funkstionaalsed nõuded mittefunktsionaalsed nõuded programm lubab kasutajal arvutada oma päevast tarbimist kasutajal on lihtne ja mugav programmiaknas navigeerida program laseb kasutajal valida olemasolevaid tooteid programm toetab vaegnägijaile programmi kasutust kasutaja saab arvutada kaloreid kodus tehtud söögi kohta programm saadab märguandeid telefonile hoiatuste ja eesmärkide saavutuse kohta


Projekteerimise etapp


Siin määratakse ära, süsteemi sisemine arhitektuur, osised, liidesed ja muud omadused.
Selle töö tulemusena tekkib arendatavast tarkvaraprojetile kavand. Selles etapis analüüsitakse
Eelnevas etapis paikapandud nõuded ja kirjeldatakse selle abil struktuur. Projelti kavand ongi
aluseks kuidas järgmises etapis projekti teostama hakatakse.


Teostusetapp


Selles etapis, põhinedes eelnevalt saadud kavandile, algabki arendustöö mille käigus reaalselt nüüd
tarkvaratoode valmis saadaksegi. Kuna eelnevalt kirjeldati ka süsteemi pisidetailid, saab siin rakendada
tervet arendusmeeskonda, kus iga liige või iga alamgrupp arendab ühte kirjeldatud detaili. Kogu projekt
on eri osadekaudu parallelselt arenduses. Siin toimub ka testimine, otsitakse vigu, nii koodis kui ka
kasutaja vaatepunktist, ja tagatakse et valmistatav tarkvaratoode on üleüldiselt vigade vaba.


Hooldusetapp


Pärast lõpetatud teostusetappi antakse tooe kliendile ja kasutajaile üle, ning kõik mis toimub pärast
üleandmist, on hooldus. Hoolduse all saab teostada edasisi parandusi, toote optimeerimist ja monitooringut
mille abil tagatakse et tarkvaratoode jätkab tööd tõrgeteta
Hooldusetapp raames saab klient ka esitada uusi nõudeid, midaprjektile juurde arendada. See aitab
tootel püsida konkurentsivõimelisena.


Tarkvaraarenduse elutsükelis on kõik eeltoodud etapid mingil kujul olemas



Erinevad tarkvaraarenduse elutsüklid:

Alljärgnev nimekiri on näidetest erinevatest elutsükelimudelitest: