Nøgleforskel – vandfald vs spiralmodel
Nøgleforskellen mellem vandfald og iterativ model er, at vandfaldsmodellen bruges til mindre projekter og projekter med klare krav, mens spiralmodellen bruges til store, komplekse projekter, der kræver kontinuerlig risikoanalyse.
Software Development Life Cycle (SDLC) er en proces, der følges af en softwareorganisation for at udvikle et softwareprojekt. Der er forskellige livscyklusmodeller for softwareudvikling, som kan følges under softwareudviklingsprocessen. Disse modeller er kendt som softwareudviklingsprocesmodeller. Vandfald og spiralmodel er to af dem.
Hvad er vandfaldsmodel?
Vandfaldsmodel er en softwareudviklingsprocesmodel med et lineært sekventielt flow. En fase starter efter afslutningen af den foregående fase. Der er ingen overlapning mellem faserne. I denne tilgang er hele softwareudviklingsprocessen opdelt i faser. Resultatet af en fase bliver input til den næste fase.
Den første fase er indsamling og analyse af krav. I denne fase opsamles og analyseres de nødvendige krav til projektet. Så er de dokumenteret. Dette dokument kaldes Software Requirement Specification (SRS). Næste fase er designfasen. Systemdesignet er med til at definere den overordnede systemarkitektur. I implementeringsfasen udvikles systemet i små enheder. Hver enhed testes og alle enhederne integreres i et komplet system og testes i integrations- og testfasen. Efter at testen er afsluttet, frigives produktet til markedet. Det er implementeringsfasen. Endelig tilføjes nye forbedringer og yderligere forbedringer til produktet i vedligeholdelsesfasen.
Figur 01: Vandfaldsmodel
Vandfaldsmodellen er enkel og let at forstå. Det er nemt at arrangere opgaver og at forstå milepæle. Kun én fase behandles og afsluttes ad gangen. Vandfaldsmodellen er ikke egnet til at udvikle komplekse projekter. Det er heller ikke egnet til et projekt med skiftende krav.
Hvad er spiralmodel?
Spiralmodellen blev introduceret som et alternativ til vandfalds- og prototypemodellen. Hovedfokus for spiralmodellen er at analysere risiko. Faserne i spiralmodellen omfatter planlægning, risikoanalyse, ingeniørarbejde og evaluering. Softwareprojektet gennemgår løbende disse faser i iterationer kaldet spiraler.
Figur 02: Spiralmodel
Basisspiralen starter med planlægning. Identifikation af system- og delsystemkrav udføres i denne fase. Software Requirement Specification (SRS) er udviklet ved hjælp af de samlede krav. Risikoanalysefasen er at identificere de risici, der er forbundet med projektet. Hvis der er nogen risici, foreslås alternative løsninger. En prototype fremstilles i slutningen af denne fase. I ingeniørfasen foregår softwareudvikling og test. I evalueringsfasen vises output til kunden for at få en tilbagemelding. Hvis kunden har godkendt det, kan projektet fortsætte til næste spiral. Igen gennemgår projektet ovenstående faser.
Spiralmodel er mere velegnet til store og komplekse projekter. Det er velegnet til et projekt, der kræver løbende risikoanalyse. Det giver mere kontrol over alle faser af udviklingen. Risikoanalysen kan kræve eksperter, og spiralerne kan tage lang tid. Det er heller ikke en egnet model til små projekter. Det er nogle ulemper ved spiralmodellen.
Hvad er forskellen mellem vandfald og spiralmodel?
vandfald vs spiralmodel |
|
Vandfaldsmodellen er en relativt lineær sekventiel designtilgang til udvikling af softwareprojekter. | Spiralmodellen er en risikodrevet procesmodelgenerator til softwareprojekter. |
Kundeinddragelse | |
I vandfaldsmodellen er kundeinddragelsen minimum. | I spiralmodellen er kundeinvolveringen høj. Kunden har en bevidsthed om, hvad produktet er. |
Flow of the Phases | |
I vandfaldsmodellen, efter at have afsluttet en fase og nået en ny fase, er det ikke muligt at gå tilbage til den forrige fase. | Spiralmodellen fungerer på iterationer, så det er muligt at gå tilbage til de tidligere faser. |
Brug | |
Vandfaldsmodellen kan bruges til små projekter og til projekter med klare krav. | Spiralmodellen kan bruges til store, komplekse projekter, der kræver kontinuerlig risikoanalyse. |
Simplicity | |
vandfaldsmodellen er enkel og nem. | Spiralmodellen er en kompleks model. |
Opsummering – Vandfald vs spiralmodel
To softwareprocesmodeller er vandfalds- og spiralmodeller. Forskellen mellem vandfalds- og spiralmodel er, at vandfaldsmodellen bruges til mindre projekter og projekter med klare krav, mens spiralmodellen bruges til store, komplekse projekter, der kræver kontinuerlig risikoanalyse.