CASE-vahendid (Computer-Aided Software Engineering) on tarkvara tööriistad, mis toetavad tarkvaraarenduse ja süsteemide väljatöötamise protsessi. Need vahendid on mõeldud selleks, et automatiseerida ja lihtsustada tarkvaraarenduse ülesandeid, suurendada efektiivsust, parandada kvaliteeti ning vähendada arendusaja- ja kulusid. CASE-vahendid võivad katta kogu arendusprotsessi alates planeerimisest kuni koodi testimise ja hoolduseni.
CASE-vahendid aitavad automatiseerida mitmesuguseid tarkvaraarenduse ülesandeid, nagu:
| Case | Fookus | Eesmärk |
|---|---|---|
| Lowercase | Arenduse hilisemad faasid (koodimine, testimine, hooldus) | Koodi arendamine, testimine, integratsioon, versioonihaldus |
| Uppercase | Arenduse algusfaasid (analüüs, disain, modelleerimine) | Süsteemi planeerimine, nõuete kogumine, modelleerimine |
Waterfall arendusmudeli puhul, mis hõlmab kogu tarkvara arenduse elutsüklit alates nõuete määratlemisest kuni süsteemi hoolduseni, saab kasutada järgmist:
Visual Studio
Agile on iteratiivne ja paindlik tarkvaraarenduse lähenemine, mis keskendub kiirele reageerimisele muutuvatele nõuetele. Arendus toimub väikeste, hallatavate osade (sprindid) kaupa ning see soodustab tihedat koostööd kliendiga.
Big Bang on lihtne lähenemine, kus kogu arenduse töö tehakse korraga ilma suure planeerimise ja iteratsioonideta. Kõik komponendid pannakse "ühe hoobiga" kokku ja lõpptulemust testitakse. Sobib väikeste projektide jaoks, kuid riskantne keerukamate süsteemide puhul.
DevOps on kultuuriline ja tehniline lähenemine, mis ühendab tarkvara arenduse (Development) ja süsteemide halduse (Operations). Selle eesmärk on parandada arenduskiirust ja töökindlust, kasutades automatiseerimist, pidevat integratsiooni (CI/CD) ja koostööd.
Extreme Programming on Agile'i meetod, mis rõhutab tarkvara arendamise parimaid praktikaid (nt pidev koodiarendus, paarisprogrammeerimine, sagedased väljalasked ja testpõhine arendus). Selle eesmärk on tarnida kvaliteetset tarkvara kiiresti ja tõhusalt.
V-Shape (V-kujuline mudel) on klassikaline tarkvaraarenduse mudel, kus iga arenduse etapp (nt nõuded, disain, arendus) vastab kindlale testimise etapile (nt süsteemitestimine, integreerimistestimine). See rõhutab varajast planeerimist ja põhjalikku testimist igas faasis.