Valutazione della Prestazione

La Valutazione della Prestazione è spesso concepita come una serie di prove , ma in realtà è molto di più e richiede una metodologia rigorosa in grado di garantire risultati affidabili ed accurati. La nostra metodologia, ripresa da diverse pubblicazioni specialistiche, è semplice, flessibile ma, allo stesso tempo, estremamente efficace e si basa sulle seguenti fasi:
• Definizione dei criteri della prestazione
• Definizione della metrica del test
• Definizione delle condizioni del test e degli strumenti di monitoraggio
• Simulazione realistica dell’utilizzo dell’applicazione
• Esecuzione del test

I test possono essere raggruppati nelle categorie seguenti:

Prove di carico, utilizzato per comprendere il comportamento dell’applicazione nel quadro del carico prevedible in condizione di normale utilizzo dell'applicazione nell’ambiente di produzione. Le metriche previamente definite e gli strumenti di monitoraggio ci daranno un quadro chiaro dell’esecuzione dell’applicazione e delle eventuali criticità.
Queste prove servono anche a verificare il raggiungimento dello SLA dell’applicazione (Service Level Agreement) nell’ambiente di produzione. Un ulteriore utilizzo delle prove di carico è fornito dalla verifica del buon funzionamento dei processi di faul e recovery).

Stress test, utilizzato per capire la reazione dell’applicazione in condizioni di lavoro che superano il normale carico. Lo scopo principale è comprendere e documentare il degrado prestazionale all’aumentare delle condizioni di carico.

Test di durata, che verificano il comportamento dell’applicazione in un lasso di tempo più lungo. Queste prove si concentrano, di solito, sul consumo delle risorse, e tendono a mettere in luce aspetti potenzialmente problematici a livello di memoria (memory leaks) e di database.

Test di architettura, specifiche per le funzioni di Ingegneria della Prestazione. A differenza di quelle di durata, le prove di architettura non si limitano a simulare l’utilizzo normale dell’applicazione ma applicano condizioni di test altamente impegnative.