Che cos'è la gestione dei programmi Agile?
La gestione dei programmi Agile è il coordinamento di più progetti Agile correlati all'interno di un'organizzazione. L'obiettivo della gestione dei programmi Agile è quello di utilizzare i concetti Agile per produrre i migliori risultati per i singoli progetti, tenendo conto degli obiettivi aziendali generali.
La gestione tradizionale dei programmi, al contrario della gestione dei progetti, non si concentra sui deliverable dei singoli progetti, ma sul progresso e sul successo di molti progetti correlati. In una piccola impresa, i program manager possono supervisionare i progetti che interessano l'intera azienda, mentre in una grande azienda possono dirigere una singola divisione.
La gestione dei programmi Agile e la gestione programmi tradizionale prevedono il coordinamento di team che lavorano su progetti simili e puntano a sviluppare il prodotto finale in modo evolutivo e adattivo. La gestione dei programmi Agile, invece, si concentra sul processo Agile e lavora per aumentare l'impegno dei team Agile.
"Quando parliamo di gestione dei programmi Agile, di solito si parla, solo dal punto di vista dell'etichetta, di scalabilità Agile, Agile su scala o cose del genere", afferma Alan Zucker, direttore fondatore di Project Management Essentials. Implementando le best practice Agile, i program manager possono coordinare e integrare più progetti Agile per garantire il successo del programma.
Governance della gestione dei programmi Agile
Le organizzazioni devono creare una struttura di governo coesa per coordinare il lavoro nella gestione dei programmi Agile. Questa struttura specificherà il modo in cui i team collaborano ai progetti, prendono le decisioni e determinano gli standard e le metriche per il successo, oltre ad altre importanti questioni manageriali.
Ecco le raccomandazioni per stabilire una governance di gestione dei programmi Agile di successo:
- Assicurarsi che il programma rimanga allineato con le priorità dell'organizzazione: fin dall'inizio, il programma deve essere allineato alle priorità della tua organizzazione. Con il proseguimento del lavoro, è fondamentale che i team leader mantengano questo allineamento e garantiscano che il lavoro non si diriga verso aree non in linea con gli obiettivi organizzativi.
- Consentire una struttura più flessibile rispetto alla gestione tradizionale dei programmi: il processo Agile funziona in modo diverso rispetto alla gestione tradizionale dei progetti. I progetti Agile si concentrano più sui risultati che sul processo, quindi i program manager Agile dovrebbero evitare di utilizzare tattiche tradizionali di gestione dei progetti che non sono in linea con la metodologia Agile. Dialexa, una società di consulenza per lo sviluppo di prodotti digitali con sede a Dallas. "Voglio che le persone si concentrino sui progressi. Stiamo facendo progressi? Abbiamo risultati misurabili su cui possiamo prendere decisioni informate? Vogliamo passare al progresso e al valore, allontanandoci dal concetto di tempo e budget. Posso rispettare i tempi e il budget e non riuscire comunque a consegnare ciò di cui hai bisogno o ciò che è importante per l'organizzazione. Se posso spostare il discorso, il modo in cui si struttura la governance si concentra maggiormente sul fatto che stiamo prendendo le decisioni giuste e se abbiamo le informazioni per prenderle al momento giusto." “Ci concentriamo su ciò che voglio influenzare piuttosto che sulla struttura", afferma Sarah Klarich, direttrice di
- Spostare le decisioni al livello più basso possibile: assicurati che le persone che prendono le decisioni importanti siano quelle che meglio comprendono il lavoro. Ciò significa che la tua organizzazione dovrebbe evitare di consentire solo ai leader di livello superiore di prendere decisioni per il programma.
"Voglio cambiare questo aspetto", afferma Klarich. "Avrò ancora bisogno che i leader prendano decisioni, ma voglio anche che trasferiscano la responsabilità al livello più basso dell'organizzazione. Non voglio che ogni decisione debba andare fino in cima e tornare indietro. Quali decisioni possono prendere i team? Quali decisioni può prendere un project manager all'interno del tuo programma? Quali decisioni può prendere il programma senza arrivare a un consiglio consultivo o a un comitato direttivo?" - Coordinare più team: uno degli obiettivi più importanti nella gestione dei programmi Agile è garantire che la tua organizzazione coordini con successo il lavoro tra più team Agile. Ogni team deve sapere cosa stanno facendo gli altri team, quando è previsto il completamento delle iterazioni e dove si trovano le dipendenze tra i progetti dei vari team.
"C'è un livello di coordinamento tra più team che potresti non avere in un singolo progetto", afferma Klarich, "quindi è un po' più complesso pianificare queste dipendenze del flusso di valore, allinearle e coordinarle in un gruppo di stakeholder più ampio in generale. Si tratta di più punti di vista che confluiscono nella definizione delle priorità. È una gestione di progetto all'ennesima potenza, perché hai un fattore di scala."
"I tuoi team Agile stanno facendo più o meno le stesse cose che stanno facendo attualmente," afferma Zucker. "Hanno il backlog del prodotto, stanno pianificando, ma immagina di avere una dozzina di team. Come coordineremo il lavoro di queste decine di team, in modo da non creare solo caos?"
Zucker afferma che con la gestione dei programmi tradizionale, "facciamo la nostra grande pianificazione in anticipo. Noi distribuiamo il lavoro a tutti i nostri team. Loro consegnano. Poi le persone finiscono in tempi diversi e alla fine integriamo il lavoro."
La gestione dei programmi Agile deve adattarsi alle differenze nel funzionamento di Agile, realizzando al contempo lo stesso coordinamento della gestione dei programmi tradizionale. "Dobbiamo essere sincronizzati in modo da sapere quali sono le priorità", afferma Zucker. "Se le priorità di alcuni team Agile sono cambiate da due settimane a questa parte rispetto all'iterazione successiva o al prossimo sprint, siamo ancora coordinati su questi cambiamenti? Se sviluppiamo in cicli di due settimane, è necessario un coordinamento molto maggiore e molto più stretto."
- Mantenere iterazioni più brevi: Nella gestione dei progetti Agile, i manager suddividono il lavoro in incrementi più brevi, di due settimane. Di conseguenza, nella gestione dei programmi Agile, i manager dovrebbero suddividere il lavoro in iterazioni più brevi rispetto alla gestione dei programmi tradizionale. I team Agile possono riunirsi per coordinare e analizzare i progressi del programma ogni trimestre o anche ogni due mesi. Project Management Training Institute di Dallas. "Invece di arrivare a sei, sette, otto anni con la gestione dei programmi tradizionale, la riduzione dei tempi consente di lanciare, pianificare ed eseguire i programmi in un ambiente complesso, consentendo al cliente di ottenere maggiori benefici." “Incrementale implica che i componenti siano presi in segmenti più piccoli, come da 8 a 12 settimane, magari allungando a 15-16 settimane", dice Yad Senapathy, fondatore e CEO del
- Selezionare metriche e KPI per monitorare e gestire le prestazioni: come per la gestione dei progetti Agile, dovrai decidere le metriche e gli indicatori chiave di prestazione (KPI) in grado di misurare l'andamento del tuo programma. Seleziona alcune metriche importanti e monitorale continuamente. Assicurati di selezionare i KPI e le metriche migliori per il tuo programma specifico.
SAFe: un framework comune per la gestione dei programmi Agile
Un framework comune utilizzato per scalare i progetti Agile nella gestione dei programmi Agile è lo Scaled Agile Framework (SAFe). SAFe è una serie di strutture organizzative che aiutano i team e i program manager a implementare i concetti Agile per programmi e portafogli complessi.
Quando si utilizzano le pratiche SAFe, le organizzazioni possono organizzare e coordinare diversi team Agile che lavorano su progetti simili. In questo modo, i program manager possono garantire che i loro programmi avanzino il più rapidamente possibile e fornire risultati a beneficio dell'intera organizzazione.
SAFe: Agile Release Train
Una componente fondamentale di SAFe è l'Agile Release Train (ART), un insieme di diversi team Agile che lavorano su progetti o prodotti simili. Questi team si coordinano per tenere traccia delle dipendenze, allineare le priorità e garantire il completamento tempestivo di tutti i progetti.
Un Agile Release Train comprende di solito circa 75-150 persone che lavorano su progetti separati ma correlati. "SAFe coordina il lavoro di una mezza dozzina o una dozzina di team diversi in un programma", afferma Zucker.
SAFe e i suoi Agile Release Train sono importanti in un programma complesso, afferma Zucker, perché "se stiamo cercando di consegnare in modo iterativo e incrementale tra più team e non abbiamo un framework o un insieme di pratiche per coordinare questo sforzo, ci imbatteremo negli stessi problemi che abbiamo nei nostri programmi tradizionali. SAFe crea questo framework per te."
SAFe: Sincronizzazione dei team
Quando si utilizza SAFe, i team Agile si coordinano fin dall'inizio per formare un piano di programma coeso, ma il successo continuo richiede una collaborazione costante. I team Agile si riuniscono per sincronizzare i piani ogni 8-12 settimane circa, per garantire che l'intero programma sia in linea.
"Ogni 10 settimane ci riuniamo e organizziamo un evento di pianificazione di due giorni e affrontiamo le iterazioni di sviluppo", spiega Zucker. "Poi abbiamo il nostro sprint sull'innovazione e la pianificazione (IP). Stiamo migliorando il nostro processo, stiamo facendo formazione e ci stiamo preparando per il prossimo incremento del programma. Poi si ripete il processo da capo e continuiamo a iterare in questo modo."
Zucker spiega poi che queste riunioni collaborative aiutano tutti a comprendere le interdipendenze tra i diversi progetti e team.
Ufficio di gestione dei programmi Agile (PMO)
Le organizzazioni più grandi possono istituire un ufficio di gestione dei programmi Agile (PMO) per guidare e servire il lavoro dell'organizzazione. Lo scopo di questo ufficio è quello di facilitare la comunicazione tra i team e di aiutare i singoli a comprendere gli obiettivi più ampi del programma.
Qual è l'obiettivo dell'ufficio di gestione dei programmi Agile?
Un ufficio di gestione dei programmi Agile fornisce ai membri del team gli strumenti e le informazioni necessarie per mantenere i loro progetti in linea con le esigenze dell'intero programma. Questi uffici si concentrano sull'obiettivo di ogni programma e sui progressi tangibili compiuti verso gli obiettivi.
A volte chiamato ufficio di gestione del valore, un ufficio di gestione dei programmi è una componente importante di qualsiasi organizzazione grande e complessa con più team e progetti da coordinare.
Sebbene gli uffici di gestione dei programmi Agile differiscano da un'azienda all'altra, tutti condividono alcuni obiettivi comuni:
- Incoraggiare la visione d'insieme: Un ufficio di gestione dei programmi aiuta i membri del team a concentrarsi sul fatto che un programma sta procedendo bene e sta raggiungendo i suoi obiettivi. Klarich suggerisce di concentrarsi sulle seguenti domande: "Stiamo fornendo valore frequentemente? Ed efficacemente? Per quello che stiamo cercando di fare, stiamo raggiungendo i nostri obiettivi? Abbiamo un modo per quantificarlo? Sappiamo come misurarlo?"
- Offrire strumenti e assistenza di base: gli uffici di gestione dei programmi esistono per fornire supporto ai team all'interno di un programma, in modo che possano raggiungere i loro obiettivi. Klarich afferma che la domanda più importante che un ufficio di gestione dei programmi può porre ai membri dei team di progetto e di programma è: "Di quale aiuto avete bisogno?"
Anche i team Agile che funzionano bene a volte presentano problemi organizzativi e strutturali. Zucker spiega che in questi casi l'ufficio di gestione dei programmi Agile "può fornire l'infrastruttura, gli strumenti, i modelli, le pratiche e i coach per aiutare le organizzazioni ad avere più successo." - Scoraggiare la microgestione e l'eccessiva generalizzazione: come ogni ufficio di gestione dei programmi, gli uffici di gestione dei programmi Agile dovrebbero evitare di fare due cose: la microgestione dei programmi e l'offerta di strumenti e modelli univoci. Zucker ribadisce che ogni programma è diverso e potrebbe aver bisogno di strumenti e modelli specifici e personalizzati.
Cosa fa un Program Manager Agile?
Un program manager Agile guida il coordinamento di tutti i team Agile che lavorano insieme a un programma. Il program manager coordina le pianificazioni tra diversi progetti e team e gestisce le dipendenze all'interno dei diversi progetti Agile.
Quando si utilizza il framework SAFe, il program manager Agile è chiamato l'ingegnere di formazione per il rilascio Agile.
Questi sono alcuni dei compiti principali di un program manager Agile:
- Coordinare i team: il program manager è responsabile del coordinamento tra tutti i team di un programma. "Stai facendo coordinamento tra i diversi progetti per assicurarsi che siano fatti il coordinamento della pianificazione, la gestione delle dipendenze e la gestione dei rischi", afferma Klarich.
- Supervisionare e garantire una comunicazione appropriata: una buona comunicazione è fondamentale nella gestione dei programmi Agile. Con così tanti team Agile che lavorano su progetti diversi, tenere traccia delle dipendenze e mantenere la trasparenza è fondamentale. Un buon program manager Agile, spiega Klarich, "si occupa degli aspetti di comunicazione e si assicura che le informazioni fluiscano verso l'alto e verso il basso al momento opportuno."
- Rimuovere gli ostacoli: un compito importante di un program manager Agile è quello di monitorare gli ostacoli che si presentano nel programma con l'avanzamento dei vari progetti.
"Se il team del programma ha un impedimento e non è in grado di risolverlo da solo, allora ritengo che sia mia responsabilità, in qualità di program manager, aiutarlo a rimuovere questi ostacoli", afferma Klarich. Il program manager dovrebbe anche analizzare gli ostacoli che incidono sull'intero programma e trovare soluzioni più permanenti a questi problemi sistemici.
"Sto monitorando quegli ostacoli sistemici che vedo colpire due dei miei quattro progetti", afferma Klarich. "Come posso iniziare a rimuoverlo, invece di aspettare che il terzo o il quarto colpisca lo stesso blocco? Sto cercando modelli e tendenze per aiutare a eliminare in modo proattivo alcuni di questi problemi."
Scopri di più sul ruolo di un program manager in questa guida completa alla gestione dei programmi tradizionale.
Altri ruoli nella gestione dei programmi Agile
Oltre al program manager, ci sono una serie di altri ruoli chiave coinvolti nella gestione dei programmi Agile. A seconda del tipo di programma, le organizzazioni potrebbero aver bisogno di individui con esperienza nella generazione di valore, nello sviluppo di software o in altre aree.
Ecco altri ruoli comuni nella gestione dei programmi Agile:
Mentore architetturale principale
Il mentore architetturale principale è generalmente incluso nei team dei programmi di sviluppo software. Questa persona conosce l'architettura generale del software e si occupa di questioni e problemi altamente tecnici e specializzati mentre l'azienda lavora allo sviluppo di nuovo software.
Product Manager
Il product manager si concentra su team di programma che sviluppano prodotti. Questo ruolo comporta la collaborazione a stretto contatto con i program manager, l'assistenza ai responsabili dell'azienda e dei programmi per decidere quali prodotti sviluppare e quando, oltre che la progettazione di piani realizzabili per lo sviluppo del prodotto.
Imprenditori
Un imprenditore potrebbe essere un leader aziendale o un piccolo gruppo di leader aziendali e stakeholder che hanno il compito di controllare che il programma fornisca valore. L'imprenditore deve assicurarsi che gli obiettivi e i risultati dei programmi siano allineati agli obiettivi strategici dell'organizzazione.
Come implementare la gestione dei programmi Agile
Esistono sei fasi fondamentali coinvolte nell'implementazione di successo della gestione dei programmi Agile. Dalla raccolta iniziale di informazioni alla formazione del team agli aggiustamenti iterativi, queste fasi assicurano lo sviluppo di obiettivi di programma chiari e definiscono strutture a favore di un successo continuativo.
Di seguito sono indicate le sei fasi per implementare la gestione dei programmi Agile:
- Raccogli i feedback: il tuo programma potrebbe essere coinvolto nello sviluppo di un prodotto o nella risoluzione di un problema specifico per l'azienda. In entrambi i casi, i responsabili del programma non dovrebbero presumere di avere risposte o soluzioni senza prima parlare e ascoltare le persone che conoscono le problematiche. I responsabili possono iniziare a implementare un programma di successo solo dopo aver sviluppato una profonda comprensione di obiettivi, finalità e problemi.
"Significa ascoltare e capire il contesto per decidere cosa proporre", afferma Klarich. "Troppo spesso ci arroghiamo la presunzione di conoscere la risposta senza avere ancora capito qual è il problema. Dobbiamo capire qual è il problema più importante da risolvere nel processo".
- Crea una struttura appropriata: dopo aver capito i problemi e gli obiettivi del programma, vorrai creare un'ampia struttura di governo. Ciò potrebbe significare l'uso di un framework come SAFe, oppure la creazione di una struttura diversa che si adatti meglio alle tue circostanze.
- Istruisci il tuo team: dopo aver creato la struttura di governo, è importante istruire il team affinché ne capisca il funzionamento e sia d'accordo sulle aspettative generali.
"Istruisci il personale, in modo che tutti comprendano il framework, come lo faremo, come lo eseguiremo", afferma Zucker. "Sono un accanito fan del gradualismo. Inizia ad aggiungere le strutture al momento del bisogno. E piano piano tutto diventa più efficace. Chiedi sempre: come possiamo migliorarlo?"
- Organizza un kick-off meeting: in qualsiasi programma, è di vitale importanza organizzare un kick-off meeting che includa tutti i membri del team, i leader aziendali e gli stakeholder. Durante questi meeting, i program manager lavorano insieme ai membri del team e agli stakeholder per determinare i problemi di base da affrontare, le soluzioni proposte e i metodi per raggiungere gli obiettivi.
Tutti i soggetti coinvolti devono partecipare alla creazione di allineamento e prospettive", afferma Klarich.
- Stabilisci e usa un linguaggio comune: comprendere e usare un linguaggio comune è particolarmente importante per i consulenti esterni che potrebbero aiutare un'azienda con un programma. Tuttavia, lo sviluppo di un linguaggio comune è importante anche per i responsabili e i dipendenti interni al programma, in quanto potrebbero avere esperienze diverse con diversi linguaggi.
Klarich afferma che i consulenti esterni non dovrebbero iniziare il programma dicendo: "Ecco un nuovo vocabolario Agile e, non appena lo imparerete, potremo parlare". Dice invece di ascoltare le persone e usare le loro parole in modo sensato all'interno del programma. "Penso che questi piccoli passi invoglino le persone a dire: "Ho sentito che ti serve aiuto. Voglio essere di aiuto. Parliamone", afferma.
- Coordina le iterazioni del lavoro: i responsabili del programma devono continuare a coordinare tutto il lavoro mentre i team Agile si dedicano ai loro vari progetti. Dopo il kickoff meeting, ciò significa monitorare costantemente lo sprint di ogni team, o lavoro incrementale. E significa anche discussioni e riunioni di confronto, in cui i team si riuniscono per parlare e dimostrare il loro lavoro. Queste dimostrazioni devono includere non solo i progressi su progetti separati, ma anche quelli dell'intero lavoro, e mostrare come tutti i pezzi stiano andando al loro posto per formare la nuova soluzione o prodotto.
Kit di base del modello per la gestione del programmi Agile
Questo kit di base potrà aiutare te e il tuo team a seguire le best practice per la gestione dei programmi Agile. Il kit include un modello di governance del programma, un modello di roadmap Scaled Agile Framework (SAFe), un modello di backlog di prodotto Agile e una scheda di valutazione dell'Agile Maturity.
Modello di piano di governance del programma
Scarica il modello di piano di governance del programma - Microsoft Excel
Questo modello ti aiuterà a pianificare le presentazioni per i comitati di governance e a delineare le linee guida per il processo decisionale sui programmi. Puoi usare il modello anche per creare revisioni delle prestazioni dei programmi.
Modello di backlog di prodotto Agile
Scarica il modello di backlog di prodotto Agile
Microsoft Excel
Un backlog di prodotto Agile aiuta i team a tenere traccia di tutte le funzionalità che gli stakeholder e gli altri vorrebbero che siano incluse in un prodotto. Il backlog di prodotto aiuta inoltre a tenere traccia delle attività su cui i team devono ancora lavorare per completare il prodotto. Questo modello include colonne a discesa in modo che i program manager possano assegnare uno stato a ogni attività.
Modello di scheda di valutazione dell'Agile Maturity
Scarica il modello di scheda di valutazione dell'Agile Maturity
Microsoft Excel
Con questo modello, il tuo team può classificare l'implementazione delle pratiche Agile durante il ciclo di vita dello sviluppo. Il modello può aiutarti a valutare la dinamica del team, l'ambiente, il prodotto e lo svolgimento dei processi Agile, nonché le pratiche di sviluppo Agile appena avviate, definite, misurate o ottimali.
Puoi esaminare e scaricare una vasta gamma di modelli personalizzabili che possono aiutarti nella gestione dei programmi.
Best practice per la gestione dei programmi Agile
Per ottenere risultati ottimali nella gestione dei programmi Agile, gli esperti consigliano di seguire una serie di best practice generali. Queste pratiche, dallo svolgimento di kickoff meeting inclusivi alla creazione di backlog di prodotto accessibili, ti aiuteranno a sviluppare piani efficaci, a coordinare i team e a prendere decisioni consapevoli.
Ecco alcune best practice da ricordare come program manager Agile:
- Condurre un kickoff meeting che includa tutti: i responsabili del programma potrebbero essere tentati di escludere dal kickoff meeting alcuni leader aziendali o stakeholder, pensando di poterli comunque aggiornare sui progressi o coinvolgere in altri meeting. Tuttavia, gli esperti affermano che questo è il modo sbagliato di pensare a un kickoff meeting.
Klarich suggerisce ai responsabili del programma di chiedersi: "C'è un modo per riunire tutti in una stanza per un'ora, invece di andare a parlare con 10 persone per due settimane?". "Dare il via a un programma significa dare un calcio d'inizio deciso, che richiede la presenza e l'impegno di tutti in termini di allineamento generale e prospettive."
Senza la presenza di tutti al kickoff meeting, dice Klarich, "tra i partecipanti potrebbero non esserci le figure informate o autorizzate a prendere decisioni, e quindi ci troviamo di fronte a un Cost of Delay". - Coordinarsi a stretto contatto con tutti i team: l'unico modo per avere successo in un programma Agile è attraverso una comunicazione e un coordinamento continui tra i team. Per molti programmi, soprattutto quelli che riguardano i prodotti, ciò può voler dire il coordinamento attraverso ciò che gli esperti considerano i cinque livelli di pianificazione di Agile.
Ecco i cinque livelli di pianificazione in Agile:- Visione del prodotto: la visione del prodotto o la dichiarazione di visione del prodotto è l'essenza generale del prodotto, quali problemi risolve e perché.
- Roadmap del prodotto: la roadmap del prodotto è una descrizione generale di come il tuo team svilupperà il prodotto.
- Piano di rilascio: il piano di rilascio indica quando la tua azienda intende rendere disponibili al pubblico i componenti o le versioni del prodotto.
- Piano di iterazione: il piano di iterazione indica in che modo team specifici prevedono di svolgere il lavoro richiesto all'interno di un'iterazione o di uno sprint.
- Impegno quotidiano: l'impegno quotidiano è un incontro giornaliero usato dai team Agile per discutere progressi e problemi.
"Quando osservi un programma che cerca di rendere disponibili più cose insieme", afferma Klarich, dovresti chiederti: "Stiamo coordinando il tutto in un unico livello rilasciabile? Qual è la roadmap? Cosa stiamo facendo in questa porzione di tre mesi rispetto alla prossima porzione di tre mesi?"
- Apportare modifiche quando necessario: la pianificazione continua significa che i team saranno in grado di riconoscere rapidamente i problemi e aggiustare la rotta a seconda delle necessità.
"Il processo di pianificazione continua diventa ancora più importante", afferma Klarich, "guardando, adattando e chiedendosi continuamente: "Stiamo creando valore? Dobbiamo tornare sui nostri passi? Abbiamo indicatori e misure da monitorare lungo il percorso? Ha il valore che pensavamo? Possiamo cambiare qualcosa per aumentarne il valore? Tornare sui nostri passi? O interromperlo? Penso che nella gestione dei programmi, questi problemi diventino molto più rilevanti per monitorare e convincere le persone ad allinearsi. Assicurati di considerare varie prospettive così da rendere preziose queste decisioni". - Considerare il contesto dell'organizzazione: alcune strutture, piani e idee funzioneranno per un'organizzazione ma non per un'altra. Man mano che porti avanti il programma, considera il contesto della tua organizzazione, comprese dimensioni, settore e le opinioni dei leader.
"Potrei voler fare le cose in modo leggermente diverso", afferma Klarich, "ma qual è il contesto dell'organizzazione e i vincoli? In che misura sono avversi al rischio? Quali sono i loro requisiti di conformità?"
Alcune di queste realtà possono significare una maggiore resistenza al processo Agile, afferma Klarich. In questi casi, si potrebbe sviluppare un programma non interamente Agile, ma con componenti importanti di Agile.
"Se qualcuno dicesse, 'questa non è la gestione dei programmi Agile', potrei dover dire, 'hai ragione", osserva Klarich, "ma stiamo procedendo a tentativi per il contesto che abbiamo. Questa è la parte che ritengo debba essere ricordata. Non è mai uguale per tutti. E nemmeno per la maggioranza. Devo tenere conto di questo contesto mentre lo sto facendo." - Trasferire ai piani bassi le decisioni importanti: le persone che prendono decisioni importanti devono essere le stesse che conoscono nei dettagli le varie problematiche. I program manager Agile dovrebbero incoraggiare e autorizzare le persone che non sono ai vertici di un'organizzazione, o anche del programma, a prendere decisioni che lo portino avanti.
"Si tratta di cercare di trascendere i modelli prestabiliti di una metodologia di programma tradizionale, ossia una rigida mentalità di comando e controllo", afferma Klarich. "Sono assolutamente convinta di voler trasferire il potere decisionale ai livelli più bassi dell'organizzazione e coinvolgere l'intero team, quando possibile. Più riesco a coinvolgere le persone che stanno lavorando in questo senso, migliore è l'impegno che ho da loro. Quando non si fa qualcosa per loro, ma con loro, ottengo i risultati migliori". - Creare un backlog di programma accessibile: nella gestione dei programmi Agile, un backlog di programma è l'elenco di tutto il lavoro imminente che dovrà essere svolto per portare avanti gli obiettivi o il prodotto del programma. I backlog di programma sono particolarmente comuni nello sviluppo dei prodotti.
Gli esperti affermano che è particolarmente importante che il backlog del programma sia facilmente accessibile e trasparente per tutti i soggetti coinvolti nel programma. "Quali sono le cose che vogliamo fare a livello di programma in modo che tutti sappiano cosa sta succedendo?" afferma Zucker. "Se abbiamo questa trasparenza, è perfettamente chiaro dove stiamo andando e cosa vogliamo fare". - Concentrarsi sul valore per il cliente: i responsabili della gestione dei programmi Agile devono sempre concentrarsi su ciò che i clienti dicono di volere in un prodotto o servizio. Quindi dovrebbero assicurarsi che il programma funzioni per consegnarlo nel modo più rapido ed efficiente possibile.
- Abbracciare il cambiamento: molti responsabili dei programmi tradizionali temono il potenziale di cambiamento perché credono che interromperà i progressi nei loro programmi causando ritardi o conflitti. Il concetto complessivo di Agile non cerca di evitare il cambiamento, ma lo abbraccia, e i program manager di Agile dovrebbero fare lo stesso.
Vantaggi della gestione dei programmi Agile
L'adozione di strategie di gestione dei programmi Agile può avvantaggiare la tua organizzazione o il tuo programma in diversi modi. I processi Agile aiutano a immettere in anticipo i prodotti giusti nel mercato e consentono alla tua azienda di capire più rapidamente e accuratamente le reazioni dei clienti al tuo prodotto.
Ecco alcuni dei vantaggi comuni che si noteranno quando si implementano le tecniche di gestione dei programmi Agile:
- I risultati aziendali migliorano: il processo di gestione dei programmi Agile riduce i rischi, aiutandoti a evitare ingenti investimenti in prodotti che non funzionano o che il mercato non vuole. Meno rischio si traduce in profitti più alti e, nel complesso, risultati migliori.
- I prodotti validi entrano prima nel mercato: la gestione dei programmi Agile consente a un'azienda di far entrare un buon prodotto sul mercato molto prima rispetto alla gestione dei programmi tradizionale. Il processo Agile incoraggia le aziende a implementare le prime versioni dei prodotti per raccogliere le reazioni e il feedback dei clienti. In questo modo, i team di programma Agile possono modificare il prodotto per migliorarlo ancora prima che venga immesso sul mercato.
- La qualità complessiva migliora: la natura iterativa del lavoro nel processo Agile, insieme al costante accorpamento di feedback dei clienti, migliora la qualità dei prodotti.
"Nel complesso, si ottiene una qualità migliore perché le persone lavorano insieme e i problemi vengono individuati prima piuttosto che dopo", afferma Klarich, "e si è quindi in grado di risolverli e affrontarli". - I prodotti e i servizi possono rispondere rapidamente ai cambiamenti del mercato: il processo di gestione dei programmi Agile incoraggia la raccolta continua di feedback dei clienti. Cercando il feedback dei clienti, i team Agile hanno sempre un'idea precisa di ciò che i clienti desiderano e di come queste esigenze e desideri possono cambiare.
"Si ottengono informazioni per decidere al meglio e avere un quadro più particolareggiato", afferma Klarich, "in modo da poter rispondere ai cambiamenti del mercato". - Gli sprechi si riducono: il processo significa che stai offrendo prodotti di alta qualità, rapidamente, e non sprecando tempo con funzionalità che non lavorano o che non aggiungono valore per i clienti.
"Stai offrendo solo i prodotti con il valore più alto, con il feedback maggiore e più frequente dei clienti," afferma Zucker.
Problemi con la gestione dei programmi Agile
Sebbene ci siano molti vantaggi nella gestione dei programmi Agile, questa metodologia presenta anche degli svantaggi. Se le organizzazioni non riescono a impegnarsi nel processo Agile o non coordinano correttamente il lavoro, le tecniche di gestione dei programmi Agile potrebbero non avere lo stesso successo.
Queste sono alcune sfide che i program manager potrebbero affrontare quando cercano di adottare la metodologia di gestione dei programmi Agile:
- Integrazione del lavoro impropria: affinché la gestione dei programmi Agile funzioni, le organizzazioni devono integrare continuamente le proprie tecniche Agile nel lavoro di programma. I team devono capire cosa stanno facendo gli altri team e continuare a integrare e coordinare il lavoro.
- Mancanza di impegno: alcune organizzazioni cercano di implementare la gestione dei programmi Agile, ma non hanno l'impegno dell'intera organizzazione sul processo Agile. In questi casi, le organizzazioni potrebbero consentire ad alcuni team di utilizzare Agile, ma poi di usare tecniche di gestione dei programmi più tradizionali.
"Non hanno ottenuto una vera agilità aziendale," afferma Klarich, "quindi tende a esserci un livello di gestione a cascata sui progetti Agile".
"Non entrano nell'ordine di idee", afferma Zucker. "Il 90% delle volte, la tecnica Agile viene annientata da questioni culturali e organizzative". - Mancanza di investimenti in cambiamenti organizzativi: le organizzazioni che desiderano utilizzare Agile per i propri programmi spesso hanno bisogno di cambiamenti significativi, il che significa investire nella gestione dei cambiamenti in tutta l'organizzazione. Spesso i leader dell'organizzazione esitano a fare investimenti di questa portata e potrebbero adottare delle mezze misure o rifiutare il sostegno necessario.
"C'è una mancanza di allineamento da un'organizzazione gerarchica, una mancanza di consenso", afferma Klarich. "Qualcuno a un livello ha detto: 'Andate e fatelo', ma i livelli sottostanti non capiscono che impatto avrà per loro quel cambiamento. È una mancanza di gestione del cambiamento. Qualcuno ha appena avuto un'idea e ha detto: "Ehi, ho sentito che sarebbe meglio, facciamolo", ma non capisce cosa cambierà o che impatto avrà". - Aspettative non realistiche: alcune organizzazioni ritengono che la gestione dei programmi Agile risolverà rapidamente una vasta gamma di problemi di prodotto e organizzativi. Per vedere i vantaggi della gestione dei programmi Agile, tuttavia, le organizzazioni devono investire molto tempo ed energia.
Klarich afferma che alcune organizzazioni ritengono che l'adozione di tecniche di gestione dei programmi Agile sia una soluzione rapida a problemi di grande entità. Klarich descrive la forma mentis: "Questo programma è indietro di due anni. Se si passa ad Agile, tutto si risolverà." Non è così. Due anni indietro sono due anni indietro. Non si possono risolvere da un giorno all'altro".
Assumere il controllo dei progetti Agile con Smartsheet
Dalla semplice gestione delle attività e pianificazione dei progetti, alla complessa gestione delle risorse e del portfolio, Smartsheet ti aiuta a migliorare la collaborazione e ad aumentare la velocità del lavoro, consentendoti di ottenere di più. La piattaforma Smartsheet semplifica la pianificazione, l'acquisizione, la gestione e la creazione di report sul lavoro da qualsiasi luogo, aiutando il tuo team a essere più efficace e ottenere di più. Crea report sulle metriche chiave e ottieni visibilità in tempo reale sul lavoro mentre accade con report di riepilogo, pannelli di controllo e flussi di lavoro automatizzati creati per mantenere il tuo team connesso e informato. Quando i team hanno chiarezza sul lavoro da svolgere, possono ottenere maggiori risultati in meno tempo. Prova Smartsheet gratuitamente, oggi.