Ciclo di vita del software a spirale

August 19

Ciclo di vita del software a spirale


software spirale è un modello di sviluppo software per iterazione. Un prototipo è sviluppato e testato, senza la necessità per il tipo di documentazione elaborato che sarebbe necessario nel vecchio modello "a cascata". Si procede poi attraverso l'analisi dei rischi, l'ingegneria e la valutazione dei clienti. Le valutazioni dei clienti concludono un ciclo e impostare i nuovi progetti e le domande che portano a un prototipo più elaborato, continuando il ciclo.

Storia

Una cascata può avere un sacco di scalini, ma il movimento è in una sola direzione.

Barry W. Boehm di TRW Difesa Systems Group formalmente definito il "modello a spirale" in un saggio pubblicato dall'Institute of Electrical and Electronics Engineers (IEEE) nel 1988. Boehm era infelice con il "modello a cascata" l'allora dominante di sviluppo, che prevedeva che il software dovrebbe essere "sviluppato in fasi successive (piano operativo, specifiche operative, le specifiche di codifica, etc.)."

Problemi Cascata

Ciclo di vita del software a spirale

Il problema con una cascata è richiede impegno prematuro e un grande salto.

Il problema con il modello a cascata è stato che ha sottolineato "pienamente elaborato documenti come criteri di completamento per i primi requisiti e le fasi di progettazione." Di conseguenza, Boehm lamentava, molti progetti sono stati sellati con oltre-elaborate specifiche prima di una storia di interfaccia utente aveva sviluppato. La teoria era stato sempre troppo avanti della pratica.

quattro fasi

Boehm ha detto che ogni ciclo all'interno del suo modello a spirale preferito comincerebbe con considerazione degli obiettivi (ad esempio, prestazioni o funzionalità), procedere ad una pesatura della alternativa approcci fattibile e concludere con una considerazione dei vincoli imposti da ciascuno.

Cioè fase uno, o la fase di pianificazione. Ogni ciclo procede poi alla fase due (analisi dei rischi), tre (ingegneria) e quattro (valutazione del cliente).

Il termine "rischio", nel contesto della fase due, può denotare mancato raggiungimento degli obiettivi prefissati, ritardi di programmazione o di violazione dei vincoli di bilancio.

terminazione Cycle

La fase di valutazione del cliente è in sostanza una revisione, che coinvolge (Boehm ha scritto) "le persone primari o organizzazioni coinvolte con il prodotto." Esso fornisce i dati necessari per la successiva fase di programmazione, o l'inizio del successivo ciclo nella spirale.

terminazione a spirale

Fino a che punto la spirale continua? Si prosegue fino a terminare in un prodotto finito. Come ha scritto Walt Scacchi della University of California a Irvine, la spirale spazza verso l'esterno ", per quanto necessario in funzione del rischio che deve essere gestito."

Un'alternativa

Ciclo di vita del software a spirale

& Quot; Agile & quot; sostenitori modello si lamentano della burocrazia e il formalismo.

Un altro modello di sviluppo del software è noto come il modello "agile". Si è detto di essere "persone" piuttosto che "processo" orientati, favorendo la comunicazione orale anziché scritta. Dal punto di vista di sostenitori "agile", la spirale e la cascata hanno troppo in comune. Sono entrambi troppo burocratiche.