Agile su larga scala e gestione del rischio: Una panoramica

Scritto da: Emily Himes
9/18/2024

Tempo di lettura: 7 minutes

La gestione del rischio nello sviluppo agile del software può essere un argomento complesso per la maggior parte delle organizzazioni, soprattutto a livello aziendale. Tuttavia, incorporando pratiche strutturate di gestione del rischio in ogni fase dei processi Agile, utilizzando framework scalabili e impiegando strumenti che supportano la trasparenza e la collaborazione, le organizzazioni possono iniziare ad affrontare queste sfide prima ancora che si presentino.

I vari framework per l'Agile in scala (tra cui Disciplined Agile Delivery, Scrum su larga scala e Scaled Agile Framework®) consentono alle grandi organizzazioni di aumentare la velocità e la produttività dello sviluppo, di gestire meglio l'incertezza e di ridurre i rischi nell'intero processo. Agile offre alcuni ottimi modi per incorporare organicamente le pratiche di gestione del rischio nelle varie fasi di sviluppo del prodotto. Questi vantaggi inducono molti professionisti a ritenere che non sia necessario un quadro formale di gestione del rischio e che Agile sia sufficiente da solo. Tuttavia, per gestire correttamente il rischio, le organizzazioni devono implementare un Scaled Agile Framework per la gestione del rischio in ogni fase del ciclo di sviluppo del prodotto. Senza questo approccio strutturato, i team di sviluppo Agile si espongono a una serie di rischi imprevisti, mettendo potenzialmente a rischio il successo dei loro progetti e minando l'agilità che si sforzano di mantenere.

Ad esempio, immaginiamo un team che sviluppa un'applicazione sanitaria che raccoglie dati sensibili dei pazienti. Seguendo le pratiche Agile, il team si concentra sull'iterazione rapida e sulla consegna continua, spingendo rapidamente nuove funzionalità per soddisfare le richieste del mercato. Tuttavia, in assenza di salvaguardie formali per la gestione del rischio durante l'intero ciclo di sviluppo, potrebbe trascurare il potenziale di violazione dei dati, supponendo che il processo Agile sia in grado di individuare qualsiasi problema. Quando una vulnerabilità critica passa inosservata, l'applicazione viene lanciata con una falla che compromette le informazioni dei pazienti. Questo danneggia la reputazione dell'azienda e può portare a gravi ripercussioni finanziarie. Le pratiche agili favoriscono un rapido adattamento, ma non forniscono intrinsecamente le protezioni sistemiche e approfondite di gestione del rischio necessarie per evitare errori costosi.

Sebbene le pratiche Agile promuovano naturalmente una gestione iterativa del rischio, i team di sviluppo software non dovrebbero commettere l'errore di presumere di aver affrontato il rischio in modo sufficiente. Dovrebbero invece basarsi sui metodi Agile esistenti per incorporare un quadro strutturato di gestione del rischio, che utilizzi soluzioni Agile progettate per identificare e mitigare i rischi.

Che cos'è la consegna di un progetto Agile?

La consegna di progetti agili - il processo di completamento dei progetti attraverso cicli iterativi - enfatizza la flessibilità, il feedback continuo e la pianificazione adattiva. Suddividendo il lavoro in piccoli intervalli gestibili, i team possono consegnare frequentemente gli aspetti funzionali di un progetto e adattarsi in base agli input degli stakeholder e all'evoluzione dei requisiti. Ad esempio, un'azienda di software che utilizza i processi Agile può rilasciare rapidamente una nuova funzionalità dell'applicazione in piccoli incrementi, consentendo di raccogliere il feedback degli utenti in anticipo e frequentemente. Questo approccio consente al team di perfezionare e migliorare la funzionalità in base all'utilizzo reale, portando al successo del lancio del prodotto. Senza l'utilizzo di un progetto Agile, l'azienda potrebbe sviluppare un'intera funzione dell'app per molti mesi (o anni) senza il feedback degli utenti, per poi scoprire problemi importanti o esigenze non soddisfatte dopo il lancio del prodotto, con conseguenti costosi ritocchi e ritardi. Concentrandosi sulla flessibilità e sul miglioramento continuo, Agile può contribuire a mitigare rischi come questi, consentendo ai team di identificare e ridurre i potenziali problemi prima ancora che emergano.

Che cos'è la gestione del rischio Agile?

La gestione del rischio in Agile è il processo continuo di identificazione, valutazione e gestione dei rischi nel corso di ogni iterazione o sprint, assicurando che i potenziali problemi siano mitigati in anticipo e non ostacolino il processo del progetto. Ad alto livello, la chiave per incorporare efficacemente i processi di gestione del rischio in Agile è semplice. Iniziare a identificare, valutare e monitorare i rischi sia a livello di progetto che di iterazione. In questo modo, i team possono mitigare in modo proattivo i rischi prima ancora che si presentino, anziché affidarsi alle tradizionali valutazioni dei rischi a fine progetto.

Qual è il ruolo della gestione del rischio nei progetti Agile?

I progetti agili sono incentrati sull'adattabilità e sul miglioramento continuo, ma cosa succede quando emergono delle vulnerabilità? Una solida gestione del rischio garantisce che i potenziali ostacoli vengano identificati e affrontati nelle prime fasi del processo di sviluppo, prima che diventino critici.

Processo agile e gestione del rischio

Per capire come implementare i processi Agile e di gestione del rischio su larga scala, è importante innanzitutto capire dove implementare questi sforzi. La gestione del rischio deve essere incorporata all'inizio del progetto, durante tutto il processo di sviluppo e alla fine di ogni progetto. Esploriamo le singole fasi in cui la gestione del rischio Agile è fondamentale:

Identificazione del rischio

Dopo che le parti interessate hanno determinato un elenco esaustivo dei requisiti del progetto, è il momento di identificare anche i rischi ad essi associati. Ci sono potenziali sfide o limitazioni tecniche che potrebbero sorgere? Ci sono interdipendenze con strumenti o fornitori di terze parti che potrebbero introdurre rischi? In che modo le modifiche all'ambito del progetto o ai requisiti potrebbero avere un impatto sulla tempistica o sul budget? È importante analizzare ogni requisito per scoprire le potenziali minacce, poiché tutti i tipi di fattori apparentemente non correlati possono influire sul successo di un progetto.

Pianificazione del rischio

Una volta identificati tutti i rischi noti, gli stakeholder devono creare un piano d'azione (o di emergenza) per mitigarli. Quindi, creano un Registro dei rischi del progetto, che viene aggiornato nel corso del progetto, per fungere da riferimento centrale per la gestione dei rischi e garantire che vengano monitorati e affrontati in modo coerente.

Monitoraggio del rischio

Il monitoraggio dei rischi avviene durante tutto il progetto. Si tratta di tenere d'occhio i rischi noti e quelli nuovi e di aggiornare di conseguenza il Registro dei rischi del progetto.

Revisione del rischio

Una volta aggiornato il Registro dei rischi e completato il progetto, è il momento di valutare come sono stati gestiti i rischi per sviluppare le lezioni apprese e le migliori pratiche per il futuro.

Agile e gestione del rischio a livello iterativo

Una volta stabilite le pratiche di gestione del rischio a livello di progetto, è fondamentale incorporarle in ogni iterazione o ciclo Scrum, indipendentemente dal framework Agile utilizzato. Le riunioni di pianificazione dello sprint, lo scrum giornaliero, le revisioni dello sprint e le retrospettive dello sprint sono tutte fasi chiave in cui i rischi devono essere valutati e gestiti in modo incrementale.

Le organizzazioni più grandi hanno iniziato ad adottare framework come LeSS (Large Scale Scrum), DAD (Disciplined Agile Delivery) e SAFe (Scaled Agile Framework) per sostenere la popolarità dei modelli di processo Agile su scala aziendale.

Mentre metodi di gestione dei progetti come Scrum e Kanban possono funzionare a meraviglia per singoli team o piccole aziende, scalare questi metodi per gestire il rischio tra più team Agile che lavorano allo stesso progetto può essere impegnativo. La trasparenza e la responsabilità che Agile promuove diventano più difficili da mantenere in ambienti più grandi e complessi. Tuttavia, con gli strumenti e le strategie giuste, queste sfide possono essere trasformate in opportunità per una collaborazione più forte e una gestione del rischio più efficace in tutta l'organizzazione.

Che cos'è la gestione del rischio ROAM nei progetti Agile?

Il modello di gestione del rischio ROAM è un modo collaborativo e proattivo per implementare Agile e la gestione del rischio su larga scala nelle grandi organizzazioni. ROAM è l'acronimo di Resolve, Own, Accept e Mitigate, quattro opzioni per affrontare i rischi potenziali e gestirli correttamente in qualsiasi modello di sviluppo software Agile su scala. I rischi identificati vengono assegnati a una delle seguenti categorie:

Resolved (Risolto)

Il rischio non è più considerato una minaccia e non richiede ulteriori azioni (se non la documentazione delle azioni intraprese per risolverlo).

Owned (Assunti)

Se il rischio non può essere risolto in una riunione, viene assegnato a un membro del team il compito di "possedere" o gestire il rischio e di assicurarne la corretta gestione.

Accepted (Accettato)

Se il rischio non può essere gestito o neutralizzato, il team deve prevedere delle contingenze per gestirlo caso per caso.

Mitigated (Attenuato)

Infine, viene elaborato un piano per ridurre la minaccia del rischio.

Una volta classificati i rischi nelle categorie sopra descritte, il team vota su quali sono i rischi più importanti su cui lavorare. Quelli che rientrano nelle prime tre categorie (Risolti, Accettati o Mitigati) vengono affrontati durante la sessione di pianificazione del Program Increment (PI). Al contrario, quelli che rientrano nella categoria "Owned" richiedono tempi leggermente più lunghi per essere risolti.

Naturalmente, vengono continuamente scoperti nuovi rischi e il modello ROAM viene utilizzato per gestirli man mano che si presentano. Molte organizzazioni che utilizzano gli strumenti Kanban aziendali sfruttano lo stesso metodo per organizzare i loro sforzi di gestione del rischio, creando una scheda ROAM durante la fase di pianificazione del PI. È qui che diventa essenziale disporre degli strumenti giusti per la visualizzazione, la trasparenza e la collaborazione.

Una gestione collaborativa e fluida di Agile e dei rischi è possibile

L'approccio è completo, ma l'esecuzione di un modello ROAM completamente scalato può essere una sfida scoraggiante. Per mettere in pratica questi metodi, gli sviluppatori si affidano a soluzioni di Application Lifecycle Management (ALM) che offrono strutture e funzionalità tali da rendere la gestione collaborativa del rischio realizzabile anche su scala aziendale.

Gli strumenti ALM integrati supportano la gestione del rischio grazie alla creazione di una piattaforma di sviluppo centrale e condivisa da tutte le parti interessate. Gestendo e fornendo informazioni su tutte le fasi di realizzazione del prodotto, strumenti ALM come Codebeamer aiutano a incorporare una gestione del rischio Agile matura con processi scalabili in tutta l'azienda.

Codebeamer dispone di funzionalità avanzate di gestione del rischio, di una lavagna Kanban flessibile che facilita la gestione delle sessioni ROAM e di tracker dei rischi personalizzabili che possono essere adattati alle esigenze specifiche. Questi elementi garantiscono un'adeguata documentazione dei rischi con alti livelli di tracciabilità e copertura.

Identificando i rischi nelle prime fasi del processo, le organizzazioni possono rimanere vigili e ridurne l'impatto o attenuarli del tutto. Ciò consente una rapida conformità alle normative sulla gestione del rischio come ISO 14971 e IEC 60812, nonché ai requisiti di sicurezza come ISO 26262, IEC 61508, IEC 62304, IEC 60601 e DO-178C. Man mano che il software diventa più complesso, queste normative sono più difficili da gestire. La conformità non è solo un altro requisito da spuntare, ma un imperativo strategico che consente all'azienda di competere in un mercato sempre più competitivo. L'adozione di una strategia completa di gestione del rischio Agile non solo salvaguarda i vostri progetti, ma consente alla vostra organizzazione di rimanere innovativa e competitiva in un settore in rapida evoluzione.

Agile è diventata la metodologia di sviluppo de facto per il mondo del software, ma l'adozione del processo su scala aziendale può essere impegnativa. La semplice pratica dei metodi di sviluppo Agile non è sufficiente per assicurarsi di non trascurare o introdurre rischi costosi nei processi. È necessario invece considerare Agile come una base potente, che può essere ampliata con pratiche specifiche per la gestione dei rischi. La buona notizia è che esistono potenti soluzioni software per garantire che i vostri sforzi di gestione del rischio siano esaustivi e di successo.

Ottenere una solida gestione del rischio

Leggete il nostro ultimo eBook per scoprire come preparare il vostro team a una transizione di successo verso i processi di sviluppo Agile scalati ed evitare le nove sfide più grandi quando si tratta di implementazione. Leggi ora
Tags: Application Lifecycle Management (ALM) Codebeamer

Informazioni sull'autore

Emily Himes Emily is a Content Marketing Specialist on PTC’s Commercial Marketing team based in Boston, MA. Her writing supports a variety of PTC’s product and service offerings.