Manutenzione del programma

Program maintenance è il processo di modifica di un software o di un programma dopo la consegna per ottenere uno di questi risultati -

  • Correggi gli errori
  • Migliorare la prestazione
  • Aggiungi funzionalità
  • Rimuovi le porzioni obsolete

Nonostante la percezione comune che la manutenzione sia necessaria per correggere gli errori che si verificano dopo che il software è entrato in funzione, in realtà la maggior parte del lavoro di manutenzione comporta l'aggiunta di funzionalità minori o maggiori ai moduli esistenti. Ad esempio, alcuni nuovi dati vengono aggiunti a un rapporto, un nuovo campo aggiunto ai moduli di iscrizione, un codice da modificare per incorporare le leggi governative modificate, ecc.

Tipi di manutenzione

Le attività di manutenzione possono essere classificate in quattro voci:

  • Corrective maintenance- Qui vengono corretti gli errori che si verificano dopo l'implementazione in loco. Gli errori possono essere segnalati dagli utenti stessi.

  • Preventive maintenance - Le modifiche apportate per evitare errori in futuro sono chiamate manutenzione preventiva.

  • Adaptive maintenance- I cambiamenti nell'ambiente di lavoro a volte richiedono modifiche nel software. Questa è chiamata manutenzione adattiva. Ad esempio, se la politica educativa del governo cambia, devono essere apportate le modifiche corrispondenti nel modulo di elaborazione dei risultati degli studenti del software di gestione scolastica.

  • Perfective maintenance- Le modifiche apportate al software esistente per incorporare nuovi requisiti dal cliente sono chiamate manutenzione perfettiva. L'obiettivo qui è essere sempre aggiornati con le ultime tecnologie.

Strumenti di manutenzione

Gli sviluppatori di software e i programmatori utilizzano molti strumenti per assisterli nella manutenzione del software. Ecco alcuni dei più utilizzati:

  • Program slicer - seleziona una parte del programma che sarebbe interessata dalla modifica

  • Data flow analyzer - tiene traccia di tutti i possibili flussi di dati nel software

  • Dynamic analyzer - traccia il percorso di esecuzione del programma

  • Static analyzer - consente la visualizzazione generale e il riepilogo del programma

  • Dependency analyzer - aiuta a comprendere e analizzare l'interdipendenza delle diverse parti del programma