33
Template designed by Disciplined Agile Delivery e Visual Studio Online Agile@Scale series Felice Pescatore felicepescatore.it @felicepescatore

DAD e Visual Studio Online

Embed Size (px)

Citation preview

Template designed by

Disciplined Agile Delivery e Visual Studio OnlineAgile@Scale series

Felice Pescatore

felicepescatore.it@felicepescatore

Chi sono

felicepescatore.it

@felicepescatore

Felice PescatoreAgile@Scale Italy Group

getlatestversion

Agenda

Holistic Vision

Agile & Water-scrum-Fall

Disciplined Agile Delivery

DAD & Visual Studio Online

Demo

Recap

Riferimenti e Risorse

Holistic Vision

Holistic Vision

Be Agile is a Must!

L’ Agile migliora la collaborazione all’interno

del Team e quella con l’esterno, puntando a

creare il massimo Valore possibile per gli

stakeholder.

I Valori e i Principi, dovrebbero essere sempre

utilizzati, in qualsiasi contesto produttivo, a

differenza di una Metodologia specifica che può

essere più o meno adatta.

Reality is complex… software is complex!

• Se siamo in presenza di sistemi Complessi,

le metodologie Agili sono la soluzione ideale;

• Se siamo in presenza di sistemi Semplici o

Complicati, possiamo ricorrere a

metodologie tradizionali, perché il dominio di

riferimento è noto e la variabilità è

estremamente bassa. Ad esempio, per i

sistemi Complicati, si può pensare di utilizzare

il modello a Spirale, ma non è da escludere lo

stesso Waterfall;

• Se siamo in presenza del Caos la scelta

migliore è, probabilmente, quella di abortire il

progetto!

Agile is a reality, but…

… a lot use Water-scrum-Fall

“We believe over 90% of all companies claiming to have adopted agile methodologies, have only transformed their development teams, minimizing their

overall return…thus, our term “Water-Scrum-Fall”. [Dave West, Forrester Research 2011]

Water scrum Fall

Why AgileFo

nte

: 9TH

AN

NU

AL

Sta

te o

f A

gile

™ S

urv

ey -

©2015 V

ers

ionO

ne,

Inc.

All

rights

rese

rved

Agile Umbrella

RUP (120+)

XP (13)

Scrum (9)

Kanban (3)

Do Whatever!! (0)

More Prescriptive

More Adaptive

RUP has over 30 roles, over 20 activities, and over 70 artifacts

more rules to follow

fewer rules to follow

DSDM Atern

Agile Unified Process (AUP)

Feature Driven Development

Process Approaches (still agile)

SCRUM

Crystal

eXtreme Programming (XP)

Lightweight Approaches

Agile

Risk

Prob

lem

Risk Problem

Disciplined Agile Delivery Scaled Agile Framework@Scale@Scale

Agile@Scale

«Scaling», significa aiutare l’intera

azienda nell‘adozione dei Valori e dei

Principi Agili, con un occhio attento

anche al mondo Lean.E’ molto difficile «scalare» se non si ha già maturato una forte competenza dell’Agile a livello di Team (Team Level)

Agile@Scale

Agile

DAD

@Scale

• Focalizzarsi sugli obiettivi;• Value driven lifecycle;• Team Self-organized;• Prescrittivo;• Project Aware.

• Focus sul Delivery;• Risk & Value driven

lifecycle;• Team Self-organized con

opportuna governance;• Goal driven;• Enterprise Aware.

• Grandi Team;• Team distribuiti

geograficamente;• Complessità del Dominio;• Complessità Tecnica;• Distribuzione organizzativa.

Disciplined Agile DeliveryDisciplined Agile Delivery, DAD

DISCIPLINED AGILE DELIVERY

Disciplined Agile Delivery

Disciplined Agile Delivery (DAD) è un framework per il delivery di soluzioni con

una gestione del processo End-to-End. In particolare DAD si focalizza su:

• People-­‐first,­i processi sono guidati dalle persone e non viceversa;• Goal-­‐driven, azioni focalizzate su obiettivi mirati;• Hybrid­agile,­sfruttare le pratiche derivati da metodologie diverse;• Learning-­‐oriented,­apprendimento continuo;• Full­delivery­lifecycle,­dall’idea alla dismissione;• Solution­focused,­delivery di soluzione ready-to-use;• Risk-­‐value­lifecycle,­gestione del rischio;• Enterprise­aware,­aderente al cotesto aziendale.

DAD, an Hybrid Framework

DAD prende «in prestito» strategie e pratiche comprovante, fornendo un framework

consistente e robusto per affrontare il delivery di soluzioni complesse.

Geographic Distribution Team SizeOrganizational

Distribution

Compliance Domain Complexity Technical Complexity

SAFe DevOps …. and more!Outside In Dev.

Traditional Agile Data XP Unified Process

Agile Modeling Scrum Kanban Lean

Scale with DAD

I punti cardine attraverso cui si snoda l’adozione di Disciplined Agile Delivery

sono:1. Focalizzarsi sulla Soluzione e non sul software;

2. Adottare un ciclo completo di delivery;

3. Padroneggiare i goal che sottendono il processo;

4. Adattare il processo allo specifico contesto aziendale;

5. Promuovere la consapevolezza aziendale;

6. Adottare una governance in chiave Lean.

Scale with DAD

DAD fa emergere come il delivery di una soluzione vada ben al di là dell’esclusivo sviluppo del software:

• Aspetti relativi all’hardware;• Documentazione di supporto;• Cambio dei processi di business, a supporto e inerenti l’adozione della

soluzione;• Evoluzione della struttura organizzativa;• Customer Care e Customer Satisfaction.

Focalizzarsi sulla Soluzione e non sul software

Il supporto di tali attività passa attraverso una serie di Ruoli specifici coinvolti

nell’intero ciclo di delivery della soluzione.

Scale with DAD: Primary & Secondary Roles

Team Lead, esperto di processi Agili, mantiene il Team

concentrato sul raggiungimento degli obiettivi, rimuovendo gli

impedimenti;

Product Owner, governance della Vision e delle funzionalità della

soluzione;

Architecture Owner, indirizza le scelte architetturali e

tecnologiche, con l’obiettivo di mitigare i rischi primari annessi;

Team Member, formato da professionisti con skill cross- functional

a cui viene demandata la realizzazione della soluzione;

Stakeholder, clienti e stakeholder interni/esterni, come: Project

Sponsor, DevOps, architecture specialists, database groups,

amministrativi, ecc..

Secondary Roles, Specialist, Indipendent Tester, Domain Expert,

Technical Expert, Integrator.

Focalizzarsi sulla Soluzione e non sul software

Scale with DAD

Inception (Portfolio), aggredire il mercato con una nuova idea;• Generata dall’esigenza, Pensata per creare un’esigenza;• Chi finanzia il progetto? Quali sono i rischi? Di quante persone ho bisogno? Quanti

Team? Dove avvengono le attività? Quali sono le tecnologie di supporto?, ...• Riorganizzare (creare se non presente) il Product Backlog.

Construction (Program Level/Inception/Team Level)• Creare il Program Backlog (Feature), Creare i Team Backlog (User Story),

Identificare i PSI (Potential Shippable Increment), ….• Prendere in carico il Team Backlog, Definire le iterazioni in relazione ai PSI, Definire

i Task, Scegliere le pratiche da utilizzare, …

Transition (Program Level)• Completato lo sviluppo, il sistema deve essere manutenuto in erogazione e

fruibile correttamente da client di tipologia diversa (anche molto!)

Adottare un ciclo completo di delivery

Scale with DAD

Padroneggiare i Goal che sottendono il processo

Scale with DAD

Adattare il processo allo specifico contesto aziendale

Scale with DAD

Migliorare l’ecosistema aziendale• Riutilizzare e sfruttare al massimo le risorse

aziendali;• Migliorare e sviluppare le infrastrutture

aziendali lavorando a stretto contatto con l’Enterprise Architecture (EA) Team.

Seguire le Convenzioni Aziendali• Standard e best practice Architetturali, di

Codifica e di gestione Dati;• Linee guida nella definizione della User

Interface (UI).

Condivisione della conoscenza• Contribuire alla crescita Personale, del Team

e dell’Azienda;• Arricchire e rafforzare il know-how relativo

all’Agile.

Promuovere la consapevolezza aziendale

Scale with DAD

Self-Organization;Utilizzo dell’Agile per aumentare la visibilità delle azioni;Risk & Value driven lifecycle;Quality Aware;Review basate su milestone ragionevoli (lightweight);Chiara definizione degli stakeholder;Promuovere la consapevolezza aziendale.

Adottare una governance in chiave Lean

Quality Aware

La filosofia Kaizen di Lean è parte integrante di DAD e si sviluppa sul modello 3C

Rhythm, ovvero un Ritmo (o se vogliamo Cadenza) scandito su tre Accenti,

andando ad integrare: ricerca, progettazione, test, produzione e vendita.

Inception

Coordinate

Construction

Collaborate

Transition

Conclude

Release rhythm

Iteration rhythm

Development

Collaborate

Iteration Planning

Coordinate

Stabilize

Conclude

Daily rhythm

Coordination Meeting

Coordinate

Daily Work

Collaborate

Stabilize

Conclude

Coordinate Collaborate Conclude

Risk & Value driven lifecycle

Value Driven• Prediligere le Features a maggior Valore per gli stakeholder;• Continua verifica del Valore prodotto;• Determinare quando sono state implementate funzionalità sufficienti a soddisfare il

Valore richiesto;• Produrre sempre soluzioni potenzialmente utilizzabili durante il ciclo di vita;• Valutare continuamente nuovi elementi di lavoro aggregate alla crescente

comprensione di ciò che realmente si vuole ottenere.Risk Driven• Validare l’Architettura il prima possibile;• Ottenere il consenso degli Stakeholder con dimostrazioni pratiche;• Essere compliance con la direzione aziendale (enterprise aware);• Lavorare prima su ciò che porta un reale incremento di know-how al

Team;• Abbattere il debito tecnico;• Utilizzare degli Spike per verificare specifiche assunzioni.

Review basate su milestone ragionevoli

• Stakeholder Vision convalidata;• Architettura convalidata;• Fattibilità del progetto (project viabilità);• Funzionalità in linea con le attese (sufficient

functionality);• Pronto per la messa in produzione;• Stakeholder soddisfatti.

DAD Basic Big Picture

DAD Advanced Big Picture

DAD & TFS

“Leaders (in ALM) have strong

capabilities in agile practices,

including driving portfolio

management support and support

for enterprise agile capabilities,

such as SAFe and Disciplined

Agile Delivery (DAD)”*

* Tratto da: Magic Quadrant for Application Development Life Cycle Management (11 Febbraio 2015)

demo

Recap

• Un soluzione software è un “prodotto” complesso e come tale ha bisogno di

opportune soluzioni di gestione per massimizzarne il Valore ed abbattere i

Rischi realizzativi;

• Le metodologie Agile@Core (es: Scrum ed XP) sono incentrate sulla fase di

sviluppo del software e non sull’intera soluzione;

• Una soluzione va valutata nella sua interezza, (end-to-end) dall’idea alla sua

dismissione, ponendo sempre al centro il Valore (soddisfazione) per il cliente;

• Disciplined Agile Delivery è il framework leader nella creazione di soluzioni

end-to-end;

• Visual Studio Online / TFS è la piattaforma ALM leader di mercato.

                          

Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Non commerciale 3.0 Italia.