Tarkvaraarenduse elutsükkel koosneb mitmetest etappidest, mille tegevused on väga erinevad, kuid igal sammul on siiski arendatava tarkvara jaoks vajalikud tegevused. Nendel tegevustel kasutatakse tööriistu, mida tuntakse kui tarkvara reaaltehnoloogia ehk CASE vahendid, mille nimetus tuleb inglise keelsest terminist "Computer-Aided Software Engineering".
CASE-vahendeid kasutatakse erinevates arendusetappides ja need võimaldavad/ lihtsustavad arendajal selliseid tegevusi nagu nõuete analüüs, erinevate protsesside voolukujundamine, ajakava seadmine, dokumentatsiooni genereerimine, versioonihaldus dokumentatsioonile või arendatavale tarkvarale, arendustöö teostamine, arendusmeeskonna ja arendustöö organiseerimine, prototüübi genereerimine jms. CASE vahendid lubavad teha mingi ühe tegevuse või otsast-otsani arendustööd. Kuigi enamus CASE-vahendeid integreerib endas ka mitme erineva etapi või mõlema taseme tööriistu, kategoriseeritakse tööriistad kahte peamisesse kategooriasse:
Inkrementaalne arendusmudel on etapiviisiline ajagraafikut järgiv tegevuskava, kus süsteemi erinevaid osi arendatakse erinevatel aegadel ning erineva kiirusega ning
valminud osad inkrementeeritakse süsteemi külge kohe peale valmimist.
See omab endas järgmisi samme:
| Arendusmudeli samm | Sammus tehtavad tööd | Vastav CASE vahend | Tehtav töö | CASE vahendi logo |
|---|---|---|---|---|
| Spetsifikatsioon | Luuakse algversioon | Upper CASE | Visualiseerib, koostab skeemi, loob dokumentatsiooni | ![]() |
| Arendus | Arendatakse toodet | Lower CASE | Koodikirjutamine | ![]() |
| Valideerimine | Kontrollitakse nõuetele vastavust | Lower CASE | Testimine, valideerimine | ![]() |