Per molte imprese passare dai vecchi modelli di sviluppo all’approccio DevOps è quasi obbligatorio, se vogliono attivare rapidamente nuove applicazioni o nuovi servizi seguendo le esigenze del loro mercato.
DevOps è quindi un elemento che aggiunge valore alle attività d’impresa, una valutazione che pochi contestano ma che poi contrasta con le statistiche secondo cui le azienda fanno fatica a registrare un ROI positivo per i processi DevOps. Il problema, secondo diversi osservatori, è che non tutte le imprese hanno chiaro come misurare il rendimento dei processi di sviluppo, anche indipendentemente dal modello che li muove.
Come per tutti i processi di monitoraggio e valutazione, anche quando si tratta di sviluppo e DevOps bisogna decidere quali sono le metriche più importanti.
Per un modello “rapido” come DevOps possono essere il throughput, la stabilità e la sostenibilità del processo di sviluppo. Il throughput è una valutazione grezza della produttività di DevOps, misurabile ad esempio con la frequenza del rilascio in produzione di nuove versioni o di nuovi applicativi.
Accanto a questa servono però anche valutazioni che diano una profondità maggiore all’analisi. La stabilità è il primo e deve in qualche modo indicare l’efficacia dello sviluppo e non solo il suo volume, misurando ad esempio il tasso di riuscita dei deployment o il tempo che mediamente si impiega a fare il recovery da un rilascio non riuscito.
La sostenibilità è un indicatore meno quantitativo: dev’essere una valutazione di quanto facilmente, senza stressare troppo le risorse, il team di sviluppo possa – appunto – sostenere il throughput e la stabilità di quel momento.
La misurazione delle metriche chiave permette di avere una fotografia dello stato dello sviluppo DevOps. Poi queste metriche vanno migliorate nel tempo, ovviamente, e questo richiede che l’azienda investa negli elementi di base che favoriscono lo sviluppo rapido. Da questo punto di vista la componente più complessa è probabilmente quella culturale, perché il passaggio dall’approccio classico a quello DevOps non è facile da digerire né per chi sviluppa né per chi si occupa di operations. Qui non ci sono tool o soluzioni da acquistare, serve investire in una vera e propria evoluzione culturale e anche nel favorire una nuova visione dei processi di analisi e creazione di applicazioni e servizi.
Risulta più semplice investire in strumenti software, che sono un’altra componente necessaria. In questo ambito vanno considerati ad esempio i sistemi di versioning, le piattaforme di deployment e test automatizzati, i tool di monitoraggio delle applicazioni e dei servizi erogati agli utenti.
Nel considerare DevOps nell’ottica del suo ROI c’è però da tenere presente una considerazione trasversale che riguarda il management e non gli sviluppatori. La produttività di un qualsiasi processo aziendale cala drasticamente se le sue risorse non sono concentrate sulle priorità dell’impresa. Questo significa che anche lo sviluppo – DevOps o meno – deve concentrarsi sulle iniziative davvero importanti per lo sviluppo del business. Altrimenti è naturale che il suo ROI non sia quello atteso.