Che cos'è l'analisi delle prestazioni?

A volte indicato come profiling, l'analisi delle prestazioni in relazione all'ingegneria del software è semplicemente il processo di valutazione del funzionamento di un determinato programma software. Questo processo normalmente inizia con il modo in cui il programma si carica e cosa succede quando viene eseguito ogni passaggio nell'uso del programma. L'obiettivo dell'analisi delle prestazioni è garantire che il programma software funzioni con la massima efficienza e identificare e correggere eventuali problemi che potrebbero avere un impatto negativo su tale efficienza.

L'analisi delle prestazioni aiuta anche l'ingegnere a regolare i componenti in modo da aiutare il programma a sfruttare al meglio le risorse disponibili. Valutando le esecuzioni in tempo reale, è possibile determinare se si potrebbe fare qualcosa per accelerare un'attività o modificare la quantità di memoria richiesta per eseguire l'attività senza influire negativamente sulla funzione generale del software. L'obiettivo finale è un programma che funziona senza intoppi, rapidamente e funziona ogni volta che viene avviata qualsiasi attività.

L'analisi delle prestazioni è un tipo di analisi dinamica del programma o DPA. DPA si concentra su ciò che accade quando un programma è in esecuzione attivamente, incluso il modo in cui le risorse vengono utilizzate e in quale ordine. Ciò è diverso dall'analisi del codice statico, che tende a concentrarsi maggiormente su come viene scritto il codice e su quanto sia logica la successione di comandi. Tuttavia, entrambi i tipi di analisi sono elementi comuni di valutazione e perfezionamento del software e della funzionalità del software.

La storia dell'analisi dei programmi risale ai primi anni dell'informatica. Durante lo sviluppo dei primi "cervelli elettronici" degli anni '40, furono messi in atto vari metodi per testare l'efficienza di ciascuna funzione che un determinato sistema era in grado di svolgere. Mentre la tecnologia continuava ad avanzare, la metodologia per valutare il livello di prestazioni del software in esecuzione su vari sistemi è stata perfezionata e in qualche modo standardizzata. Oggi, gli architetti di sistema e gli autori di programmi software fanno uso dell'analisi del programma per identificare i punti di forza e di debolezza insiti in una data versione di un programma e creare soluzioni per qualsiasi problema. I dati raccolti dall'analisi delle prestazioni aiutano a evitare che gli stessi problemi compaiano nelle versioni successive del programma.

L'effettivo processo di analisi delle prestazioni può ancora essere eseguito mediante revisione manuale durante il funzionamento attivo di un programma, oppure può essere completato automaticamente compilando i dati utilizzando un profiler automatico. In entrambi i casi, vengono acquisite informazioni che consentono sia a un autore di software che a un architetto di sistema di determinare cosa deve essere fatto affinché il programma funzioni al massimo dell'efficienza su un determinato sistema o rete. L'analisi delle prestazioni non è un'attività che viene eseguita una volta e quindi considerata eseguita. Non è insolito che gli amministratori di sistema eseguano un'analisi delle prestazioni su base ricorrente, poiché gli aggiornamenti di altri programmi e le modifiche hardware potrebbero influire sull'efficienza del programma sottoposto all'analisi.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?