Vad är vattenfallsmodellen?
WATERFALL MODEL är en sekventiell modell som delar upp programvaruutveckling i fördefinierade faser. Varje fas måste slutföras innan nästa fas kan börja utan överlappning mellan faserna. Varje fas är utformad för att utföra specifik aktivitet under SDLC-fasen. Det introducerades 1970 av Winston Royce.
Olika faser av vattenfallsmodell inom programvaruteknik
Olika faser | Aktiviteter som utförs i varje steg |
Kravsamlingsstadium |
- Under denna fas samlas detaljerade krav på mjukvarusystemet som ska utvecklas från klienten
|
Design Stage |
- Planera programmeringsspråket, till exempel Java, PHP, .net
- eller databas som Oracle, MySQL, etc.
- Eller andra tekniska detaljer på hög nivå av projektet
|
Byggd scen |
- Efter designstadiet är det byggt scen, det är ingenting annat än att koda programvaran
|
Testa scenen |
- I den här fasen testar du programvaran för att verifiera att den är byggd enligt specifikationerna från klienten.
|
Distributionsstadiet |
- Distribuera applikationen i respektive miljö
|
Underhållssteg |
- När ditt system är klart att användas kan du senare behöva ändra koden enligt kundförfrågan
|
När ska man använda SDLC Waterfall Model
Vattenfallsmodell kan användas när
- Kraven ändras inte ofta
- Ansökan är inte komplicerad och stor
- Projektet är kort
- Kravet är klart
- Miljön är stabil
- Teknik och verktyg som används är inte dynamiska och är stabila
- Resurser är tillgängliga och utbildade
Fördelar och nackdelar med vattenfallsmodellen
Fördelar | Fördelar |
- Innan nästa utvecklingsfas måste varje fas vara klar
|
- Fel kan endast åtgärdas under fasen
|
- Lämpar sig för mindre projekt där kraven är väl definierade
|
- Det är inte önskvärt för komplexa projekt där kraven ofta ändras
|
- De bör utföra kvalitetssäkringstest (Verifiering och validering) innan de avslutar varje steg
|
- Testperioden kommer ganska sent i utvecklingsprocessen
|
- Utförlig dokumentation görs i varje fas av programvarans utvecklingscykel
|
- Dokumentation tar mycket tid för utvecklare och testare
|
- Projektet är helt beroende av projektteam med minsta klientintervention
|
- Kundernas värdefulla feedback kan inte inkluderas i den pågående utvecklingsfasen
|
- Eventuella ändringar i programvara görs under utvecklingsprocessen
|
- Små förändringar eller fel som uppstår i den färdiga programvaran kan orsaka många problem
|