Disciplined Agile e Devops: definire il proprio WoW

I benefici del DevOps e del Disciplined Agile in un contesto di forte transizione tecnologica

Contesto

In un periodo di forte trasformazione digitale, il cliente, un importante player italiano in ambito assicurativo, ha avviato un progetto finalizzato al raggiungimento di due obiettivi primari, atti a migliorare l’efficienza dei propri processi di business:
- Availability 24/7 dei servizi assicurativi
- Miglioramento performance
La metodologia di progetto scelta per ridurre il time-to-market ed ottenere rapidamente i benefici derivanti dalle implementazioni è l’Agile, condotto secondo i principi del framework Scrum.

Challenge

In qualità di principale fornitore di competenze, la business unit Claims & Motor di Blue Reply è stata chiamata a comporre un team di progetto definito con la giusta commistione di esperienza e skill, definendo un gruppo cross-funzionale, auto-organizzato e focalizzato sugli obiettivi, in grado di poter raggiungere in autonomia i goal di Sprint e Release, assicurando il delivery dei MVP definiti con il business.

Tra i principali compiti del team di progetto:
- Minimizzare gli impatti nei processi core;
- Reverse engineering del sistema di gestione polizze Motor, in favore di una transizione tecnologica a infrastruttura Docker garantendo isofunzionalità;
- Progettazione della nuova struttura architetturale;
- Transizione dei processi di release AS-IS in favore della metodologia DevOps
- Definizione delle nuove linee guida architetturali e funzionali da condividere con gli stakeholder;
- Adozione delle tecnologie, dei tool e dei modelli di lavoro più idonei al soddisfacimento degli obiettivi del progetto;
- Necessità di far coesistere una profonda pianificazione upfront con il modello di pianificazione iterativa dettata dalla metodologia Scrum.

Dovendo intervenire sui processi core del cliente, oltre a garantire l’attesa evoluzione tecnologica, il gruppo di lavoro ha dovuto studiare un piano di rollout e rollback trasparente agli utilizzatori dell’applicativo, così da evitare interruzioni e anomalie durante il normale svolgimento delle attività quotidiane.

Modello di lavoro: i principi

Il Development Team ha definito alcuni principi metodologici su cui fare leva per raggiungere gli obiettivi progettuali. I key factor presentati di seguito sono stati raffinati durante lo svolgimento del progetto stesso, favorendo la flessibilità del modello di lavoro assecondando la prioritizzazione degli obiettivi, anticipando i rischi e consolidando ruoli e responsabilità.

Discliplined Agile

Definizione di una WOW (Way of Working) partendo dai principi del framework Scrum, al fine di affrontare con maggiore efficacia le challenge di progetto.

Microservizi

Adozione di un modello architetturale basato su microservizi Docker, puntando sul disaccoppiamento delle logiche funzionali e sull’interoperabilità delle componenti.

Devops

Approccio al software development secondo i principi del DevOps, in favore dei modelli CI/CD: Continuous Integration, Continuous Deploy, Continuous Delivery.

Quality Assurance

Definizione di una test strategy volta a monitorare la code quality e favorire la test automation su incrementi di prodotto tra i vari ambienti (dal collaudo alla Produzione).

Rollout

Il modello di rilascio iterativo a incrementi di prodotto è stato affiancato ad un sistema di attivazione progressiva delle feature su tutta la rete assicurativa del cliente, adattato all’architettura microservizi, sfruttando i principi DevOps.

Il WoW

Partendo dai principi individuati sulla base degli obiettivi di progetto, lo Scrum Team ha personalizzato il proprio modello di lavoro definendo la sua Way of Working, attraverso 4 punti chiave.