Code & Fix

La prima metodologia usata per lo sviluppo del software è stata il "code & fix": si scriveva subito il codice, e si risolvevano i problemi man mano che li si incontrava.

Ciò ha portato, negli anni '60, alla crisi del software*:*** mentre le prestazioni dell'hardware aumentavano in maniera esponenziale, la produttività degli sviluppatori era stagnante, se non in declino. Per risolvere tale crisi è nata la disciplina del software engeneering, che ha introdotto dei modelli formali del processo di sviluppo.

Modello a cascata

Il modello a cascata (waterfall) paragona lo sviluppo del software alla produzione di un oggetto fisico (catena di montaggio):

Le fasi del modello a cascata sono:

  1. studio di fattibilità (feasibility study) → documento di studio di fattibilità;
  2. **analisi e specifica dei requisiti (**requirements analysis and specification) → documento di analisi e specifica dei requisiti (RASD)
  3. design → documento di design
  4. ——— codifica e test di unità (coding and unit test) ———
  5. **test di integrazione e di sistema (**integration and system test)
  6. messa in esercizio (deployment)
  7. manutenzione (maintenance)

Le prime tre fasi, chiamate fasi alte (early phases), sono le più importanti, perchè le decisioni effettuate nel corso di queste si riflettono sulle fasi successive. Le fasi restanti, invece, sono chiamate fasi basse (late phases).

Studio di fattibilità