Metriche DORA dai dati di rilascio, per ogni servizio
La maggior parte dei team di ingegneria sa dirti cosa ha rilasciato. Pochissimi sanno dirti con quale velocità, quanto spesso si è rotto qualcosa, o quanto ci è voluto per riprendersi quando è successo. Il conteggio dei deployment c'è. Il segnale sulla qualità no.
Questo punto cieco esiste perché le prestazioni di delivery e la documentazione dell'architettura hanno sempre vissuto in mondi separati. Il tuo strumento di CI/CD conosce le pipeline. Il tuo strumento di architettura conosce i sistemi. Nessuno dei due sa abbastanza per rispondere alla domanda che conta davvero: il tuo team sta migliorando nel rilasciare software?
Le metriche DORA colmano questo divario, e Archyl ora le calcola automaticamente dai tuoi dati di rilascio. Questo post spiega come funziona. Per capire perché le metriche di delivery vanno accanto all'architettura, vedi le metriche DORA per i team di architettura.
Le quattro metriche che contano
Nel 2018 il team DORA (DevOps Research and Assessment, oggi parte di Google Cloud) ha pubblicato una ricerca che mostrava come quattro metriche specifiche prevedano le prestazioni di delivery del software meglio di qualsiasi altra cosa. Da allora sono diventate lo standard del settore per misurare l'efficacia dell'ingegneria:
Deployment Frequency: quanto spesso il tuo team fa deploy in produzione. I team elite fanno deploy su richiesta, più volte al giorno. I team meno performanti fanno deploy tra una volta al mese e una volta ogni sei mesi.
Lead Time for Changes: quanto tempo passa dal commit del codice al deployment in produzione. I team elite lo misurano in ore. I team meno performanti in mesi.
Change Failure Rate: quale percentuale di deployment provoca un guasto in produzione (che richiede un hotfix, un rollback o una patch). I team elite restano sotto il 5%. I team meno performanti superano il 46%.
Mean Time to Restore (MTTR): quando si verifica un guasto in produzione, quanto ci vuole per ripristinare il servizio? I team elite lo ripristinano in meno di un'ora. I team meno performanti impiegano da una settimana a un mese.
La forza di DORA non sta in una singola metrica, ma nelle quattro insieme. Un team che fa deploy dieci volte al giorno ma rompe la produzione una volta su due non sta andando bene. Un team con zero guasti ma un deploy a trimestre gioca troppo sul sicuro. Le quattro metriche formano una scorecard bilanciata che premia sia la velocità sia la stabilità.
DORA in Archyl: costruito sui tuoi dati di rilascio
Il punto delle metriche DORA è questo: se tracci i rilasci, i dati grezzi esistono già. Ogni rilascio ha un timestamp, uno stato e un ambiente. Basta questo per calcolare automaticamente tutte e quattro le metriche.
Se hai usato la Release Management di Archyl (tramite GitHub Actions, webhook o API REST), hai già i dati. Ci mancava solo fare i conti.
La Deployment Frequency si calcola dal numero di deployment in produzione riusciti in un certo intervallo di tempo. Se hai rilasciato 45 volte in produzione negli ultimi 30 giorni, la tua deployment frequency è 1,5 al giorno.
Il Lead Time for Changes è il tempo tra la creazione di un rilascio (o il timestamp del commit, quando disponibile) e il suo deployment riuscito in produzione. Archyl calcola la mediana su tutti i rilasci del periodo.
Il Change Failure Rate considera i rilasci con stato Failed o Rolled Back come percentuale del totale dei deployment. Se hai fatto 40 deploy e 3 sono stati annullati con un rollback, il tuo CFR è del 7,5%.
Il Mean Time to Restore misura il tempo tra un deployment fallito e il successivo deployment riuscito nello stesso ambiente. Coglie la rapidità con cui il tuo team si riprende dagli incidenti.
Tutte e quattro le metriche vengono calcolate automaticamente. Nessuna configurazione, nessun inserimento manuale. Se i tuoi rilasci arrivano in Archyl, le metriche DORA sono già lì.
La scorecard DORA
Ogni metrica viene classificata in uno di quattro livelli di prestazione, in base ai benchmark stabiliti dalla ricerca DORA:
- Elite: prestazioni di altissimo livello. Sei nella fascia più alta dei team di ingegneria a livello mondiale.
- High: prestazioni solide. Sei davanti alla maggior parte dei team, ma hai margini di miglioramento.
- Medium: prestazioni nella media. Ci sono aree di miglioramento evidenti.
- Low: sotto la media. Queste metriche indicano dove la tua pipeline di delivery ha bisogno di attenzione.
La scorecard ti dà una vista immediata: quattro schede, quattro metriche, quattro livelli. Ogni scheda mostra il valore attuale, il livello di prestazione con un indicatore colorato e una breve spiegazione di cosa significa quel livello. Non devi ricordare a memoria i benchmark DORA: la scorecard interpreta i numeri per te.
Un livello di prestazione complessivo viene calcolato dalla combinazione di tutte e quattro le metriche. Se tre metriche sono Elite e una è High, complessivamente sei a livello Elite.
Grafici di tendenza: la direzione conta più della posizione
Un'istantanea delle metriche DORA ti dice dove sei. Una tendenza ti dice dove stai andando. La dashboard DORA include grafici di tendenza che tracciano ogni metrica nel tempo, così puoi vedere se le cose migliorano, restano stabili o peggiorano.
Scegli un periodo (7 giorni, 30 giorni, 90 giorni o un intervallo personalizzato) e il grafico mostra la tua traiettoria. La deployment frequency potrebbe salire costantemente. Il lead time potrebbe essere schizzato in alto dopo un grosso refactoring e ora stare rientrando. Il change failure rate potrebbe restare piatto a un livello sano.
Sono le tendenze a trasformare le metriche da strumento di valutazione delle prestazioni a strumento di miglioramento continuo. Non guardi DORA una volta a trimestre per archiviarlo in un report. Osservi le tendenze ogni settimana, noti quando il lead time inizia a salire e indaghi prima che diventi un problema.
Limitate alla tua architettura
Poiché Archyl conosce il tuo modello C4, le metriche DORA non si fermano agli aggregati di progetto. Puoi limitarle a un sistema o a un container specifico.
Vuoi conoscere la deployment frequency del solo Payment Gateway? Filtra per quel sistema. Ti chiedi se il Notification Service abbia un change failure rate più alto dell'Account API? Confrontali fianco a fianco.
È qui che le metriche consapevoli dell'architettura diventano davvero utili. Un MTTR di progetto di due ore può sembrare ottimo, finché non ti accorgi che l'API Gateway si ripristina in 15 minuti e il Billing Service in 18 ore. Le metriche limitate a un elemento fanno emergere i valori anomali che le medie nascondono.
Panoramica DORA a livello di organizzazione
Per i responsabili di ingegneria che gestiscono più progetti, la panoramica DORA a livello di organizzazione offre una vista d'insieme su tutti i progetti del workspace.
La panoramica mostra una barra di riepilogo con il livello di prestazione aggregato, poi una griglia di schede di progetto, ciascuna con le quattro metriche DORA e i rispettivi livelli. Vedi subito quali progetti sono a livello Elite e quali sono in difficoltà.
Non si tratta di mettere i team in classifica. Si tratta di capire dove investire. Se il lead time di un progetto sale mentre gli altri sono stabili, è un segnale da approfondire. Se il change failure rate è alto ovunque, forse il problema è sistemico: infrastruttura condivisa, lacune nei test o strumenti di deployment.
La vista dell'organizzazione usa lo stesso selettore di periodo della vista di progetto, così puoi allineare gli intervalli di tempo quando confronti più progetti.
Il ciclo di feedback
Le metriche DORA funzionano meglio come parte di un ciclo di feedback. Ecco come abbiamo visto i team usarle in modo efficace:
Configura il tracciamento dei rilasci: collega la tua pipeline CI/CD ad Archyl tramite GitHub Actions, webhook o API REST. I rilasci iniziano ad arrivare automaticamente.
Stabilisci una baseline: dopo qualche settimana di dati, controlla la tua scorecard DORA. È lì che sei oggi. Non giudicarla, prendine solo nota.
Osserva le tendenze: controllale ogni settimana. Le metriche si muovono nella direzione giusta? Stabile va bene. In peggioramento è un segnale.
Indaga le anomalie: quando una metrica si sposta, limitala ai singoli sistemi. Spesso un cambiamento a livello di progetto è dovuto a uno o due servizi.
Itera: modifica il tuo processo di delivery e osserva come rispondono le metriche. Code review più rapide riducono il lead time. Una migliore copertura dei test riduce il change failure rate. I feature flag riducono l'MTTR.
La lezione chiave della ricerca DORA è che queste metriche sono risultati, non obiettivi. Non migliori la deployment frequency facendo più deploy: la migliori eliminando l'attrito che rende il deploy lento o rischioso. Le metriche ti dicono se i miglioramenti al processo stanno funzionando davvero.
Unire i puntini
Le metriche DORA sono l'ultimo tassello dell'approccio di Archyl a una documentazione dell'architettura che riflette la realtà, non solo le intenzioni.
I tuoi diagrammi C4 mostrano la struttura. I contratti API mostrano le interfacce. Gli ADR mostrano le decisioni. La Release Management mostra cosa è stato rilasciato. E ora le metriche DORA mostrano quanto bene funziona la tua macchina di delivery.
Ogni livello aggiunge contesto al precedente. Un sistema sul tuo diagramma non è più solo un box con una freccia: è un servizio con un'API definita, decisioni documentate dietro il suo design, una cronologia di deployment e prestazioni di delivery misurabili. È la differenza tra un diagramma e una piattaforma di architettura viva.
Per iniziare
Se tracci già i rilasci in Archyl, le metriche DORA sono disponibili ora. Vai alla pagina Releases del tuo progetto e passa alla scheda Metrics. Scorecard e grafici di tendenza sono già popolati.
Se non hai ancora configurato il tracciamento dei rilasci, parti da lì. Segui la guida alla Release Management per collegare la tua pipeline CI/CD, poi torna alla scheda Metrics quando avrai qualche settimana di dati di deployment.
Per gli insight a livello di organizzazione, apri la pagina Releases senza selezionare un progetto specifico e passa alla scheda Metrics. La panoramica mostrerà tutti i progetti del tuo workspace con i rispettivi punteggi DORA.
La tua architettura sa cosa esiste. I tuoi rilasci sanno cosa è stato rilasciato. Ora le tue metriche sanno quanto bene stai consegnando.
Scopri di più sul tracciamento dei deployment nella Release Management, oppure esplora come le Architecture Change Request portano flussi di revisione strutturati nel tuo modello C4.