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


Tarkvaraarenduse elutsükkel on protsess, mille käigus luuakse või täiustatakse juba olemasolevat tarkvaratoodet.

Tarkvaratoode on miski, mis luuakse tarkvaraarenduse elutsükli käigus ning mida klient või lõppkasutaja saab kasutada. Tarkvaratoode võib olla kas paigaldatav programm, serveritarkvara, driver või ükskõik, mis muu rakendus, mis täidab lõppkasutaja jaoks mingit eesmärki.

Sisukord

Mis on tarkvaraarenduse elutsükli eesmärk?

Elutsükli eesmärk on tagada, et valmistatakse kvaliteetne toode, mis vastab kliendi nõuetele ja kasutaja vajatustele ning ootustele, mis võivad olla nii funktsionaalsed, kui mittefunktsionaalsed.

Eesmärgid tootele:

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

Tarkvaraarenduse elutsükkel on jaotatud etappideks. ning olenevalt mudelist võivad need erineda, aga üldiselt on igas mudelis olemas neli üldist etappi:

  1. Analüüs

    Tarkvaraprojektile vajalike nõuete väljaselgitamine - mis on lõppkasutaja vajadused ja ootused, millised on funktsionaalsed ja mittefunktsionaalsed nõuded.

    Näide: kalorikalkulaatori nõuded:

    Funktsionaalsed nõuded Mittefunktsionaalsed nõuded
    Igapäevase kaloritarbimise arvutamine Kasutajasõbralik ja mugav navigatsioon
    Andmebaasis olemasolevate toodete Tugi vaegnägijatele
    Triipkoodide skännimise võimalus Süsteemiressursside minimaalne kasutus
    Märguannete saatmine hoiatuste ja saavutuste kohta Kasutaja info mitte salvestamine serverisse

  2. Projekteerimine

    Määratakse süsteemi sisemine arhitektuur, osised, liidesed ja muud omadused. Selle töö tulemusena tekib arendatavast projektist kavand. Etapis analüüsitakse eelnevas etapis paika pandud nõuded ja kirjeldatakse nende abil struktuur.
    Kavandietappi võib jaotada ka kaheks - üleüldine struktuur selgitatakse välja detailidest eraldi.

    Need jagunevad omakorda kaheks etapiks:

    • Arhitektuuri kavandamine: kõrgtaseme komponentide määramine, seosed teiste suuremate ja üldisemate tarkvara osade vahel.
    • Projekti detailide kavandamine: komponentide ülesehituse täpsustamine (protseduurid, objektid, algoritmid jms)

  3. Teostus

    Eelnevas etapid loodud kavandile tuginedes valmistatakse reaalne tarkvaratoode. Näiteks saab rakendada erinevate pisidetailide jaoks tervet arendajate meeskonda, kus iga liige või alamtiim lahendab ühe kindla detailiga seotud ülesandeid.

  4. Hooldus

    Toote valmides antakse see üle kliendile ning vajadusel teostatakse toote kasutuse ajal ka sellele hooldust. Saab teostada edasisi parandusi, optimeerimist ja toote töökvaliteedi kontrolli.

    Samuti saab klient esitada uusi nõudeid, mida ta tootele juurde soovib. See aitab tootel püsida konkurentsivõimelisena.

    Väga oluline on hooldusfaasis see, et hooldust teostav arendaja/meeskond saaks hõlpsasti aru eelnevate arendajate kirjutatud koodist, sest see aitab projekti haldamisel kokku hoida kulusid, teostada hooldust kiiremini ning lihtsamini.

Erinevad tarkvaraarenduse elutsüklite mudelid üksikasjalikult


Tagasi