Tarkvaraarenduse elutsükkel - SDLC

Tarkvaraarenduse elutsükkel ehk SDLC on tarkvara arendamiseks kasutatav protsess. Tarkvaraarenduse elutsüklis on erinevaid etappe või etappe ja igas etapis toimuvad erinevad tegevused.

SDLC loob struktuuri arendusmeeskondadele, et nad saaksid kavandada, luua ja tarnida kvaliteetset tarkvara, määratledes erinevad toimuvad ülesanded. Elutsükkel määratleb metoodika tarkvara kvaliteedi ja üldise arendusprotsessi parandamiseks.

SDLC eesmärk on see, et see aitaks toota kuluefektiivset, tõhusat ja kvaliteetset toodet.




SDLC faasid

1. Nõuete analüüs

Tarkvaraarenduse elutsükkel algab nõuete analüüsi etapiga, kus huvigrupid arutavad eesmärgi saavutamiseks vajaliku tarkvara nõuete üle. Nõudeanalüüsi etapi eesmärk on tabada iga nõude üksikasjad ja veenduda, et kõik mõistavad töö ulatust ja seda, kuidas iga nõuet täidetakse.

Tavaline tava on arutada ka seda, kuidas iga nõuet testitakse, nii et testijad saaksid nõueanalüüsi koosolekutel osalemisel suurt lisaväärtust luua.


Sõltuvalt sellest, millist tarkvaraarenduse metoodikat kasutatakse, kasutatakse ühest faasist teise liikumisel erinevaid lähenemisviise. Näiteks juga või V mudelis on nõuete analüüsi faas salvestatud SRS-i (tarkvaranõuete spetsifikatsioon) dokumenti ja see tuleb enne järgmise etapi toimumist lõplikult vormistada.

2. Kujundus

SDLC järgmine etapp on kujundusetapp. Projekteerimisetapis alustavad arendajad ja tehnilised arhitektid tarkvara ja süsteemi kõrgetasemelist kujundamist, et oleks võimalik täita kõiki nõudeid.

Projekti tehnilised üksikasjad arutatakse huvigruppidega läbi ja vaadatakse läbi erinevad parameetrid, nagu riskid, kasutatavad tehnoloogiad, meeskonna võimekus, projekti piirangud, aeg ja eelarve ning seejärel valitakse toote jaoks parim disaini lähenemisviis.

Valitud arhitektuuriprojekt määratleb kõik väljatöötamist vajavad komponendid, suhtluse kolmandate osapoolte teenustega, kasutajavood ja andmebaasisuhtluse, samuti iga komponendi esiplaanide esitused ja käitumise. Kujundust hoitakse tavaliselt projekti spetsifikatsiooni dokumendis (DSD)


3. Rakendamine

Pärast nõuete ja projekteerimistoimingute lõpetamist on SDLC järgmine etapp tarkvara juurutamine või arendamine. Selles etapis hakkavad arendajad kodeerima vastavalt eelmistes etappides käsitletud nõuetele ja kujundusele.

Andmebaasi administraatorid loovad andmebaasis vajalikud andmed, esiotsa arendajad loovad vajaliku liidese ja graafilise kasutajaliidese, et back-endiga suhelda, tuginedes ettevõtte poolt määratletud juhistele ja protseduuridele.

Arendajad kirjutavad ka iga komponendi jaoks ühikutestid, et testida enda kirjutatud uut koodi, vaadata üle üksteise kood, luua järkude koostamine ja tarkvara keskkonda juurutamine. Seda arengutsüklit korratakse, kuni nõuded on täidetud.

4. Testimine

Testimine on tarkvaraarenduse elutsükli viimane etapp enne tarkvara klientidele edastamist. Testimise ajal hakkavad kogenud testijad süsteemi nõuetele vastavaks katsetama.


Testijate eesmärk on leida süsteemis defekte ning kontrollida, kas rakendus käitub ootuspäraselt ja vastavalt nõuete analüüsi faasis dokumenteeritule.

Testijad võivad kasutada iga testi sooritamiseks ja tulemuste kontrollimiseks testskripti või kasutada uurimuslikke teste, mis on pigem kogemustel põhinev lähenemisviis.

Võimalik, et testimise etapis tuvastatakse defektid. Kui defekt on leitud, teavitavad testijad arendajaid probleemi üksikasjadest ja kui see on kehtiv defekt, parandavad ja loovad arendajad tarkvara uue versiooni, mida tuleb uuesti kontrollida.

Seda tsüklit korratakse seni, kuni kõik nõuded on testitud ja kõik defektid on kõrvaldatud ning tarkvara on saatmiseks valmis.


5. Kasutuselevõtt ja hooldus

Kui tarkvara on täielikult testitud ja ei prioriteetsed küsimused tarkvarasse jääda, on aeg juurutada tootmisse, kus kliendid saavad süsteemi kasutada.

Kui tarkvara versioon on tootmisse lastud, on tavaliselt hooldustoimkond, kes jälgib kõiki tootmisjärgseid probleeme.

Kui tootmises ilmneb probleem, teavitatakse arendustiimi ja olenevalt probleemi tõsidusest võib see vajada kiirparandust, mis luuakse ja saadetakse lühikese aja jooksul, või kui see pole väga tõsine, võib see oodata kuni tarkvara järgmise versioonini.

Järeldus

Kõik tarkvaraarenduse elutsükli kõik etapid, mis on eespool määratletud, on rakendatavad mis tahes tarkvaraarenduse metoodikale, kuid igas faasis kestus ja tegevused sõltuvad sellest, kas järgite V-mudeli arendusmetoodikat või Agile'i.


Agile'is on töötava tarkvara tarnimise kestus tavaliselt 2 kuni 4 nädalat ja nii lühendatakse kõiki ülaltoodud etappe. Ka agiilselt on see kogu meeskonna lähenemine, kus arendajad ja testijad on kaasatud ja teevad koos kvaliteetset toodet.