Software livscyklusmodeller beskriver faserne i softwarecyklussen og den rækkefølge, i hvilken disse faser udføres. Hver fase producerer de leverancer, der er nødvendige for den næste fase i livscyklussen. Krav omsættes til design. Kode produceres i overensstemmelse med designet, hvilket kaldes udviklingsfasen. Efter kodning og udvikling kontrolleres leverancerne fra implementeringsfasen ved hjælp af testning i forhold til kravene. Testteamet følger Software Testing Life Cycle (STLC), som svarer til den udviklingscyklus, som udviklingsteamet følger.
Der er følgende seks faser i enhver model for softwareudviklingslivscyklus:
Indsamling og analyse af krav
Design
Design
Implementering eller kodning
Testning
Udrulning
Vedligeholdelse
1) Indsamling og analyse af krav: Forretningskrav indsamles i denne fase. Denne fase er hovedfokus for projektlederne og interessenterne. Der afholdes møder med ledere, interessenter og brugere for at fastlægge krav som; Hvem skal bruge systemet? Hvordan vil de bruge systemet? Hvilke data skal indlæses i systemet? Hvilke data skal systemet udsende? Det er generelle spørgsmål, der bliver besvaret i løbet af en fase for indsamling af krav. Efter indsamling af krav analyseres disse krav for deres gyldighed, og muligheden for at indarbejde kravene i det system, der skal udvikles, undersøges også.
Sluttelig oprettes et kravspecifikationsdokument, der tjener som retningslinje for modellens næste fase. Testteamet følger Software Testing Life Cycle og starter testplanlægningsfasen, efter at behovsanalysen er afsluttet.
2) Design: I denne fase udarbejdes system- og softwaredesignet ud fra de kravspecifikationer, som blev undersøgt i den første fase. Systemdesign hjælper med at specificere hardware- og systemkrav og hjælper også med at definere den overordnede systemarkitektur. Specifikationerne for systemdesignet tjener som input til modellens næste fase.
I denne fase udarbejder testerne teststrategien, hvor de nævner, hvad der skal testes, og hvordan der skal testes.
3) Implementering / kodning: Implementering / kodning: Ved modtagelse af systemdesigndokumenter opdeles arbejdet i moduler/enheder, og den egentlige kodning påbegyndes. Da det i denne fase er koden, der produceres, så er det hovedfokus for udvikleren. Dette er den længste fase i softwareudviklingslivscyklussen.
4) Testning: Når koden er udviklet, testes den i forhold til kravene for at sikre, at produktet rent faktisk løser de behov, der er adresseret og indsamlet i løbet af kravfasen. I denne fase udføres alle former for funktionel testning som f.eks. enhedstest, integrationstest, systemtest, accepttest samt ikke-funktionel testning.
5) Implementering: Efter en vellykket testning leveres/implementeres produktet til kunden til brug.
Så snart produktet er givet til kunderne, vil de først foretage betatest. Hvis der er behov for ændringer, eller hvis der opdages fejl, vil de rapportere det til ingeniørteamet. Når disse ændringer er foretaget eller fejlene er rettet, vil den endelige implementering finde sted.
6) Vedligeholdelse: Når kunderne begynder at bruge det udviklede system, opstår der faktiske problemer, som skal løses fra tid til anden. Denne proces, hvor der tages hånd om det udviklede produkt, er kendt som vedligeholdelse.
Se også vores blogs for avancerede teknologier som Tableau-kurser, Cloud Computing, Red hat, og så videre.