SlideShare une entreprise Scribd logo
1  sur  30
Why Agile?
 Adopt a new Cultural style




Ing. Felice Pescatore
www.felicepescatore.it




  5 Febbraio 2013
AGENDA



Software Development
Common Development Problem
Why Agile
Adaptive vs. Predictive
Benefit
Disadvantage




Why Agile?                   2
SOFTWARE DEVELOPMENT: FOUR PHASES
What we do…




Requirements Analysis
Architecture and Design
Development
Test and Feedback




Why Agile?                     3
METHODS OF SOFTWARE DEVELOPMENT
Adaptive vs. Predictive




 Predittivo                                               Adattativo
 • Vecchie metodologie basate su metodi                   • Adattamento rapido ai cambiamenti;
    predittivi;                                           • Quando le esigenze cambiano, anche il Team si
 • Funzionalità e task sono pianificati all‟inizio          modifica con esse;
    del progetto e restano validi per l‟intero ciclo di   • Gestire l‟immediato ed avere una Visione della
    sviluppo;:                                              strada da percorrere;
 • Focus sulla pianificazione di dettaglio;
 • Difficoltà nel gestire i cambiamenti;




Why Agile?                                                                                          4
COMMON ISSUE
Not Only, of course!




Time to market for projects is too long
Unrealistic deadlines
Poor Estimation
Requirement Changes
Immature architecture and design
No Documentation or too much
Inadequate Testing




Why Agile?                                5
PROJECTS TODAY
Not Only, of course!


Troppo lenti
     •   “Le mie necessità sono cambiate, ma l‟IT non riesce a supportarmi”
     •   “Nulla sarà pronto prima di un anno”
Scarsa attenzione al vero Valore
     •   “Lo scope del progetto è errato ma ne abbiamo già codificato la metà”
     •   “Ho ricevuto montagne di documentazione che nessuno usa ma il sistema non rispecchia le mie necessità”
     •   “Abbiamo sprecato tempo (e denaro) a progettare e realizzare funzionalità che nessuno usa”
Poco reattivo
     •   “Il progetto costringe ad effettuare delle scelte vincolanti prima che gli stakeholder sappiano cosa realmente
         interessa”;
     •   “Ogni piccola review costringe ad una revisione della commessa”
Fuori controllo
     •   “Non so cosa sta succedendo nello sviluppo del progetto”
     •   “Siamo in stallo perché quello che viene sviluppato sembra non produrre Valore”




Why Agile?                                                                                                           6
PROJECTS SUCCES
 Traditional vs. Agile




        The agile process is the universal remedy for software development project failure.
        Software applications developed through the agile process have three times the success
        rate of the traditional waterfall method and a much lower percentage of time and cost
        overruns.” (page 25)
                                                                                  2011 CHAOS report


Why Agile?                                                                                       7
WHY AGILE?
… part 1…




•   Realizzare e rendere disponibili le funzionalità che
    rispecchiano i requisiti attesi e non quelli espresso;
•   Ridurre gli sprechi (es: documentazione inutile);
•   Catturare e realizzare quanto realmente ha Valore
    per il Cliente;
•   Abbattere le barriera tra stakeholder e team di
    sviluppo;
•   Fornire una trasparenze nella gestione delle fasi di
    progetto.




Why Agile?                                                   8
WHY AGILE?
… part 2




 Customer satisfaction by rapid delivery of useful        Face-to-face conversation is best form of
 software.                                                communication.
 Welcome changing requirements, even late in              Projects are built around motivated individuals.
 development.                                             Continuous attention to technical excellence and good
 Working software is delivered frequently.                design.
 Working software is the principal measure of progress.   Simplicity
 Sustainable development, able to maintain a constant     Self organizing teams.
 pace.                                                    Regular adaptation to changing circumstances.
 Close, daily co-operation between business people and
 developers




Why Agile?                                                                                                   9
WATERFALL vs. AGILE
 ROI first approach




 Why Agile?           10
WATERFALL vs. AGILE
 Comparing

 Typical water fall model development (With some overlap)                                Agile model with Iterations

 Requirements                                                                 Small iterations help in getting early feedback

                Design                                               Requirement        Requirement         Requirement
                                                                          s                  s                   s
                                                                      Design             Design               Design
                             Development
                                                                          Development         Development         Developmen
                                                      Testing team
                                                                             Test               Test                   t
                                                                                                                     Test
                                           Test              peak
                             Development
               Design team         team
Requirements
       peak
                     peak          peak
                                                                                               No big team peaks/Spikes


 Team in attesa      Analisti e Tester                               Tutto il Team è pronto
      o non                non sono sul                                     ed allocato sul
      ancora               progetto                                         progetto
      costituito

                                                                           La Collaborazione stretta reduce l’incertezza su cora
      Poche possibilità di inserire nuove                                  realizzare
       funzionalità e rivedere quelle pianificate                          Migliore comprensione dei requisiti tramite le User Story
      Rischio di rifare parte del lavoro per la                           Migliore qualità del prodotto grazie a test e rilasci continui
       scarsa aderenza ai reali requisiti
                                                                           Ogni iterazione produce valore
      La soluzione è visibile/consumabile solo
                                                                           Possibilità, teorica, di rilasciare il sistema in produzione ad
       alla fine del ciclo di sviluppo
                                                                            ogni iterazione
      Nessun beneficio fino alla fine
                                                                           Capacità di rispondere alle richieste di cambiamento




 Why Agile?                                                                                                                               11
ITERATIVE INCREMENTAL DEVELOPMENT
Step-by-step




     “Iterative development is an approach to building software (or anything) in which
the overall lifecycle is composed of several iterations in sequence.
     Each iteration is a self-contained mini-project composed of activities such as
requirements analysis, design, programming, and test.
     Usually the partial system grows incrementally with new features, iteration by
iteration; in other words, incremental development.”


                                                                           Craig Larman




Why Agile?                                                                            12
ITERATIVE DEVELOPMENT
Less first



              Iterative Development




             All-At-Once Development




Why Agile?                             13
ITERATIVE DEVELOPMENT
Step-by-Step




               Incremental   All-At-Once
               Delivery      Delivery




Why Agile?                             14
WHAT IS AN AGILE METHODOLOGY?
Values and Practices




Agile (CORE) è un insieme di Valori e Principi, per lo sviluppo di soluzioni IT, che enfatizzano la
soddisfazione degli stakeholder attraverso il coinvolgimento diretto e il rilascio continuo di soluzioni
consumabili.
Intorno ai Valori e ai Principi del Manifesto Agile sono nate una serie di metodologie (CORE) di
delivery che enfatizzano il lavoro in piccolo team, con budget e tempi limitati.
Le metodologie Agili (CORE) sono considerate:
      • Lightweight
      • People-based piuttosto che Process-based
      • Adattative invece che predittive
      • Orientate alla produzione di Valore




Why Agile?                                                                                             15
WHEN AGILE COMING UP?
History




 Agile nasce concettualmente intorno alla metà degli anni „90 come soluzione
     allo sviluppo dinamico/leggero (lightweight software development) in
      contrapposizione allo sviluppo burocratizzato/pesante (heavy weight
                                          development).


 Con Agile (CORE) andiamo ad identificare un insieme di Valori e Principi, per lo sviluppo di
 soluzioni IT, che enfatizzano la soddisfazione degli stakeholder attraverso il coinvolgimento diretto e
 il rilascio continuo di soluzioni consumabili.




Why Agile?                                                                                           16
AGILE MANIFESTO
Values

 Nel 2001 l‟Agile Alliance, organizzazione no profit fondata da sviluppatori, crea il Manifesto
 Agile, incentrato su 4 valori portati:




          Individuals and interactions            over            Process and tools


                                                                    Comprehensive
                Working software                  over
                                                                    documentation


             Customer collaboration               over           Contract negotiation



             Responding to change                over               Following a plan

                                                                           Source: www.agilemanifesto.org



Why Agile?                                                                                           17
AGILE DEVELOPMENT
All in a picture




Why Agile?          18
AGILE…. DISTILLED
 The basis




                   Creare una Vision
              Abbracciare il Cambiamento
                 Priorizzare le Attività
             Creare mini/micro WorkItem
                  Ottenere Feedback
                Decidere i prossimi step
                    Collaborazione
                    Lavoro di Team
                    Brevi Iterazioni
                 Minimizzare i Rischi
                   Minimal Plannig
                   Small Team (5-9)
                      Close Work




 Why Agile?                                19
WHAT IS AN AGILE METHODOLOGY?
Agile CORE Family




Intorno ai Valori e ai Principi del Manifesto Agile sono nate una serie di metodologie
(CORE) di delivery che enfatizzano il lavoro in piccolo team, con budget e tempi limitati.
Le metodologie Agili (CORE) sono considerate:
     • Lightweight
     • People-based piuttosto che Process-based
     • Adattative invece che predittive
     • Orientate alla produzione di Valore


      scrum(1995), crystal clear, Extreme programming (1996), Adaptive software
       development, Feature Driven Development, and Dynamic Systems (1995).




Why Agile?                                                                               20
WHAT IS AN AGILE METHODOLOGY?
Agile CORE Family Tree




Why Agile?                      21
AGILE METHODOLOGY
Comparison




Why Agile?          22
AGILE…. MYTHS
They are alive!




•   no design
•   no testing
•   no documentation
•   no idea of progress
•   poor quality
•   no plan
•   auditors won‟t allow it




Why Agile?                    23
KEY BENEFIT
Not Only…




•   Incremento della Flessibilità: viene minimizzato l‟investimento iniziale e
    massimizzato quello sul ROI (Return On Investment), grazie alla creazione di un
    efficiente processo di sviluppo;
•   Realizzazione della Soluzione Attesa: coinvolge
    stakeholder, sviluppatori, manager, ecc, affinché la soluzione prodotta sia quella che
    rispecchia le necessità di business (Valore);
•   Accelera il Delivery: Idealmente ad ogni iterazione viene prodotta una soluzione
    consumabile;
•   Riduce i Rischi ed aumenta la Qualità: vengono affrontati e risolte prima le
    incertezze ed i problemi.




Why Agile?                                                                                   24
KEY BENEFIT
Evolutionary design




• Dal CHAOS report dello Standish Group emerge                           20%
  un‟allarmante verità:                                         (EFFETTIVAMENTE USATE)
      • Circa i 2/3 delle features realizzate basandosi su un
         up-front analysis risultano inutilizzate!!
                                                                         16%
• La soluzione: abbracciare il cambiamento                      (USATE QUALCHE VOLTA)
      • Agile è un approccio non lineare che contempla il
         cambiamento e permette di adattarsi ad esso;                    19%
      • Le funzionalità che si scoprono non necessarie
                                                                  (USATE RARAMENTE)
         vengono abbandonate prima, idealmente ancor
         prima che ne inizi lo sviluppo;
      • La soluzione evolve abbracciando in modo ottimale                45%
         le mutate esigenze di business.                             (MAI USATE)




Why Agile?                                                                               25
KEY BENEFIT
Accelerates Delivery




Lo sviluppo incrementale organizzato in       • Le varie soluzioni consumabili non sono
                                                prototipi, ma versioni incrementali sistema
iterazioni permette al Team di ragionare in
                                                reale;
funzione di soluzioni consumabili,            • Il Team si focalizza sui task a maggior rischio
velocizzandone il delivery.                     (high-risk) e maggior Valore (high-value
                                                aspects);
                                              • Gli stakeholder possono decider se accettare o
                                                meno le nuove funzionalità:
                                              • Avere il prima possibile le nuove funzionalità
                                                consente agli stakeholder di attuare i relativi
                                                piani di accettazione il prima possibile




Why Agile?                                                                                  26
KEY BENEFIT
Reduces risk and increases quality




Le Iterazioni accompagnano il progetto nella propria
evoluzione, abbracciando i rischi ed attuando le
opportune soluzioni risolutive.
•   Nuove User Story possono essere aggiunte al
    progetto, ma non all‟Iterazione
•   Le User Story non incluse nell‟iterazione corrente
    possono essere ri-priorizzate;
•   Alcune User Story, non incluse nell‟iterazione,
    possono sparire per far posto a nuove User Story a
    priorità più alta, mantenendo il vincolo
    temporale/economico previsto.




Why Agile?                                               27
DISADVANTAGE
Yes: not only benefit!




• L’adozione dell’Agile non è banale:
• Rende visibile tutti i problemi
      • Agile non corregge nulla: è il Team che lo fa
• Il Team deve lavorare bene, altrimenti i
  progetti saranno condannati ad una rapida
  cancellazione;
• Una sua adozione parziale potrebbe essere
  peggio che una sua non adozione.




Why Agile?                                              28
ABOUT ME
get in touch




                                                        www.felicepescatore.it
          Felice Pescatore, Agile Software Architect
          Email: felice.pescatore@gmail.com
                                                       @Why Agile?

          Cell. 392/7157684

                                                       Disciplined Agile Delivery Italy
                                                       Group




Why Agile?                                                                                29
THANKS FOR WATCHING




Why Agile?                         30

Contenu connexe

Tendances

Agile requirements - alla ricerca del filo rosso (iad 2013)
Agile requirements - alla ricerca del filo rosso (iad 2013)Agile requirements - alla ricerca del filo rosso (iad 2013)
Agile requirements - alla ricerca del filo rosso (iad 2013)
Fabio Armani
 
Introduzione alle metodologie Agili
Introduzione alle metodologie AgiliIntroduzione alle metodologie Agili
Introduzione alle metodologie Agili
Alessandro Astarita
 
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
Francesco Cirillo
 

Tendances (20)

Agile requirements - alla ricerca del filo rosso (iad 2013)
Agile requirements - alla ricerca del filo rosso (iad 2013)Agile requirements - alla ricerca del filo rosso (iad 2013)
Agile requirements - alla ricerca del filo rosso (iad 2013)
 
Introduzione alle metodologie Agili
Introduzione alle metodologie AgiliIntroduzione alle metodologie Agili
Introduzione alle metodologie Agili
 
Lezione 1: I metodi agili
Lezione 1: I metodi agiliLezione 1: I metodi agili
Lezione 1: I metodi agili
 
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
 
Sviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMSviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUM
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum Workshop
 
Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!
 
Semplicemente Agile
Semplicemente AgileSemplicemente Agile
Semplicemente Agile
 
Agile raccontato a mia nonna
Agile raccontato a mia nonnaAgile raccontato a mia nonna
Agile raccontato a mia nonna
 
Agile vs waterfall project management
Agile vs waterfall project managementAgile vs waterfall project management
Agile vs waterfall project management
 
Dal waterfall allo scrum
Dal waterfall allo scrumDal waterfall allo scrum
Dal waterfall allo scrum
 
La salute del software
La salute del softwareLa salute del software
La salute del software
 
Better Software 2010 - Applicazione pratica di un processo di sviluppo Agile ...
Better Software 2010 - Applicazione pratica di un processo di sviluppo Agile ...Better Software 2010 - Applicazione pratica di un processo di sviluppo Agile ...
Better Software 2010 - Applicazione pratica di un processo di sviluppo Agile ...
 
Open Innovation Campus - 05/04/2018 - Agile challenges: essere agili nello sv...
Open Innovation Campus - 05/04/2018 - Agile challenges: essere agili nello sv...Open Innovation Campus - 05/04/2018 - Agile challenges: essere agili nello sv...
Open Innovation Campus - 05/04/2018 - Agile challenges: essere agili nello sv...
 
Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013
 
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
20071123 XPLabs Tour07 Bonsai @ItalianAgileDay2007 Bologna-IT [ITA]
 
Agile@core - Scrum
Agile@core - ScrumAgile@core - Scrum
Agile@core - Scrum
 
DevOps: l'IT al servizio del Business
DevOps: l'IT al servizio del BusinessDevOps: l'IT al servizio del Business
DevOps: l'IT al servizio del Business
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Agile e Lean Management
 Agile e Lean Management Agile e Lean Management
Agile e Lean Management
 

En vedette

En vedette (6)

AgileIoT, scopriamolo insieme
AgileIoT, scopriamolo insiemeAgileIoT, scopriamolo insieme
AgileIoT, scopriamolo insieme
 
2015 mag 28 PMI Rome Agile Project Management - Agile tra Sviluppo e Esercizio
2015 mag 28 PMI Rome Agile Project Management - Agile tra Sviluppo e Esercizio2015 mag 28 PMI Rome Agile Project Management - Agile tra Sviluppo e Esercizio
2015 mag 28 PMI Rome Agile Project Management - Agile tra Sviluppo e Esercizio
 
Agile Go Back: persone ed interazioni piu' che processi e strumenti
Agile Go Back: persone ed interazioni piu' che processi e strumentiAgile Go Back: persone ed interazioni piu' che processi e strumenti
Agile Go Back: persone ed interazioni piu' che processi e strumenti
 
Introduzione a Scrum
Introduzione a ScrumIntroduzione a Scrum
Introduzione a Scrum
 
Disciplined Agile 2.1
Disciplined Agile 2.1Disciplined Agile 2.1
Disciplined Agile 2.1
 
101 modi di visualizzare il proprio lavoro
101 modi di visualizzare il proprio lavoro 101 modi di visualizzare il proprio lavoro
101 modi di visualizzare il proprio lavoro
 

Similaire à 2013 why agile

AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
Alessandro Cinelli (cirpo)
 
Essere project manager senza rinunciare all'agilità integrata - Fabio Savarino
Essere project manager senza rinunciare all'agilità integrata - Fabio SavarinoEssere project manager senza rinunciare all'agilità integrata - Fabio Savarino
Essere project manager senza rinunciare all'agilità integrata - Fabio Savarino
PMexpo
 
Intoduzione Alle Metodologie Agili
Intoduzione Alle Metodologie AgiliIntoduzione Alle Metodologie Agili
Intoduzione Alle Metodologie Agili
Stefano Leli
 

Similaire à 2013 why agile (20)

Agile@scale: be SAFe!
Agile@scale: be SAFe!Agile@scale: be SAFe!
Agile@scale: be SAFe!
 
Agile project management 1 giornata - board game - v2
Agile project management   1 giornata - board game - v2Agile project management   1 giornata - board game - v2
Agile project management 1 giornata - board game - v2
 
DAD e Visual Studio Online
DAD e Visual Studio OnlineDAD e Visual Studio Online
DAD e Visual Studio Online
 
AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
AgileTour Brescia - Metodi Agili: lavorare in modo sostenibile e vincente in ...
 
Agile APM an heretic's approach to SPE
Agile APM an heretic's approach to SPEAgile APM an heretic's approach to SPE
Agile APM an heretic's approach to SPE
 
Essere project manager senza rinunciare all'agilità integrata - Fabio Savarino
Essere project manager senza rinunciare all'agilità integrata - Fabio SavarinoEssere project manager senza rinunciare all'agilità integrata - Fabio Savarino
Essere project manager senza rinunciare all'agilità integrata - Fabio Savarino
 
Agile Lean Conference 2016 - Pescatore_ Road to Disciplined DevOps
Agile Lean Conference 2016 - Pescatore_ Road to Disciplined DevOpsAgile Lean Conference 2016 - Pescatore_ Road to Disciplined DevOps
Agile Lean Conference 2016 - Pescatore_ Road to Disciplined DevOps
 
Disciplined Agile DevOps
Disciplined Agile DevOpsDisciplined Agile DevOps
Disciplined Agile DevOps
 
Keep calm and deploy
Keep calm and deployKeep calm and deploy
Keep calm and deploy
 
Approcci al design
Approcci al designApprocci al design
Approcci al design
 
L'Occhio di Ra sul Testing
L'Occhio di Ra sul TestingL'Occhio di Ra sul Testing
L'Occhio di Ra sul Testing
 
Lean Agile Development - a war story (Better Software 2010)
Lean Agile Development - a war story (Better Software  2010)Lean Agile Development - a war story (Better Software  2010)
Lean Agile Development - a war story (Better Software 2010)
 
Introduzione all'Agile Software Development
Introduzione all'Agile Software DevelopmentIntroduzione all'Agile Software Development
Introduzione all'Agile Software Development
 
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
Keep calm and Deploy - Panoramica sui problemi che emergono in fase di rilasc...
 
Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011
 
Introduzione all'Agile Software Development
Introduzione all'Agile Software DevelopmentIntroduzione all'Agile Software Development
Introduzione all'Agile Software Development
 
Webinar: “Testing automatico: la scelta vincente per ottenere una riduzione d...
Webinar: “Testing automatico: la scelta vincente per ottenere una riduzione d...Webinar: “Testing automatico: la scelta vincente per ottenere una riduzione d...
Webinar: “Testing automatico: la scelta vincente per ottenere una riduzione d...
 
Intoduzione Alle Metodologie Agili
Intoduzione Alle Metodologie AgiliIntoduzione Alle Metodologie Agili
Intoduzione Alle Metodologie Agili
 
La governance de iprogetti agili
La governance de iprogetti agiliLa governance de iprogetti agili
La governance de iprogetti agili
 
Agile Intro
Agile IntroAgile Intro
Agile Intro
 

Plus de Felice Pescatore

Plus de Felice Pescatore (20)

Il Cinismo dell'Agilista Imbruttito
Il Cinismo dell'Agilista ImbruttitoIl Cinismo dell'Agilista Imbruttito
Il Cinismo dell'Agilista Imbruttito
 
Intelligent Business Agility
Intelligent Business AgilityIntelligent Business Agility
Intelligent Business Agility
 
AgileBIM, BIM mets Agile
AgileBIM, BIM mets AgileAgileBIM, BIM mets Agile
AgileBIM, BIM mets Agile
 
Disciplined Agile, la Promessa, la Svolta e il Prestigio
Disciplined Agile, la Promessa, la Svolta e il PrestigioDisciplined Agile, la Promessa, la Svolta e il Prestigio
Disciplined Agile, la Promessa, la Svolta e il Prestigio
 
AgileBIM overview
AgileBIM overviewAgileBIM overview
AgileBIM overview
 
The Disciplined Approach to Change
The Disciplined Approach to ChangeThe Disciplined Approach to Change
The Disciplined Approach to Change
 
The Disciplined Approach to Change
The Disciplined Approach to ChangeThe Disciplined Approach to Change
The Disciplined Approach to Change
 
PMI Disciplined Agile: la Promessa, la Svolta e il Prestigio
PMI Disciplined Agile: la Promessa, la Svolta e il PrestigioPMI Disciplined Agile: la Promessa, la Svolta e il Prestigio
PMI Disciplined Agile: la Promessa, la Svolta e il Prestigio
 
Agilozzi le testa tutte
Agilozzi le testa tutteAgilozzi le testa tutte
Agilozzi le testa tutte
 
39bit al secondo
39bit al secondo39bit al secondo
39bit al secondo
 
Un cuore moderno per l'Agilità
Un cuore moderno per l'AgilitàUn cuore moderno per l'Agilità
Un cuore moderno per l'Agilità
 
#NoElevator4DevOps
#NoElevator4DevOps#NoElevator4DevOps
#NoElevator4DevOps
 
Don't Dirty my Backlog!
Don't Dirty my Backlog!Don't Dirty my Backlog!
Don't Dirty my Backlog!
 
Industry 4.0... a che punto siamo in Italia
Industry 4.0... a che punto siamo in ItaliaIndustry 4.0... a che punto siamo in Italia
Industry 4.0... a che punto siamo in Italia
 
Agile IoT & Eclipse Duttile
Agile IoT & Eclipse DuttileAgile IoT & Eclipse Duttile
Agile IoT & Eclipse Duttile
 
Fuffa Day - The Sixth Sense
Fuffa Day - The Sixth SenseFuffa Day - The Sixth Sense
Fuffa Day - The Sixth Sense
 
#NoElevator for DevOps
#NoElevator for DevOps#NoElevator for DevOps
#NoElevator for DevOps
 
Value Focused Team
Value Focused TeamValue Focused Team
Value Focused Team
 
Value Focused Team: road to DevOps
Value Focused Team: road to DevOpsValue Focused Team: road to DevOps
Value Focused Team: road to DevOps
 
Business Agility ed Enterprise Agility (extended)
Business Agility ed Enterprise Agility (extended)Business Agility ed Enterprise Agility (extended)
Business Agility ed Enterprise Agility (extended)
 

2013 why agile

  • 1. Why Agile? Adopt a new Cultural style Ing. Felice Pescatore www.felicepescatore.it 5 Febbraio 2013
  • 2. AGENDA Software Development Common Development Problem Why Agile Adaptive vs. Predictive Benefit Disadvantage Why Agile? 2
  • 3. SOFTWARE DEVELOPMENT: FOUR PHASES What we do… Requirements Analysis Architecture and Design Development Test and Feedback Why Agile? 3
  • 4. METHODS OF SOFTWARE DEVELOPMENT Adaptive vs. Predictive Predittivo Adattativo • Vecchie metodologie basate su metodi • Adattamento rapido ai cambiamenti; predittivi; • Quando le esigenze cambiano, anche il Team si • Funzionalità e task sono pianificati all‟inizio modifica con esse; del progetto e restano validi per l‟intero ciclo di • Gestire l‟immediato ed avere una Visione della sviluppo;: strada da percorrere; • Focus sulla pianificazione di dettaglio; • Difficoltà nel gestire i cambiamenti; Why Agile? 4
  • 5. COMMON ISSUE Not Only, of course! Time to market for projects is too long Unrealistic deadlines Poor Estimation Requirement Changes Immature architecture and design No Documentation or too much Inadequate Testing Why Agile? 5
  • 6. PROJECTS TODAY Not Only, of course! Troppo lenti • “Le mie necessità sono cambiate, ma l‟IT non riesce a supportarmi” • “Nulla sarà pronto prima di un anno” Scarsa attenzione al vero Valore • “Lo scope del progetto è errato ma ne abbiamo già codificato la metà” • “Ho ricevuto montagne di documentazione che nessuno usa ma il sistema non rispecchia le mie necessità” • “Abbiamo sprecato tempo (e denaro) a progettare e realizzare funzionalità che nessuno usa” Poco reattivo • “Il progetto costringe ad effettuare delle scelte vincolanti prima che gli stakeholder sappiano cosa realmente interessa”; • “Ogni piccola review costringe ad una revisione della commessa” Fuori controllo • “Non so cosa sta succedendo nello sviluppo del progetto” • “Siamo in stallo perché quello che viene sviluppato sembra non produrre Valore” Why Agile? 6
  • 7. PROJECTS SUCCES Traditional vs. Agile The agile process is the universal remedy for software development project failure. Software applications developed through the agile process have three times the success rate of the traditional waterfall method and a much lower percentage of time and cost overruns.” (page 25) 2011 CHAOS report Why Agile? 7
  • 8. WHY AGILE? … part 1… • Realizzare e rendere disponibili le funzionalità che rispecchiano i requisiti attesi e non quelli espresso; • Ridurre gli sprechi (es: documentazione inutile); • Catturare e realizzare quanto realmente ha Valore per il Cliente; • Abbattere le barriera tra stakeholder e team di sviluppo; • Fornire una trasparenze nella gestione delle fasi di progetto. Why Agile? 8
  • 9. WHY AGILE? … part 2 Customer satisfaction by rapid delivery of useful Face-to-face conversation is best form of software. communication. Welcome changing requirements, even late in Projects are built around motivated individuals. development. Continuous attention to technical excellence and good Working software is delivered frequently. design. Working software is the principal measure of progress. Simplicity Sustainable development, able to maintain a constant Self organizing teams. pace. Regular adaptation to changing circumstances. Close, daily co-operation between business people and developers Why Agile? 9
  • 10. WATERFALL vs. AGILE ROI first approach Why Agile? 10
  • 11. WATERFALL vs. AGILE Comparing Typical water fall model development (With some overlap) Agile model with Iterations Requirements Small iterations help in getting early feedback Design Requirement Requirement Requirement s s s Design Design Design Development Development Development Developmen Testing team Test Test t Test Test peak Development Design team team Requirements peak peak peak No big team peaks/Spikes Team in attesa Analisti e Tester Tutto il Team è pronto o non non sono sul ed allocato sul ancora progetto progetto costituito  La Collaborazione stretta reduce l’incertezza su cora  Poche possibilità di inserire nuove realizzare funzionalità e rivedere quelle pianificate  Migliore comprensione dei requisiti tramite le User Story  Rischio di rifare parte del lavoro per la  Migliore qualità del prodotto grazie a test e rilasci continui scarsa aderenza ai reali requisiti  Ogni iterazione produce valore  La soluzione è visibile/consumabile solo  Possibilità, teorica, di rilasciare il sistema in produzione ad alla fine del ciclo di sviluppo ogni iterazione  Nessun beneficio fino alla fine  Capacità di rispondere alle richieste di cambiamento Why Agile? 11
  • 12. ITERATIVE INCREMENTAL DEVELOPMENT Step-by-step “Iterative development is an approach to building software (or anything) in which the overall lifecycle is composed of several iterations in sequence. Each iteration is a self-contained mini-project composed of activities such as requirements analysis, design, programming, and test. Usually the partial system grows incrementally with new features, iteration by iteration; in other words, incremental development.” Craig Larman Why Agile? 12
  • 13. ITERATIVE DEVELOPMENT Less first Iterative Development All-At-Once Development Why Agile? 13
  • 14. ITERATIVE DEVELOPMENT Step-by-Step Incremental All-At-Once Delivery Delivery Why Agile? 14
  • 15. WHAT IS AN AGILE METHODOLOGY? Values and Practices Agile (CORE) è un insieme di Valori e Principi, per lo sviluppo di soluzioni IT, che enfatizzano la soddisfazione degli stakeholder attraverso il coinvolgimento diretto e il rilascio continuo di soluzioni consumabili. Intorno ai Valori e ai Principi del Manifesto Agile sono nate una serie di metodologie (CORE) di delivery che enfatizzano il lavoro in piccolo team, con budget e tempi limitati. Le metodologie Agili (CORE) sono considerate: • Lightweight • People-based piuttosto che Process-based • Adattative invece che predittive • Orientate alla produzione di Valore Why Agile? 15
  • 16. WHEN AGILE COMING UP? History Agile nasce concettualmente intorno alla metà degli anni „90 come soluzione allo sviluppo dinamico/leggero (lightweight software development) in contrapposizione allo sviluppo burocratizzato/pesante (heavy weight development). Con Agile (CORE) andiamo ad identificare un insieme di Valori e Principi, per lo sviluppo di soluzioni IT, che enfatizzano la soddisfazione degli stakeholder attraverso il coinvolgimento diretto e il rilascio continuo di soluzioni consumabili. Why Agile? 16
  • 17. AGILE MANIFESTO Values Nel 2001 l‟Agile Alliance, organizzazione no profit fondata da sviluppatori, crea il Manifesto Agile, incentrato su 4 valori portati: Individuals and interactions over Process and tools Comprehensive Working software over documentation Customer collaboration over Contract negotiation Responding to change over Following a plan Source: www.agilemanifesto.org Why Agile? 17
  • 18. AGILE DEVELOPMENT All in a picture Why Agile? 18
  • 19. AGILE…. DISTILLED The basis Creare una Vision Abbracciare il Cambiamento Priorizzare le Attività Creare mini/micro WorkItem Ottenere Feedback Decidere i prossimi step Collaborazione Lavoro di Team Brevi Iterazioni Minimizzare i Rischi Minimal Plannig Small Team (5-9) Close Work Why Agile? 19
  • 20. WHAT IS AN AGILE METHODOLOGY? Agile CORE Family Intorno ai Valori e ai Principi del Manifesto Agile sono nate una serie di metodologie (CORE) di delivery che enfatizzano il lavoro in piccolo team, con budget e tempi limitati. Le metodologie Agili (CORE) sono considerate: • Lightweight • People-based piuttosto che Process-based • Adattative invece che predittive • Orientate alla produzione di Valore scrum(1995), crystal clear, Extreme programming (1996), Adaptive software development, Feature Driven Development, and Dynamic Systems (1995). Why Agile? 20
  • 21. WHAT IS AN AGILE METHODOLOGY? Agile CORE Family Tree Why Agile? 21
  • 23. AGILE…. MYTHS They are alive! • no design • no testing • no documentation • no idea of progress • poor quality • no plan • auditors won‟t allow it Why Agile? 23
  • 24. KEY BENEFIT Not Only… • Incremento della Flessibilità: viene minimizzato l‟investimento iniziale e massimizzato quello sul ROI (Return On Investment), grazie alla creazione di un efficiente processo di sviluppo; • Realizzazione della Soluzione Attesa: coinvolge stakeholder, sviluppatori, manager, ecc, affinché la soluzione prodotta sia quella che rispecchia le necessità di business (Valore); • Accelera il Delivery: Idealmente ad ogni iterazione viene prodotta una soluzione consumabile; • Riduce i Rischi ed aumenta la Qualità: vengono affrontati e risolte prima le incertezze ed i problemi. Why Agile? 24
  • 25. KEY BENEFIT Evolutionary design • Dal CHAOS report dello Standish Group emerge 20% un‟allarmante verità: (EFFETTIVAMENTE USATE) • Circa i 2/3 delle features realizzate basandosi su un up-front analysis risultano inutilizzate!! 16% • La soluzione: abbracciare il cambiamento (USATE QUALCHE VOLTA) • Agile è un approccio non lineare che contempla il cambiamento e permette di adattarsi ad esso; 19% • Le funzionalità che si scoprono non necessarie (USATE RARAMENTE) vengono abbandonate prima, idealmente ancor prima che ne inizi lo sviluppo; • La soluzione evolve abbracciando in modo ottimale 45% le mutate esigenze di business. (MAI USATE) Why Agile? 25
  • 26. KEY BENEFIT Accelerates Delivery Lo sviluppo incrementale organizzato in • Le varie soluzioni consumabili non sono prototipi, ma versioni incrementali sistema iterazioni permette al Team di ragionare in reale; funzione di soluzioni consumabili, • Il Team si focalizza sui task a maggior rischio velocizzandone il delivery. (high-risk) e maggior Valore (high-value aspects); • Gli stakeholder possono decider se accettare o meno le nuove funzionalità: • Avere il prima possibile le nuove funzionalità consente agli stakeholder di attuare i relativi piani di accettazione il prima possibile Why Agile? 26
  • 27. KEY BENEFIT Reduces risk and increases quality Le Iterazioni accompagnano il progetto nella propria evoluzione, abbracciando i rischi ed attuando le opportune soluzioni risolutive. • Nuove User Story possono essere aggiunte al progetto, ma non all‟Iterazione • Le User Story non incluse nell‟iterazione corrente possono essere ri-priorizzate; • Alcune User Story, non incluse nell‟iterazione, possono sparire per far posto a nuove User Story a priorità più alta, mantenendo il vincolo temporale/economico previsto. Why Agile? 27
  • 28. DISADVANTAGE Yes: not only benefit! • L’adozione dell’Agile non è banale: • Rende visibile tutti i problemi • Agile non corregge nulla: è il Team che lo fa • Il Team deve lavorare bene, altrimenti i progetti saranno condannati ad una rapida cancellazione; • Una sua adozione parziale potrebbe essere peggio che una sua non adozione. Why Agile? 28
  • 29. ABOUT ME get in touch www.felicepescatore.it Felice Pescatore, Agile Software Architect Email: felice.pescatore@gmail.com @Why Agile? Cell. 392/7157684 Disciplined Agile Delivery Italy Group Why Agile? 29