Close

Definire le priorità e ridurre il debito tecnico nel backlog di Jira con Compass

Katie Silver
KATIE SILVER

RESPONSABILE PRINCIPALE DEL PRODOTTO, ATLASSIAN

Riepilogo esecutivo

Il debito tecnico, causato dalla scalabilità e dalla necessità di distribuire rapidamente nuove funzionalità, è una sfida comune per i team di software. I team accumulano un debito tecnico rapidamente, ma se questo diventa eccessivo si avrà una riduzione della velocity a lungo termine. Atlassian Compass, una piattaforma interna per sviluppatori (IDP), offre ai team un catalogo software centralizzato in modo che gli sviluppatori possano trovare le informazioni più velocemente e comprendere lo stato e le prestazioni del loro software. Collegando i ticket di Jira al tuo catalogo e alle misure per l'integrità in Compass, i team possono identificare e ridurre il debito tecnico ad alto impatto dando priorità al loro backlog e distribuendo nuove funzionalità con una velocità costante.

Ora

Otto minuti per la lettura. Meno di 10 minuti per configurare Compass.

Pubblico

Sei un utente di Jira in un team di distribuzione del software. Sviluppatori, ingegneri, product manager e altro ancora possono trarne vantaggio.

Prerequisiti

  • Ottieni Compass: la prova è gratuita e richiede pochi minuti per iniziare.
  • Ottieni Jira: hai un progetto Jira attivo gestito dall'azienda Jira attivo.

Il debito tecnico nel tuo backlog è fuori controllo? Siamo qui per aiutarti

Costruisci, misura e impara velocemente. I team di software Agile rilasciano il codice con una velocità incredibile. Il compromesso è il debito tecnico, un fenomeno inevitabile che aumenta la fragilità del codice e rallenta i team. Il tuo team sa identificare e quantificare il suo debito tecnico? Quali approfondimenti indicano come dare priorità al backlog per ridurre il debito tecnico continuando a fornire nuove funzionalità innovative? Continua a leggere per scoprire come valutare la priorità del backlog di Jira e gestire il debito tecnico del tuo team per una distribuzione più rapida del software.

Il debito tecnico è il lavoro in sospeso promesso ma non consegnato al cliente, difetti nel codice o elementi di lavoro che compromettono l'agilità.

Dan Radigan
Atlassian

La causa principale del debito tecnico è da cercare nella velocità e nella scalabilità

I team sono costantemente sotto pressione per fornire nuove funzionalità rapidamente. Allo stesso tempo, man mano che i prodotti e i team crescono, la complessità aumenta e le organizzazioni registrano una proliferazione incontrollata di servizi e software. La proprietà diventa poco chiara, si formano silos di conoscenza e la ricerca di informazioni diventa una grande sfida. Man mano che la complessità del prodotto aumenta, le basi di codice diventano più grandi e i team continuano a dare priorità alla spedizione di nuove funzionalità, aumenta anche la probabilità di bug e problemi di prestazioni. Le statistiche sono sbalorditive:

77%

of devs say their codebase grew 5x over the past 3 years [1]

15%

percent of a dev’s day that’s actually spent coding [2]

70%

of devs encounter a knowledge silo at least once a week [3]

Le aziende devono muoversi rapidamente per rimanere competitive e le aziende di successo cresceranno in termini di dimensioni, fatturato e gamma di prodotti, quindi praticamente ogni organizzazione deve imparare a gestire il debito tecnico in modo efficace. Il tuo team sa identificare e quantificare il suo debito tecnico?

Dare priorità al backlog e ridurre il debito tecnico con Compass

In Atlassian, utilizziamo Compass per mantenere un catalogo centralizzato di tutti i servizi, le librerie, le API e altri componenti software creati e gestiti dai nostri team. Con Compass, i team utilizzano il catalogo software per monitorare facilmente la proprietà dei servizi, connettere i dati provenienti da tutta l'organizzazione e rivelare lo stato di integrità del software. Questi approfondimenti consentono ai team di assegnare efficacemente le priorità al proprio lavoro, agire rapidamente e mantenere un'elevata qualità del codice. L'utilizzo di questi approfondimenti per affrontare il giusto debito tecnico ora porta a una maggiore velocity in futuro.

In questo articolo, mostreremo come Atlassian utilizza Compass, la nostra piattaforma di esperienza per sviluppatori, per ridurre il debito tecnico e dare priorità al nostro backlog di Jira.

Compass aiuta i team a comprendere l'impatto del loro lavoro e a pianificare in modo efficace

Compass è la piattaforma di Atlassian per gli sviluppatori, comunemente nota anche come piattaforma interna per sviluppatori o IDP. Questa piattaforma è stata creata per facilitare il percorso dei microservizi di Atlassian e semplificare la nostra esperienza di sviluppo. Compass riduce le difficoltà quotidiane per gli sviluppatori aiutandoli a trovare informazioni e approfondimenti più velocemente e accelerando i percorsi di produzione:

Schedario con documenti in codice

Catalogo

Riduci il carico cognitivo con un catalogo completo di componenti software

Elica del DNA

Integrità

Applica le schede di valutazione dell'integrità, crea e comunica politiche e migliora la tua esperienza

Tre anelli interconnessi

Estendibilità

Integra i dati più importanti del servizio per risparmiare tempo nella ricerca e ridurre il cambio di contesto

Illustrazione di un modello astratto

Modelli

Automatizza la coerenza e accelera i percorsi di produzione con modelli software predefiniti

I componenti Compass offrono ai team un modo centralizzato per catalogare e comprendere il proprio software. I componenti sono tutto ciò che si trova in un repository: un servizio, una libreria, un modello ML, ecc. Puoi collegarli in modo predefinito in Jira in modo che i ticket del backlog si colleghino ai componenti software reali su cui hanno un impatto. Questo aiuta i team a comprendere l'impatto del loro lavoro e come si relaziona al quadro generale del loro software.

Il team di engineering della piattaforma di Atlassian si affida a Compass per centralizzare informazioni, standard e pratiche che ci aiutano a mantenere una buona esperienza di sviluppo e una buona cultura ingegneristica. Ciò significa team autonomi, standard e pratiche chiari, proprietà dei servizi chiara e meno tempo di ricerca.

Inizia a usare Compass in pochi minuti: configura il catalogo, le metriche e le scorecard per iniziare

Puoi iniziare a usare Compass in pochi minuti seguendo alcuni semplici passaggi: (1) importa i tuoi componenti, (2) assegna ai team la proprietà dei componenti, (3) configura le scorecard.

Fase 1: importa i tuoi componenti ovunque si trovino in questo momento

Per la maggior parte dei team, ciò significa connettere uno strumento di gestione del codice sorgente (SCM), come Github o Bitbucket, o importare repository collegati ai tuoi progetti Jira. Puoi anche importare componenti da un file CSV o da qualsiasi combinazione di questi metodi per creare rapidamente un catalogo completo di tutto ciò che i tuoi sviluppatori creano e gestiscono.

Puoi iniziare a usare Compass in pochi minuti importando i tuoi componenti ovunque si trovino in questo momento. Per la maggior parte dei team, ciò significa connettere uno strumento di gestione del codice sorgente (SCM), come Github o Bitbucket, o importare repository collegati ai tuoi progetti Jira. Puoi anche importare componenti da un file CSV o da qualsiasi combinazione di questi metodi per creare rapidamente un catalogo completo di tutto ciò che i tuoi sviluppatori creano e gestiscono.

Fase 2: assegna ai team la proprietà dei tuoi componenti

In genere, a ogni componente dovrebbe essere assegnato un team che è il principale responsabile del suo funzionamento. L'aggiunta di un team proprietario a ogni componente rafforza una cultura dell'autonomia, aiuta gli sviluppatori a rimanere aggiornati sulle informazioni pertinenti e garantisce una copertura esperta di ogni componente anche se un individuo o un responsabile non è disponibile. Compass utilizza le definizioni di Atlassian Directory for Team, quindi tutti i team esistenti che stai utilizzando in Jira sono già disponibili.

Con il catalogo dei componenti, gli sviluppatori della tua organizzazione possono trovare rapidamente la documentazione o le attività CI/CD recenti associate a qualsiasi servizio o raccolta. Ciò aumenta la produttività degli sviluppatori riducendo il tempo dedicato alla ricerca di informazioni ed eliminando le interruzioni per le informazioni che ora possono essere gestite autonomamente.

Quando viene connesso un SCM, Compass rileva automaticamente eventi come le distribuzioni e li aggrega nel feed attività. In base agli eventi del tuo repository, Compass calcola automaticamente diverse metriche chiare pronte all'uso, come la frequenza di distribuzione e la percentuale di successo della build. Puoi configurare le metriche DORA e persino tenere traccia dei dati personalizzati, come il numero di vulnerabilità di sicurezza in sospeso per un determinato componente.

Pagina di panoramica dei componenti Compass con dati dei componenti, scorecard e metriche

Fase 3: configura le scorecard per applicare gli standard ai tuoi componenti

Con il catalogo compilato e le metriche in arrivo, è ora di iniziare a utilizzare le scorecard. Le scorecard vengono utilizzate per creare standard e applicarli ai componenti dell'organizzazione. Le scorecard possono utilizzare qualsiasi obiettivo desiderato per le metriche dei componenti e i dati sul campo. Questo ti aiuta a garantire che i componenti del software siano integri e che i team seguano le pratiche consigliate. Compass viene fornito con alcune scorecard predefinite con metriche che ti consigliamo di monitorare, come Component Readiness e DevOps Health, e puoi creare le tue scorecard personalizzate. Quando esamini le scorecard che non funzionano per i tuoi componenti, sai quale debito tecnico devi affrontare!

Pagina di panoramica dei componenti Compass con scorecard di preparazione del servizio aperta e con punteggio negativo

Per continuare con l'esempio precedente, affrontiamo il problema della sicurezza con una scorecard personalizzata che avrà esito negativo se sono presenti più vulnerabilità di sicurezza aperte in un dato momento. Le vulnerabilità di sicurezza sono un classico esempio di debito tecnologico. Innanzitutto, crea una metrica per tenere traccia delle vulnerabilità di sicurezza e configurala per estrarre dalla fonte corretta i vari componenti.

Successivamente, vai alla scheda Scorecard in "Integrità" nella barra di navigazione in alto. Fai clic su "Crea scorecard", compila i dettagli e assicurati di aggiungere la metrica delle vulnerabilità di sicurezza che hai appena creato come criterio della scorecard. Supponiamo che la scorecard avrà esito negativo se ci sono più vulnerabilità di sicurezza aperte in un dato momento. Questa è una buona scelta per i servizi di Livello 1 che sono fondamentali per lo stato operativo del software. Imposta l'operatore su "minore o uguale a" e il valore su uno. Imposta il peso al 100%, fai clic su Crea: ora hai un modo centralizzato per tenere traccia dei rischi legati alla sicurezza e offrire ai team azioni chiare per migliorare lo stato del loro software.

In pratica, configurerai più scorecard per misurare una varietà di standard e avere una visione completa del tuo debito tecnico.

Collegare Compass a Jira: identificare il debito tecnologico ad alto impatto e dare priorità al backlog

Ora Compass è configurato e abbiamo tutto ciò che serve per iniziare a identificare e ad affrontare il debito tecnico. Innanzitutto, assicurati che il tuo progetto Jira sia abilitato per i componenti Compass facendo clic su "Componenti" nella barra di navigazione a sinistra e selezionando il campo a discesa in alto a destra. Se i componenti sono abilitati, dovresti vedere "Componente Compass".

Quindi, torna in Compass ed esamina le scorecard. Identifica le aree in cui le scorecard sono a rischio o stanno già dando esito negativo e, in base alle priorità del tuo team, determina il problema più importante da risolvere. Puoi visualizzare una scorecard specifica dall'interfaccia utente "Integrità" e vedere come si comportano tutti i componenti applicabili. Puoi filtrare ulteriormente per team proprietario per capire esattamente il punteggio dei tuoi componenti e identificare il debito tecnico che richiede la tua attenzione.

Pagina di panoramica dei componenti Compass con scorecard di preparazione del servizio aperta e con punteggio negativo

Consideriamo un altro esempio utilizzando la scorecard integrata DevOps Health. Stai esaminando i componenti del tuo team e noti che diversi non soddisfano il criterio della frequenza di distribuzione. La scorecard è definita in modo tale che se ci sono meno di cinque distribuzioni a settimana dà esito negativo; noti che alcuni dei tuoi componenti hanno solo una o due distribuzioni a settimana. Questo è un potenziale problema che richiede un'indagine. Forse c'è un problema nel processo di creazione o nelle pipeline di distribuzione, o forse il tuo team è alle prese con la difficoltà tecnica del lavoro che sta svolgendo. In ogni caso, è un debito tecnico che vale la pena affrontare.

Torna al tuo backlog e verifica se esistono ticket che risolvono il problema delle distribuzioni lente. In caso contrario, puoi creare un nuovo ticket direttamente dalla pagina Scorecard di Compass. Assicurati che questi ticket includano i tag corretti ai componenti Compass in modo da poter mantenere tutto organizzato e monitorare direttamente l'impatto del backlog.

Visualizzazione ticket di Jira con in evidenza il componente Compass con tag al campo Componente

Da lì, puoi incorporare con sicurezza questi ticket nello sprint successivo o aggiungerli alla board Kanban. Sai che questi ticket sono debiti tecnici ad alta priorità e sai che il lavoro svolto influirà sulle prestazioni dell'architettura software. Dopo che il tuo team ha risolto il ticket, puoi tornare alla scorecard DevOps Health e vedere la cronologia di come è migliorata nel tempo la frequenza di distribuzione. Questa è un'ottima testimonianza visiva da mostrare alla leadership e al tuo team mentre parlate del valore del tuo lavoro.

Pagina di panoramica dei componenti Compass con scorecard di preparazione del servizio aperta e in stato di punteggio positivo al 100%

Riepilogo: usare Compass per dare priorità al backlog di Jira e ridurre il debito tecnico

Il debito tecnico è inevitabile nella moderna distribuzione di software, ma i team efficaci sanno come dare priorità al debito tecnico ad alto impatto per mantenere un elevato livello di affidabilità e fornire nuove funzionalità innovative con una velocity costante. Il collegamento dei ticket di Jira a un catalogo centralizzato di componenti in Compass offre ai team informazioni sull'impatto sul lavoro e consente loro di trovare compromessi efficaci tra debito tecnico e consegna di funzionalità in pochi passaggi:

  1. Configura rapidamente il tuo catalogo software in Compass collegando il tuo SCM, importando i repository da Jira o da un file CSV
  2. Inizia con scorecard integrate, poi creane di tue con metriche e altre origini dati per monitorare le prestazioni del software rispetto agli standard e alle pratiche dell'organizzazione e identificare il debito tecnico ad alta priorità
  3. Rendi Compass parte dei tuoi rituali settimanali mentre sposti il debito tecnico da "Backlog" a "Completato", prevenendo gli imprevisti e offrendo costantemente nuove funzionalità
Katie Silver
Katie Silver

Katie è Senior Product Manager di Compass. Lavora in Atlassian da oltre 9 anni e, prima di dedicarsi a DevOps, si occupava di analisi aziendale e di sistemi di commercio. Per Compass, dedica il suo tempo ad aiutare gli utenti a sfruttare la potenza dei dati del loro catalogo. Nella vita privata, fa volontariato nella nursery neonatale per gattini di Austin Pets Alive e trascorre il tempo libero con il suo gatto (Pepper Jack) e il suo cane (Lilo). Katie ha conseguito una laurea in matematica e studi cinematografici presso la Wesleyan University. 

Condividi l'articolo