Ingegneria del software: La manutenzione del software

Ingegneria del software: La manutenzione del software

La manutenzione del software

La manutenzione del software è il processo di modifica di un prodotto software dopo il suo rilascio in esercizio per eliminare malfunzionamenti, migliorare prestazioni o altri attributi di qualità e adattarlo a modifiche dell’ambiente operativo. Il termine manutenzione del software (o evoluzione del software) include spesso anche estensioni delle funzionalità originarie per soddisfare nuovi bisogni degli utenti.

Qualsiasi software, dopo il rilascio della prima release, avrà bisogno di essere modificato. I sistemi software sono, per loro natura, sistemi evolutivi che cambiano durante la loro vita. Ciò deriva dal fatto che, durante la vita del sistema, le caratteristiche che lo definiscono cambiano, cambiando sia le esigenze di chi usa il software, sia dell’ambiente del mondo reale in cui il sistema opera. Più i requisiti del sistema sono instabili, o specificano un problema in maniera incompleta ed approssimativa, più il sistema avrà bisogno di cambiare. L’evoluzione di un software è dunque inevitabile!

Ingegneria del software - La manutenzione del software

Motivazioni per il cambiamento

  1. Errori possono essere individuati e devono essere corretti;
  2. Il dominio del software può evolvere;
  3. Nuovi requisiti possono emergere dopo il rilascio;
  4. Nuove tecnologie hardware e software possono affermarsi nel frattempo;
  5. Può essere necessario migliorare la qualità del software (ad esempio l’affidabilità o le performance).

L’importanza del cambiamento

Le organizzazioni proprietarie hanno fatto grossi investimenti per i loro sistemi software, che sono risorse critiche dunque per preservare il valore di tali risorse, i sistemi devono necessariamente cambiare ed evolvere. Di contro, la manutenzione è un’attività costosa e la maggior parte del budget speso per il software è in genere speso per la sua manutenzione, piuttosto che per il suo sviluppo però essa quasi sempre è necessaria per non sviluppare tutto da zero.

Tipi di Manutenzione del software

Classificazione degli interventi di manutenzione

  1. Manutenzione correttiva: Modifiche per correggere difetti
  2. Manutenzione adattativa: Modifiche per adattare il software a cambiamenti dell’ambiente
  3. operativo (hardware, software di base, interfacce, organizzazione, legislazione, ecc.)
  4. Manutenzione perfettiva: Estensione dei requisiti funzionali, o migliorie di requisiti non funzionali in risposta a richieste dell’utente
  5. Manutenzione preventiva: Modifiche che rendono più semplici le correzioni, gli adattamenti e le migliorie
  6. Manutenzione di emergenza: Manutenzione correttiva non programmata, necessaria a mantenere il sistema in funzione.

Ciclo di vita del software - La manutenzione del software

Precedente Linguaggio SQL: Principali operatori insiemistici Successivo Ingegneria del software - Modelli di processo per la manutenzione del software

Lascia un commento

*