Hvad er vandfaldsmodel i SDLC? Fordele og ulemper

Hvad er vandfaldsmodellen?

Vandfaldsmodel er en sekventiel model, der opdeler softwareudvikling i foruddefinerede faser. Hver fase skal afsluttes, før den næste fase kan begynde uden overlapning mellem faserne. Hver fase er designet til at udføre specifik aktivitet under SDLC-fasen. Det blev introduceret i 1970 af Winston Royce.

Forklar vandfaldsmodel i SDLC
Forklar vandfaldsmodel i SDLC

 

Forskellige faser af vandfaldsmodel i softwareteknologi

Følgende er de forskellige vandfaldsmodelfaser:

Forskellige faser Aktiviteter udført i hver fase
Krav Indsamling fase
  • I denne fase indsamles detaljerede krav til det softwaresystem, der skal udvikles, fra klienten
Design scene
  • Planlæg f.eks. programmeringssproget Java, PHP, .net
  • eller database som Oracle, MySQLOsv
  • Eller andre tekniske detaljer på højt niveau af projektet
Bygget Scene Efter designstadiet er det bygget stadium, det er ikke andet end at kode softwaren
Teststadie I denne fase tester du softwaren for at verificere, at den er bygget i henhold til specifikationerne givet af klienten.
Implementeringsstadiet Implementer applikationen i det respektive miljø
Vedligeholdelsesstadiet Når dit system er klar til brug, kan du senere kræve, at koden ændres efter kundens anmodning

Hvornår skal man bruge SDLC Waterfall Model?

Vandfaldsmetoden kan bruges, når:

  • Kravene ændres ikke ofte
  • Ansøgningen er ikke kompliceret og stor
  • Projektet er kort
  • Kravet er klart
  • Miljøet er stabilt
  • Teknologi og værktøjer, der anvendes, er ikke dynamiske og er stabile
  • Ressourcer er tilgængelige og uddannet

Fordele og ulemper ved vandfaldsmodellen

Her er de populære fordele ved Waterfall model i Software Engineering med nogle ulemper:

Fordele Ulemper
Inden næste udviklingsfase skal hver fase afsluttes Fejl kan kun rettes under fasen
Velegnet til mindre projekter, hvor kravene er veldefinerede Det er ikke ønskeligt for komplekse projekter, hvor krav ændres ofte
De bør udføre kvalitetssikringstest (verifikation og validering), før de gennemfører hver fase Testperioden kommer ret sent i udviklingsprocessen
Udførlig dokumentation udføres i hver fase af softwarens udviklingscyklus Dokumentation optager meget tid af udviklere og testere
Projektet er fuldstændig afhængigt af projektteamet med minimal klientintervention Kunders værdifulde feedback kan ikke inkluderes i den igangværende udviklingsfase
Eventuelle ændringer i softwaren foretages under udviklingsprocessen Små ændringer eller fejl, der opstår i den færdige software, kan forårsage mange problemer