Cos'è il modello a cascata in SDLC? Vantaggi e Svantaggi

Sommario:

Anonim

Cos'è il modello a cascata?

WATERFALL MODEL è un modello sequenziale che divide lo sviluppo del software in fasi predefinite. Ogni fase deve essere completata prima che la fase successiva possa iniziare senza sovrapposizioni tra le fasi. Ogni fase è progettata per eseguire attività specifiche durante la fase SDLC. È stato introdotto nel 1970 da Winston Royce.

Diverse fasi del modello a cascata nell'ingegneria del software

Diverse fasi Attività svolte in ogni fase
Fase di raccolta dei requisiti
  • Durante questa fase vengono raccolti dal cliente i requisiti dettagliati del sistema software da sviluppare
Fase di progettazione
  • Pianifica il linguaggio di programmazione, ad esempio Java, PHP, .net
  • o database come Oracle, MySQL, ecc.
  • O altri dettagli tecnici di alto livello del progetto
Fase costruita
  • Dopo la fase di progettazione, si passa alla fase di costruzione, che non è altro che la codifica del software
Fase di prova
  • In questa fase si prova il software per verificare che sia costruito secondo le specifiche fornite dal cliente.
Fase di distribuzione
  • Distribuire l'applicazione nel rispettivo ambiente
Fase di manutenzione
  • Una volta che il sistema è pronto per l'uso, in seguito potrebbe essere necessario modificare il codice secondo la richiesta del cliente

Quando utilizzare il modello a cascata SDLC

Il modello a cascata può essere utilizzato quando
  • I requisiti non cambiano frequentemente
  • L'applicazione non è complicata e grande
  • Il progetto è breve
  • Il requisito è chiaro
  • L'ambiente è stabile
  • La tecnologia e gli strumenti utilizzati non sono dinamici e sono stabili
  • Le risorse sono disponibili e addestrate

Vantaggi e svantaggi del modello a cascata

Vantaggi Svantaggi
  • Prima della fase successiva di sviluppo, ogni fase deve essere completata
  • L'errore può essere risolto solo durante la fase
  • Adatto a progetti più piccoli in cui i requisiti sono ben definiti
  • Non è desiderabile per progetti complessi in cui i requisiti cambiano frequentemente
  • Devono eseguire un test di garanzia della qualità (verifica e convalida) prima di completare ogni fase
  • Il periodo di prova arriva abbastanza tardi nel processo di sviluppo
  • Una documentazione elaborata viene eseguita in ogni fase del ciclo di sviluppo del software
  • La documentazione occupa molto tempo per sviluppatori e tester
  • Il progetto dipende completamente dal team di progetto con un intervento minimo da parte del cliente
  • Il prezioso feedback dei clienti non può essere incluso nella fase di sviluppo in corso
  • Eventuali modifiche al software vengono apportate durante il processo di sviluppo
  • Piccole modifiche o errori che si verificano nel software completato possono causare molti problemi