Ce este modelul Waterfall?
WATERFALL MODEL este un model secvențial care împarte dezvoltarea software-ului în faze predefinite. Fiecare fază trebuie finalizată înainte ca următoarea fază să poată începe fără suprapunere între faze. Fiecare fază este concepută pentru efectuarea activității specifice în timpul fazei SDLC. A fost introdus în 1970 de Winston Royce.
Diferite etape ale modelului de cascadă în ingineria software
Diferite faze | Activități desfășurate în fiecare etapă |
Cerință Etapa adunării |
- În această fază, cerințele detaliate ale sistemului software care urmează să fie dezvoltat sunt colectate de la client
|
Etapa de proiectare |
- Planificați limbajul de programare, pentru Exemplu Java, PHP, .net
- sau bază de date precum Oracle, MySQL etc.
- Sau alte detalii tehnice la nivel înalt ale proiectului
|
Etapa construită |
- După etapa de proiectare, aceasta este construită, adică nu este decât codarea software-ului
|
Etapa de testare |
- În această fază, testați software-ul pentru a verifica dacă este construit conform specificațiilor date de client.
|
Etapa de desfășurare |
- Implementați aplicația în mediul respectiv
|
Etapa de întreținere |
- Odată ce sistemul dvs. este gata de utilizare, este posibil să solicitați ulterior să schimbați codul conform cererii clientului
|
Când se utilizează modelul de cascadă SDLC
Modelul de cascadă poate fi folosit când
- Cerințele nu se schimbă frecvent
- Aplicarea nu este complicată și mare
- Proiectul este scurt
- Cerința este clară
- Mediul este stabil
- Tehnologia și instrumentele utilizate nu sunt dinamice și sunt stabile
- Resursele sunt disponibile și instruite
Avantajele și dezavantajele cascadei-model
Avantaje | Dezavantaje |
- Înainte de următoarea fază de dezvoltare, fiecare fază trebuie finalizată
|
- Eroarea poate fi remediată numai în timpul fazei
|
- Potrivit pentru proiecte mai mici în care cerințele sunt bine definite
|
- Nu este de dorit pentru un proiect complex în care cerința se schimbă frecvent
|
- Aceștia ar trebui să efectueze teste de asigurare a calității (verificare și validare) înainte de a finaliza fiecare etapă
|
- Perioada de testare vine destul de târziu în procesul de dezvoltare
|
- Documentația elaborată se face în fiecare fază a ciclului de dezvoltare a software-ului
|
- Documentarea ocupă mult timp dezvoltatorilor și testerilor
|
- Proiectul este complet dependent de echipa de proiect cu o intervenție minimă a clientului
|
- Feedbackul valoros al clienților nu poate fi inclus în faza de dezvoltare continuă
|
- Orice modificare a software-ului se face în timpul procesului de dezvoltare
|
- Micile modificări sau erori care apar în software-ul complet pot provoca o mulțime de probleme
|