dad e visual studio online
TRANSCRIPT
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
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!
… 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 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;• Hybridagile,sfruttare le pratiche derivati da metodologie diverse;• Learning-‐oriented,apprendimento continuo;• Fulldeliverylifecycle,dall’idea alla dismissione;• Solutionfocused,delivery di soluzione ready-to-use;• Risk-‐valuelifecycle,gestione del rischio;• Enterpriseaware,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
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 & 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)
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.
Risorse e Riferimenti
Agile Application Lifecycle Management con VSO/TFS getlatestversion
disciplinedagiledelivery.com
• Agile@Scale: visione olistica del valore• Lean Philosophy • Introduzione a Kanban• Application Lifecycle Management (ALM) co
n Visual Studio Online
Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Non commerciale 3.0 Italia.