Le aree di interesse includono budget e personale, gestione dell'ambito e misurazione del ROI.
Volontario
Le singole funzionalità possono esistere per fornire nozioni di base comuni per funzionalità comuni o critiche. Queste capacità sono costruite e mantenute per necessità piuttosto che pianificate e intenzionalmente finanziato.
Queste funzionalità vengono create e gestite dalle persone assegnate temporaneamente o volontariamente; nessun finanziamento centrale o personale è intenzionalmente allocato a loro. Dipendono dalle attuali esigenze tattiche degli utenti. Le decisioni sono basate su dati incompleti o irrilevanti, causando priorità sbagliate.
La leadership reagisce principalmente alle crisi anziché guidare in modo proattivo il cambiamento, causando una collaborazione frammentata e un'inefficienza tra i team. L'obiettivo è quello di creare consapevolezza della necessità di allineamento strategico e processo decisionale basato sui dati.
Allocazione di budget e persone per mantenere le funzionalità comuni: singoli sviluppatori o team prendono la responsabilità di soddisfare requisiti tecnici e capacità urgenti. Questo non è sempre costoso: gli sviluppatori si occupano di questo lavoro sulle responsabilità correnti.
Gestione dell'ambito: i tecnici si concentrano sull'indirizzamento delle esigenze all'interno del contesto o dell'ambito specifico che la necessità è nata con poca condivisione della soluzione in contesti più ampi.
Dimostrazione del ritorno sugli investimenti: misurata dal modo in cui l'individuo o il team ha affrontato il problema specifico e l'impatto sul lavoro principale del progetto.
Contributi ad hoc
Man mano che l'organizzazione cresce, le sfide tecniche ricorrenti, ad esempio il provisioning incoerente dell'infrastruttura, le procedure di sicurezza frammentate e i colli di bottiglia nelle pipeline di distribuzione diventano più evidenti. Queste sfide spesso comportano ritardi, tempi di inattività e inefficienze che ostacolano la velocità e l'affidabilità complessive della distribuzione del software. In risposta, l'organizzazione inizia a formare team dedicati con compito di risolvere sistematicamente questi problemi. Tuttavia, questi sforzi rimangono in gran parte reattivi, concentrandosi sull'applicazione di patch immediate problemi piuttosto che prevenirli in modo proattivo.
L'ambito del lavoro di questi team è spesso limitato a problemi specifici, ad esempio il miglioramento di un processo di distribuzione specifico o la standardizzazione di un subset di protocolli di sicurezza, senza un approccio olistico al miglioramento a livello di piattaforma.
La leadership inizia ad affrontare l'inefficacibilità promuovendo la collaborazione di base e introducendo metriche, ma gli sforzi rimangono reattivi e silo, con un'delega limitata nell'intera organizzazione.
Allocazione di budget e persone per mantenere le funzionalità comuni: Teams viene creato per lavorare sulle principali problematiche di taglio incrociato, spesso reattive.
Gestione dell'ambito: l'ambito è limitato a problemi specifici.
Dimostrazione del ritorno sugli investimenti: misurare i miglioramenti delle principali problematiche di taglio incrociato - dimensioni del backlog.
Operazionalizzazione con un team dedicato
Il budget e le persone vengono allocati per persone persistenti e supporto delle risorse. Le persone assegnate sono tenute a fornire un set di funzionalità comunemente necessarie per velocizzare la distribuzione del software. Spesso questi team si concentrano sulla conformità ai requisiti tecnici reattivi. Possono essere chiamati DevOps, Engineering Enablement, Developer Experience (DevEx o DevX), Shared Tools, Centre-Of-Excellence o persino Platform. Sono finanziati centralmente e trattati come centri di costo.
I team della piattaforma sono ora riconosciuti come critici per il successo dell'organizzazione e c'è uno sforzo per misurare e giustificare i propri contributi. Tuttavia, l'attenzione può essere ancora rivolta ai rendimenti immediati anziché alla crescita a lungo termine.
La leadership promuove attivamente il lavoro di squadra interfunzionale e le procedure DevOps iniziali, ma lotta con la misurazione del valore del team della piattaforma e l'allineamento delle soluzioni alle esigenze degli utenti, causando sfide nel giustificare gli investimenti e mantenere l'efficienza.
Allocazione di budget e persone per mantenere le funzionalità comuni: i team centrali finanziati in base alle conoscenze dei requisiti tecnici esistenti per velocizzare la distribuzione del software.
Gestione dell'ambito: l'ambito è ampio e superficiale. Il team crea soluzioni che tentano di gestire il denominatore comune più grande in tutti i team. Il team centrale si concentra sulla comprensione delle esigenze comuni di tutti i team e non cerca modi per configurare o ottimizzare le soluzioni in base a tali esigenze.
Dimostrazione del ritorno sugli investimenti: misurare i miglioramenti della velocità di consegna.
Scalabile come prodotto
Gli investimenti nelle piattaforme interne e nelle loro capacità sono simili agli investimenti nei prodotti e nei flussi di valore in uscita di un'azienda: in base al valore che si prevede di fornire ai clienti. La gestione dei prodotti e l'esperienza utente vengono considerate e investite in modo esplicito. Un sistema di chargeback può essere usato per riflettere l'impatto delle piattaforme sui propri flussi di valore e prodotti diretti dei clienti. L'azienda alloca fondi e personale alle iniziative appropriate usando indicatori di prestazioni basati sui dati e cicli di feedback. I team della piattaforma possono infine ottimizzare l'azienda stessa e contribuire a una maggiore redditività.
A questo livello, osserviamo un cambiamento culturale significativo all'interno dell'organizzazione, in cui gli sviluppatori vengono riconosciuti e trattati come clienti di valore. La leadership sottolinea una cultura dell'empatia e della crescita, guidando un approccio guidato dal prodotto e promuovendo il miglioramento continuo, ma deve garantire che questi valori siano profondamente incorporati nell'organizzazione per ottenere un impatto duraturo.
Allocazione di budget e persone per mantenere le funzionalità comuni: il team della piattaforma centrale è gestito e gestito come altri team di prodotto. I ruoli includono sviluppo, gestione dei prodotti, progettazione, ricerca e contenuto. I team sono finanziati in base alla roadmap.
Gestione dell'ambito: il team produce roadmap per i prodotti per descrivere i piani e l'impatto previsto sull'organizzazione. Il team della piattaforma interagisce con i team di progettazione per raccogliere i requisiti, identificare nuove opportunità e così via. I tecnici sono incentrati sulle esigenze di tutti i team di sviluppo all'interno dell'organizzazione.
Dimostrazione del ritorno sugli investimenti: misurare e segnalare miglioramenti nella soddisfazione degli sviluppatori.
Ottimizzazione con un ecosistema abilitato
I team della piattaforma trovano modi per aumentare l'efficienza e l'efficacia a livello di organizzazione oltre alle funzionalità di base. I gestori della piattaforma core cercano intenzionalmente di ottimizzare il time-to-market per i nuovi prodotti, ridurre i costi in tutta l'azienda, abilitare governance e conformità efficienti per i nuovi servizi, ridimensionare i carichi di lavoro in modo rapido e semplice e altri requisiti trasversali. Questi gestori di base sono incentrati sull'abilitazione di specialisti delle capacità per integrare facilmente i propri requisiti e offerte in parti nuove e esistenti delle piattaforme. Inoltre, l'organizzazione concentra le persone e le risorse di domini specializzati come sicurezza, prestazioni, qualità sull'interazione con i framework della piattaforma forniti per introdurre funzionalità avanzate che consentono ai team di prodotto di accelerare il rispetto degli obiettivi aziendali senza dipendere da un backlog centralizzato del team.
La leadership promuove l'autonomia e la responsabilità del team, incoraggiare l'innovazione, bilanciando la governance, con l'obiettivo di mantenere la rilevanza e l'efficacia della piattaforma in un ambiente in rapida evoluzione.
Allocazione di budget e persone per mantenere le funzionalità comuni: il team della piattaforma centrale è personale e gestito come altri team di prodotti, ma viene fornito un maggior finanziamento per consentire contributi in tutta l'organizzazione. I team di progettazione e non ingegneria hanno finanziamenti espliciti per poter contribuire alla piattaforma.
Gestione dell'ambito: i tecnici si concentrano sull'abilitazione dei contributi della piattaforma per consentire una rapida condivisione delle conoscenze nell'organizzazione.
Dimostrazione del ritorno sugli investimenti: misurare i miglioramenti nella soddisfazione degli sviluppatori.