Esplorare le complessità dello sviluppo prodotto con Agile

Pubblicato: 2020-10-01

Ultimo aggiornamento: 12 marzo 2021

La netta differenza tra riconoscere l'indispensabilità dell'agile e non riconoscerlo è lo scoppio di una pandemia. Un torrente di nuovi cambiamenti introdotti dal COVID-19 ha interrotto irreversibilmente i sistemi esistenti e messo in luce l'agilità (o la mancanza di essa) delle aziende di navigare nella nuova realtà.

"In questo mondo complesso, tuttavia, l'incertezza è inseparabile dalla realtà e rendere gli eventi casuali, un capro espiatorio per eseguire male non è solo un esercizio di futilità ma anche sconsiderato".

Sebbene enorme, la crisi del Covid-19 è un'altra delle tante incertezze che le aziende devono affrontare.

L'adozione di una serie flessibile di principi e l'adattamento in base alle esigenze crea una flessibilità integrata per le aziende per resistere e prevenire la scossa delle incertezze in arrivo.

L'agilità all'interno della cultura, delle persone e dei processi di sviluppo del software funge da antidoto a nodi burocratici, silos di visione a tunnel, operazioni di vuoto e ritardi perpetui.

Diventa il leader di prodotto agile di cui la tua organizzazione ha bisogno:

I leader devono riconoscere ed essere i primi a segnalare il cambiamento adottando modalità agili di lavoro e telegrafando le stesse attraverso i loro comportamenti pubblici evoluti.

"I buoni leader guidano, i leader agili, guidano con l'intenzione di servire".

Difendendo i valori di fiducia, trasparenza, responsabilità, collaborazione e realizzando la promessa di tentativi ed errori, si concentrano sul potenziamento dei team di sviluppo software e sulla rimozione degli ostacoli alla creazione di valore. Coltivando la leadership di servizio, i leader agili si ritirano dalla microgestione dei minimi dettagli, sviluppano nuovi modi di comunicazione aperta per impegnarsi con l'organizzazione e garantiscono autonomia ai loro team interfunzionali.

I leader agili più efficaci sono quelli che modellano il loro nuovo comportamento per riflettere modalità di lavoro agili; nel processo decisionale, nella comunicazione quotidiana e nelle strategie di sviluppo. Quindi, gli agili team di sviluppo software e le aziende fanno molto nei loro servizi efficaci alla loro stimata clientela.

Sostituzione del vuoto nelle operazioni con lo sviluppo agile collaborativo

Lavorare in silos; schioccare alle scrivanie, svolgere compiti predeterminati in isolamento rende uno un visionario tunnel. Segnando un passaggio dai silos di informazioni, lo sviluppo agile del prodotto si concentra su una collaborazione coesa creando team interfunzionali.

Questi team sono costituiti da un piccolo numero di individui che si adattano di fronte alle sfide, incorporano regolarmente feedback per migliorare continuamente e sfruttano lo slancio attraverso la risoluzione istantanea dei problemi.

La caratterizzazione di questi team è incorporata nella necessità per i dipendenti di esercitare la proprietà e la responsabilità condivisa del proprio lavoro invece di essere vincolati dai loro ruoli lavorativi rigidamente definiti e dalle informazioni frammentate.

Agilità-1

La complessità interna si riduce introducendo una cultura di collaborazione incrociata che consente trasparenza, responsabilità end-to-end, focus sull'esecuzione e lotta alla resistenza. Lo sviluppo agile del software elimina i ritardi di accodamento, le rielaborazioni e promuove la consegna nel più breve tempo possibile.

Replicare i meccanismi dell'agile sradica l'agilità della tua squadra. Sono i principi critici dell'agile che danno vita e significato ai tecnicismi.

Elimina dal processo la comunicazione gratuita, la soddisfazione del cliente e la collaborazione e spingi per sprint, mischie e timebox. L'agilità consente ai team di fornire valore.

Fare un salto di qualità con DevOps: un passo avanti con le pratiche agili

Diventare agile nel modo giusto promette progressi astronomici nella crescita di un'azienda. Sfruttare questa promessa è DevOps, la cui adozione è un acceleratore chiave che rafforza l'agile processo di sviluppo del software per cicli di rilascio più rapidi, affidabili, sicuri e iterativi.

Molte aziende stanno sfruttando a metà i vantaggi di DevOps disponendo di alcuni elementi in luoghi come test automatizzati, sviluppo continuo di software e rilascio. Tuttavia, l'approccio passivo e la riluttanza ad apportare modifiche olistiche rappresentano una barriera nel cogliere i vantaggi onnicomprensivi di DevOps.

I cambiamenti costituzionali nel controllo e nella governance, nelle business unit e nei modelli operativi sono prerequisiti per iniziare e andare avanti con DevOps.

Nel paradigma DevOps, i controlli software irrilevanti che un tempo servivano allo scopo di un'azienda ma ora sono obsoleti e le operazioni rallentate vengono adattati per far fronte alla variabilità delle esigenze aziendali.

Affinché DevOps possa trovare il suo ritmo, deve esserci una sinfonia nelle modalità di esecuzione simultanea di sviluppo software, regolazioni della governance e compatibilità tra i diversi dipartimenti. Dovrebbe essere diretto verso il semplice scopo di ridurre la distanza tra la pianificazione e il rilascio del software senza far fronte a problemi di affidabilità o qualità.

Affinché le aziende possano trarre i massimi vantaggi da DevOps, devono adottare e introdurre l'automazione per consentire una pipeline di distribuzione continua sana con conseguente rilascio di software rapido e miglioramenti iterativi.

“Il successo di Amazon con il passaggio ad Agile DevOps nel 2010 ha ridotto significativamente il numero di interruzioni, con un conseguente risparmio di milioni. Ha catturato i vantaggi del processo di distribuzione continua, gestito dal loro sistema interno chiamato Apollo, che ha fornito ai propri sviluppatori la possibilità di distribuire codici su qualsiasi server in qualsiasi momento. Entro un anno, Amazon ha distribuito nuovo software sui server di produzione in media ogni 11,6 secondi".

Ottenere un salto di qualità con DevOps è un processo organizzato e graduale che inizia con l'integrazione graduale con i sistemi esistenti. Costruire l'abilità digitale con un progetto pilota e successivamente adottare le pratiche DevOps aiuta a tradursi nella decisione e nell'adozione di una suite di strumenti e meccanismi tecnici.

I vantaggi fortemente evidenti includono:

  • Massima copertura dei test
  • Consegne software affidabili e veloci su larga scala
  • Collaborazione migliorata
  • I minori costi di rilavorazione si traducono in ricavi moltiplicati

Prima o poi le organizzazioni dovrebbero adattarsi al benchmark stabilito dai loro concorrenti che utilizzano le pratiche DevOps.

Standard inclusivi nella pratica agile di sviluppo del prodotto

L'agilità è una ricerca sempre lunga. Il miglior test per ottenere la giusta agilità è la costante adesione ai suoi principi più importanti:

1. Iterativo:

Essere agili significa riconoscere, accettare e prepararsi all'incertezza. È la somma di tutti i cliché. Eseguire le cose dall'inizio alla fine, senza tener conto degli ecosistemi di mercato transitori, delle aspettative dei clienti e dei requisiti aziendali è un esercizio destinato al fallimento.

Piuttosto, un'attività suddivisa in blocchi più piccoli identificabili e ripetuta ripetutamente per ridurre i rischi, tenendo conto dell'elemento di dipendenza da fattori esterni, aiuta a mantenere la flessibilità. L'iterazione aggiunge esuberanza al processo di sviluppo agile.

2. Fornire valore:

L'attenzione continua a fornire valore rapido mediante la definizione continua delle priorità degli elementi cruciali e l'eccellenza tecnica è la chiave dell'agilità. Integrando gli apprendimenti iterativi nell'iterazione successiva, i luoghi agili si concentrano sulla fornitura di valore in ogni piccola fase del processo.

Rafforzare la capacità dell'organizzazione di muoversi rapidamente, ottenere visibilità sui risultati del progetto e correggere di conseguenza il corso, sono solo alcuni dei vantaggi che derivano dalle pratiche agili. Molto simile alla costruzione di un giocattolo lego, ogni blocco aggiunge un valore, coerente con uno scopo allineato.

3. Incrementale:

Agile spinge per lo sviluppo sostenibile decostruendo un requisito di progetto in pezzi digeribili e fornendo in modo incrementale elementi di valore a un ritmo costante. Allontanandosi dal tradizionale modello lineare e sequenziale, l'agilità è opposta alla rigidità. Fornisce a un'organizzazione la flessibilità necessaria per valutare continuamente il backlog, identificare i requisiti del progetto, dividerlo in singoli blocchi e fornire continuamente.

4. Squadre interfunzionali:

L'agilità richiede team interfunzionali composti da individui motivati ​​che operano in un ecosistema che favorisce la collaborazione, le conversazioni faccia a faccia, la fiducia, la proprietà collettiva e una visione condivisa. Uno non può succedere senza l'altro. I membri di più discipline non possono lavorare in modo dedicato per attività mission-critical se l'ambiente non supporta la partecipazione. Allo stesso modo, l'ambiente favorevole può fare solo così tanto in assenza di rappresentazione di diverse prospettive e competenze da campi multidisciplinari.

5. I clienti prima di tutto:

È fondamentale per le aziende identificare i propri clienti, metterli al primo posto, risolvere i loro problemi ed essere un abilitatore digitale. Troppa comprensione si perde tra la traduzione; dalle esigenze insoddisfatte del cliente alla persona che esegue la codifica. Agile si concentra sull'essere un rappresentante del cliente e in ogni piccola fase del processo decisionale, dà priorità alle loro esigenze, prospettive, motivazioni e problemi.


Le organizzazioni devono orientarsi verso questi principi essenziali e parlare un linguaggio comune di sviluppo agile del software per promuovere un cambiamento graduale e colossale.

Le pratiche da non seguire

Agilità-3

L'agilità è un sistema di pratiche e principi da condurre all'unisono. Per diverse aziende in transizione verso viaggi agili, i risultati sono scarsi o nulli a causa di questi fattori:

1. Raccolta delle ciliegie:

La maggior parte delle aziende viene alla ricerca di agili, ma finisce per raccogliere elementi che trovano conveniente da implementare. L'agilità all'inizio è scomoda perché significa uscire dalle gerarchie, dai silos, dalla mancanza di responsabilità a cui i professionisti si sono abituati.

Le pratiche di sviluppo agile del prodotto vengono con i loro dolori e piaceri. È di vitale importanza comprendere e assorbire l'essenza, continuare a imparare da essa e costruire un'organizzazione agile.

2. Copia e incolla agile:

Simile alle ripercussioni della "raccolta delle ciliegie" è il copia e incolla agile. Per molte aziende, "Agile" non è che una parola d'ordine e dopo aver osservato gli altri che seguono e traggono vantaggio dall'agile, anche loro seguono il gregge. I principi di Agile sono gli stessi, tuttavia, non è ovvio che ciò che ha funzionato per "Spotify" funzionerebbe anche per chiunque altro.

Comporre le tue squadre in squadre, tribù e capitoli senza capire l'aspetto autonomo o la sua traiettoria è un'impresa persa. Implementare agile, ma personalizzarlo in linea con le esigenze, la struttura e la scala dell'impresa.

3. Su carta:

Le aziende che si dichiarano agili ma non disposte a fare cambiamenti fondamentali elementari ai principi di sviluppo agile sono cadute nella pratica scorretta di adottare l'agile "sulla carta". Queste aziende sono avverse ai bisogni e alla cultura di base.

Un passaggio all'agile è un esercizio sismico e di alterazione della struttura per un'organizzazione. Le aziende devono pianificare, essere preparate ed eseguire con il senno di poi per attuare correttamente le pratiche agili.

Guidare e sminuire gli impreparati, l'incertezza e le sue variabili sono una norma. Entrare nel processo di sviluppo agile o collaborare con coloro che hanno le pratiche radicate nel loro lavoro quotidiano è l'unico modo per navigare attraverso l'immediatezza e le conseguenze di tali variabili.