Oggi le aziende stanno finalmente iniziando ad investire nella metodologia e nelle pratiche DevOps, avendo compreso l’utilità di queste ultime per rendere le fasi di sviluppo software più rapide, affidabili e con meno errori.
Una volta implementate tali pratiche però, le organizzazioni riscontrano spesso delle difficoltà:
- nella misurazione del ROI
- nell’ottimizzazione degli investimenti effettuati nelle iniziative DevOps.
Quali sono dunque le principali KPI DevOps che i team dovrebbero misurare per capire la reale efficacia delle azioni intraprese? Quali sono gli indicatori che consentono di identificare eventuali ostacoli e aree di inefficienza e agire verso un continuo miglioramento del processo?
Riteniamo che un approfondimento di questi aspetti sia fondamentale per i dirigenti, manager e professionisti IT per comprendere meglio le prestazioni delle soluzioni implementate e valutare l'impatto degli investimenti.
Le 4 metriche da considerare per la misurazione delle prestazioni DevOps
Lo “State of DevOps Report” presentato da Puppet e DORA, report annuale basato su interviste fatte a professionisti in ambito IT e software circa l’adozione della metodologia DevOps, suddivide le prestazioni IT in due dimensioni principali: la velocità di trasmissione (o throughtput) del codice e la stabilità dei sistemi.
All’interno di queste due dimensioni possono essere identificate le 4 metriche fondamentali per valutare le performance DevOps:
1. La frequenza con cui un team è in grado di distribuire il codice (Deployment Frequency)
Tale metrica dovrebbe aumentare, una volta implementata una strategia DevOps e le relative pratiche.
2. La velocità con cui si passa dal commit del codice al suo deployment (Mean Lead Time).
Questa metrica è indicativa circa l’efficienza del processo di sviluppo, e permette di identificare eventuali colli di bottiglia o guasti. Tale indice dovrebbe diminuire grazie all’implementazione di pratiche di automation e al continuo miglioramento dei processi.
3. La rapidità con cui il sistema è in grado di ripristinare i downtime(Mean Time to Recover).
Tale metrica identifica il tempo medio necessario per correggere eventuali guasti, e dovrebbe ridursi nel tempo, con l’introduzione di miglioramenti ai processi di recovery.
4. Il tasso di fallimento delle modifiche introdotte(Change Failure Rate).
Questo indice identifica la percentuale di pipeline senza esito provocata dall'introduzione di nuove modifiche. Un tasso di fallimento crescente rivela problemi di processo. Se questa metrica diminuisce nel tempo, significa che la tua azienda sta avendo successo nel migliorare i processi di sviluppo.
Per l’implementazione di una strategia DevOps di successo, l’identificazione dei giusti indicatori di performance e la misurazione degli stessi è fondamentale.
Essere in grado di monitorare tali parametri e di identificare eventuali problematiche per migliorare il processo può fare la differenza e portare un’organizzazione a superare la concorrenza, nonché apportare uno sviluppo organizzativo.
Una soluzione per il Monitoring delle performance DevOps
Una soluzione ideata proprio per soddisfare queste necessità è CloudBees DevOptics, creata dalla società leader nella Continuous Integration & Continuous Delivery e hub di Jenkins Open-source ed Enterprise.
Questo tool è in grado di aggregare dati in real-time dal processo di sviluppo del software al fine di ricavare metriche e insight fondamentali per misurare e gestire le prestazioni e ottimizzare il delivery applicativo.
DevOptics connette i team, i tool e i flussi di valore per permettere una visibilità completa delle varie fasi del processo di delivery al fine di comprendere quali sono le inefficienze e migliorare il processo.
Grazie a queste informazioni, le organizzazioni possono:
- aumentare la collaborazione e la qualità del lavoro dei team
- migliorare i processi che compongono le varie fasi di sviluppo del software
- ottimizzare la produttività
- massimizzare i profitti.
Fonti:
State of DevOps Report by Puppet and DORA: https://puppet.com/resources/whitepaper/state-of-devops-report
https://www.cloudbees.com/press/cloudbees-devoptics-provides-actionable-insights-devops-performance