Un portafoglio di metodologie per la gestione dei progetti agili di un importante istituto bancario

L’App Assicurazioni si inserisce nella costellazione delle app della banca. Lo scopo è fornire informazioni al cliente relativamente a tutti i prodotti assicurativi acquistati, semplificare e velocizzare il Servizio Clienti, dare autonomia nella gestione delle operazioni e fruizione dei servizi, creare momenti di ingaggio personalizzati.

Soluzione

Per lo sviluppo della app è stato applicato un framework Agile. Tuttavia la modalità di lavoro più tradizionale, di tipo waterfall, è stata mantenuta per alcuni progetti collegati a quello principale.

  • Il framework Agile usato consiste in un portafoglio di metodologie per la gestione dei progetti agili della banca e ha l’obiettivo di garantire un modo di lavorare uniforme, completo, scalabile e sostenibile.
  • Il framework si mappa sull’entità «progetto», ovvero un’attività finalizzata a trasformare una proposta in un prodotto consistente.

Gli stream waterfall sono riferiti ai contributi di progetti correlati, gestiti appunto in modalità più tradizionale. Il framework prevede una fase di discovery in cui si pongono le basi della visione progettuale, si identificano i rischi, prende forma la soluzione e si definisce la strategia di realizzazione. Gli output sono molteplici: vision, roadmap, rischi, release plan, e strategia di test.

Segue una fase di inception di circa una settimana. L’inception è un momento propedeutico per l’inizio della release in cui si definisce il team, si identifica una macrosoluzione, si definiscono gli sprint. Alla fine della fase di inception viene formato il team di progetto ed è disponibile il product backlog che permette l’inizio della prima iterazione della release in partenza. La metodologia prevede dei tavoli agili di progetto di circa otto persone.  I ruoli principali coinvolti sono: product owner, scrum master, digital business partner manager, it manager, test manager, referente sviluppo, referente test utente e designer.

Per l’App Assicurazioni è stato formato un tavolo agile per la scrittura dei requisiti e un team per lo sviluppo della app. Il tavolo dei requisiti si occupa di individuare i requisiti in sprint di due settimane, che vengono poi sviluppati nello sprint successivo dal team di sviluppo e successivamente testati dal team di system test. Le cerimonie previste sono: il daily meeting, la demo, il planning e la retrospettiva. L’attività è stata guidata da remoto tramite gli strumenti di videochiamata e condivisione schermo e un tool dedicato alla definizione delle user stories. È stata utilizzata una bacheca Trello per il daily meeting organizzata come kanban board, mentre per la retrospettiva è stato utilizzato Linoit, un ambiente per organizzare file, contenuti multimediali, risorse ecc.

Per quanto riguarda la parte di test, le fasi previste sono due: il system test, volto a testare particolari proprietà dell’applicativo completo, e lo UAT (user acceptance test). In questa fase si sottopone il prodotto a un campione di utenti finali, prima di rilasciare in produzione. In un periodo di 2 settimane (sprint x), il tavolo Agile lavora sul backlog refinement dello sprint x+1, il team di sviluppo lavora su sviluppo, unit test e integrazione dello sprint x mentre il team di test su attività di system test delle user stories dello sprint x-1. Durante il planning, il team di sviluppo stima le user stories scritte dal tavolo agile e pianifica lo sprint.

Vantaggi

I vantaggi di questa metodologia sono molteplici:

  • Viene misurato l’andamento del progetto attraverso rilasci incrementali concreti presentati agli stakeholders durante la demo, momento in cui vengono inoltre collezionati i feedback relativi al lavoro presentato.  Ad intervalli regolari si analizza il lavoro al fine di diventare più efficaci.
  • Il team si auto-organizza per produrre risultati migliori in termini di modalità di lavoro e prodotto finale.
  • Il metodo permette flessibilità per andare incontro alle diverse esigenze dei team.
  • Il framework agile consente di coordinarsi con tutti gli attori coinvolti nel progetto in atto, grazie alla presenza al tavolo dei requisiti di rappresentati di altri team.
  • Permette l’organizzazione di attività correlate come ad esempio attività che favoriscono l’integrazione delle user stories della release 2 all’interno della app e attività periodiche di condivisione perimetro per condividere i principali elementi legati alla brand identity della app stessa.