SlideShare a Scribd company logo
1
Semplicemente AGILE
SUPSI – 29 Aprile 2014
Stefano Gallotti
2
La Storia
L’idea
Gli strumenti
Il Progetto
Le persone
Qualche suggerimento
AGENDA
La Storia
3
4
Quecreek Mine Disaster
Un ottimo esempio di collaborazione
https://en.wikipedia.org/wiki/Quecreek_Mine_rescue
5
Modello evolutivo di una organizzazione
«Abbiamo successo perché lavoriamo Insieme»
Collaborazione
6
«Abbiamo successo creando e mantenendo il controllo»
Controllo
7
«Abbiamo successo perché siamo i migliori»
Competenza
8
«Abbiamo successo perché facciamo crescere le persone
che alimentano la nostra vision»
Incubazione - Cultura
9
Modello waterfall
10
Partiamo da 3 semplici verità
E’ impossibile raccogliere tutti i
requisiti all’inizio del progetto.
Qualsiasi requisito andrai a raccogliere
è sicuro che cambierà.
Ci saranno sempre più cose da fare che
soldi e tempo.
11
Analizziamo il modello waterfall
Vediamo i 6 punti che lo caratterizzano
1. Descrizione vaga e grossolana dei requisiti
2. Valutazione e stima di effort e risorse necessarie
3. Offerta economica
(out of the box - tutto compreso e senza possibili modifiche)
4. Analisi Funzionale
(dove capisci cosa è andato male al punto 2)
5. Analisi Architetturale
(dove i dubbi del punto 4 diventano realtà)
6. Sviluppo e Test
(dove il disastro assume proporzioni irreparabili)
12
Come è strutturato
ANALISI
DESIGN
SVILUPPO
TEST
RILASCIO
13
Principali cause del fallimento
14
15
Stiamo scoprendo modi migliori di creare software,
sviluppandolo e aiutando gli altri a fare lo stesso.
Grazie a questa attività siamo arrivati a considerare
importanti:
16
Gli individui e le interazioni più che i processi e gli strumenti
Il software funzionante più che la documentazione esaustiva
La collaborazione con il cliente più che la negoziazione dei contratti
Rispondere al cambiamento più che seguire un piano
Ovvero, fermo restando il valore delle voci a destra, consideriamo più
importanti le voci a sinistra.
I principi sottostanti al Manifesto Agile
17
La nostra massima priorità è soddisfare il cliente
rilasciando software di valore, fin da subito e in
maniera continua.
Il software funzionante è il principale metro di
misura di progresso.
Accogliamo i cambiamenti nei requisiti, anche a
stadi avanzati dello sviluppo.
I processi agili sfruttano il cambiamento a favore del
vantaggio competitivo del cliente.
I processi agili promuovono uno sviluppo
sostenibile.
Sponsor, Sviluppatori e Utenti in grado di
mantenere indefinitamente un ritmo costante.
Consegnamo frequentemente software funzionante,
con cadenza variabile da un paio di settimane a un
paio di mesi, preferendo i periodi brevi.
La continua attenzione all'eccellenza tecnica e alla
buona progettazione esaltano l'agilità.
Committenti e sviluppatori devono lavorare insieme
quotidianamente per tutta la durata del progetto.
La semplicità - l'arte di massimizzare la quantità di
lavoro non svolto - è essenziale.
Fondiamo i progetti su individui motivati.
Diamo loro l'ambiente e il supporto di cui hanno
bisogno e confidiamo nella loro capacità di portare il
lavoro a termine.
Le architetture, i requisiti e la progettazione migliori
emergono da team che si auto-organizzano.
Una conversazione faccia a faccia è il modo più
efficiente e più efficace per comunicare con il team
ed all'interno del team.
A intervalli regolari il team riflette su come
diventare più efficace, dopodiché regola e adatta il
proprio comportamento di conseguenza.
Agile timeline
18
Waterfall
Predittivo: Fasi, document-centric, functional handoffs, fare bene la prima volta
Spiral, RAD, RUP
Iterativo: process framework, fasi, tool driven, complessi artifact
Scrum, XP
Adattivo: Iterativo, self-organizing team, value driven, transparente
20001970 19901980
Facciamo un passo indietro...
ANALISI
DESIGN
SVILUPPO
TEST
RILASCIO
19
Come si può migliorare...
ANALISI
DESIGN
SVILUPPO
TEST
RILASCIO
20
Gli Strumenti
21
Approach SCRUM
Scrum è una delle tecniche agili più utilizzate.
Sottolinea la comunicazione la collaborazione, software funzionante, e la flessibilità
necessaria per adattarsi alle realtà aziendali emergenti.
Tutti attributi che soffrono nel paradigma waterfall.
22
3 Ruoli
• Product Owner
• Team Member
• Scrum Master
4 Cerimonie
• Sprint Planning
• Daily Meeting
• Sprint review
• Retrospective
3 Artifacts
• Product backlog
• Sprint backlog
• Burn down chart
I
N
V
E
S
T
ndipendent
E’ più semplice se sono indipendenti ed è possibile eseguirle in qualsiasi ordine
egotiable
Non è un contratto esplicito, piuttosto i dettagli devono essere co-creati durante la definizione.
aluable
Deve essere utile non solo per qualcuno ma per il cliente
stimable
L’esatta stima non è necessaria fin dall’inizio ma sufficiente per classificare e definire l’implementazione
mall
Sufficientemente piccoli da permettere una stima accurata
stable
Ogni requisito deve essere testabile per essere considerato “Fatto”
Invest in Requirement
23
Gestire il Product Backlog
Per avere un buon product backlog è necessario essere in grado di:
• Gestire la priorità degli elementi
• Scambiare requisiti con lo stesso effort
• Cambiare l'ordine dei requisiti fissi
• Migliorare la “definizione di fatto” in ogni iterazione.
Ora si è pronti per definire e pianificare gli sprints
• Partendo con la definizione della Timebox (Fixed Time)
• Definendo le funzionalità rilasciate (Fixed Scope)
In questa fase si ha la completa visibilità del progetto e si è in grado di
stimarne i costi totali.
24
AGILE Architecture
Dal punto di vista architetturale, durante l'iterazione 0 l'obiettivo è
identificare una direzione potenziale per la soluzione nonché eventuali
rischi tecnici che potenzialmente saranno da affrontare.
In questa fase non c’è bisogno di specifiche architetturali dettagliate.
Definire l’architettura completa all'inizio di un progetto di sviluppo è
infatti un rischio.
Bisogna poter rispondere a domande critiche circa l’ambito, costi,
tempi, e la strategia tecnica del progetto.
25
26
Envision
Architetturale
iniziale
Condivisione
Architettura con
Stakeholder
Aggiornamento
deliverable
architetturali
Collaborazione
con team di
sviluppo
Models
Vision Models
Vision
Feedback
L’architettura si aggiorna ed evolve con il tempo
Scott W.Amber
Architecture Evolution
Data Architecture
27
• Classificando i data elements (data classification)
• Considerando gli accessi ai dati (data security)
• Identificando i Master Data (entity types, data elements,
associations…)
• Definendo e gestendo i metadati pertinenti ai Master Data
includendo:
• Primary Source(s)
• Come i sistemi accedono ai MD
• Lifecycles dei MD
• Owners e/o data stewards
• Adottando tools (repository and modeling) per gestire Master
Data e metadati
Come un approccio agile alla Data Architecture permette di ottenere un buon
modello di MDM?
28
Il Progetto
Fixed Price, Fixed Scope
29
Manager: Voglio ordinare qualcosa, passare ad un'altra
attività senza interruzioni e che si consegni il tutto per
tempo.
I progetti Fixed-price sono stati promossi con il pretesto di varie ottimizzazioni:
Cliente: Voglio conoscere il costo del progetto.
Fornitore: Voglio definire il costo totale della commessa.
Venditore: Voglio definire la commessa per ottenere la
commissione completa.
La principale domanda diventa quindi:
Incomprensioni su FPFS
30
Quando viene utilizzato un metodo agile i requisiti generali di rilascio del
progetto non sono noti o stimati prima della prima iterazione.
Con i metodi agili i requisiti sono sempre soggetti al cambiamento.
Ci sono spesso due malintesi sul connubio FPFS ed i metodi agili:
Anzi, in Scrum, già dall prima iterazione, è chiara la pianificazione dei rilasci
(“product backlog”), in cui tutti i requisiti identificabili sono chiariti e stimati.
Non è vero.
Piuttosto, tutti i metodi agili offrono l'opportunità e il meccanismo per
supportare l'apprendimento ed il cambiamento, ma non lo richiedono. Scrum può
essere utilizzato con un backlog di fixed features da rilasciare.
Non è vero.
31
FIXED
ESTIMATED
VALUE DRIVEN
PLAN DRIVEN
Features
Cost Time Features
Time Cost
Project Approach
Le Persone
32
Agile team
33
TUTTI
TUTTI INSIEME
FIN DALL'INIZIO
Five dysfunction of a team
34
Assenza di fiducia
Paura del conflitto
Mancanza di impegno
Evitare la responsabilità
Disattenzione al risultato
Patrik Lencioni
35
La barca che vince ha lo stesso vento delle altre…
…ma ha un equipaggio migliore!
Qualche suggerimento
36
Software Development Delivery Methods
Agile best practice:
• Analisys & Design
• User Stories
• Impact Mapping
• Test-Driven Design
• Behavior-Driven Development
• Development
• Scrum
• Test & Delivery
• Scrum
• Continous Delivery
37
AGILE delivery model
38
The change process
39
Agile software development is one tool
in a vast toolbox.
But a fool with a tool is still a fool.
40

More Related Content

What's hot

Sviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMSviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUM
Matteo Papadopoulos
 
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clientiScrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Marco Da Rin Zanco
 
Agile e l’arte di semplificare progetti complessi
Agile e l’arte di semplificare progetti complessiAgile e l’arte di semplificare progetti complessi
Agile e l’arte di semplificare progetti complessi
Giulio Roggero
 
Agile Project Management - the Board Game workshop
Agile Project Management  - the Board Game workshopAgile Project Management  - the Board Game workshop
Agile Project Management - the Board Game workshop
Giulio Roggero
 
Agile@core - Scrum
Agile@core - ScrumAgile@core - Scrum
Agile@core - Scrum
Felice Pescatore
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum Workshop
Raoul Buzziol
 
Dal waterfall allo scrum
Dal waterfall allo scrumDal waterfall allo scrum
Dal waterfall allo scrum
Raffaello Torraco
 
Introduzione a Scrum
Introduzione a ScrumIntroduzione a Scrum
Introduzione a Scrum
Giulio Roggero
 
Agile in 45 minuti
Agile in 45 minutiAgile in 45 minuti
Agile in 45 minuti
Giulio Roggero
 
Redistributable Intro To Scrum Ita
Redistributable Intro To Scrum ItaRedistributable Intro To Scrum Ita
Redistributable Intro To Scrum ItaLuciano Benetti
 
2014 07-08 7° webinar pmi-rome agile scrum
2014 07-08 7° webinar pmi-rome agile scrum2014 07-08 7° webinar pmi-rome agile scrum
2014 07-08 7° webinar pmi-rome agile scrum
Emiliano Soldi
 
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
Giulio Roggero
 
L'innovazione manageriale nello sviluppo dei servizi e dei prodotti
L'innovazione manageriale nello sviluppo dei servizi e dei prodottiL'innovazione manageriale nello sviluppo dei servizi e dei prodotti
L'innovazione manageriale nello sviluppo dei servizi e dei prodotti
Claudio Saurin
 
Agile Lean Conference 2016 - Machella_ Workshop facilitare retrospettive
Agile Lean Conference 2016 -   Machella_ Workshop facilitare retrospettiveAgile Lean Conference 2016 -   Machella_ Workshop facilitare retrospettive
Agile Lean Conference 2016 - Machella_ Workshop facilitare retrospettive
Agile Lean Conference
 
Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!
Manuel Scapolan
 
Agile e Lean Management
 Agile e Lean Management Agile e Lean Management
Agile e Lean Management
Simone Onofri
 
Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013
Felice Pescatore
 
Le aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agiliLe aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agili
Giulio Roggero
 
Agile Lean Management - MoSCoW, Timeboxing e Kanban
Agile Lean Management - MoSCoW, Timeboxing e KanbanAgile Lean Management - MoSCoW, Timeboxing e Kanban
Agile Lean Management - MoSCoW, Timeboxing e Kanban
Simone Onofri
 
2014 11-15 presentazione breton agile day ancona
2014 11-15 presentazione breton agile day ancona2014 11-15 presentazione breton agile day ancona
2014 11-15 presentazione breton agile day ancona
Claudio Saurin
 

What's hot (20)

Sviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMSviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUM
 
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clientiScrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
 
Agile e l’arte di semplificare progetti complessi
Agile e l’arte di semplificare progetti complessiAgile e l’arte di semplificare progetti complessi
Agile e l’arte di semplificare progetti complessi
 
Agile Project Management - the Board Game workshop
Agile Project Management  - the Board Game workshopAgile Project Management  - the Board Game workshop
Agile Project Management - the Board Game workshop
 
Agile@core - Scrum
Agile@core - ScrumAgile@core - Scrum
Agile@core - Scrum
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum Workshop
 
Dal waterfall allo scrum
Dal waterfall allo scrumDal waterfall allo scrum
Dal waterfall allo scrum
 
Introduzione a Scrum
Introduzione a ScrumIntroduzione a Scrum
Introduzione a Scrum
 
Agile in 45 minuti
Agile in 45 minutiAgile in 45 minuti
Agile in 45 minuti
 
Redistributable Intro To Scrum Ita
Redistributable Intro To Scrum ItaRedistributable Intro To Scrum Ita
Redistributable Intro To Scrum Ita
 
2014 07-08 7° webinar pmi-rome agile scrum
2014 07-08 7° webinar pmi-rome agile scrum2014 07-08 7° webinar pmi-rome agile scrum
2014 07-08 7° webinar pmi-rome agile scrum
 
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
 
L'innovazione manageriale nello sviluppo dei servizi e dei prodotti
L'innovazione manageriale nello sviluppo dei servizi e dei prodottiL'innovazione manageriale nello sviluppo dei servizi e dei prodotti
L'innovazione manageriale nello sviluppo dei servizi e dei prodotti
 
Agile Lean Conference 2016 - Machella_ Workshop facilitare retrospettive
Agile Lean Conference 2016 -   Machella_ Workshop facilitare retrospettiveAgile Lean Conference 2016 -   Machella_ Workshop facilitare retrospettive
Agile Lean Conference 2016 - Machella_ Workshop facilitare retrospettive
 
Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!Scrum? E' come fare il bucato!
Scrum? E' come fare il bucato!
 
Agile e Lean Management
 Agile e Lean Management Agile e Lean Management
Agile e Lean Management
 
Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013Agile@scale - Agile Day 2013
Agile@scale - Agile Day 2013
 
Le aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agiliLe aspettative delle trasformazioni agili
Le aspettative delle trasformazioni agili
 
Agile Lean Management - MoSCoW, Timeboxing e Kanban
Agile Lean Management - MoSCoW, Timeboxing e KanbanAgile Lean Management - MoSCoW, Timeboxing e Kanban
Agile Lean Management - MoSCoW, Timeboxing e Kanban
 
2014 11-15 presentazione breton agile day ancona
2014 11-15 presentazione breton agile day ancona2014 11-15 presentazione breton agile day ancona
2014 11-15 presentazione breton agile day ancona
 

Similar to Semplicemente 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...
Vittorio Polizzi
 
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service Management
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service ManagementITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service Management
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service ManagementSimone Onofri
 
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie AgiliDall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
Massimiliano Camillucci
 
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresa
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresaWorkshop di Business Design sul Business Model Canvas: dall'idea all'impresa
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresa
Gino Tocchetti
 
Agile vs waterfall project management
Agile vs waterfall project managementAgile vs waterfall project management
Agile vs waterfall project management
Andrea Depedri
 
Agile e Lean in sintesi
Agile e Lean in sintesiAgile e Lean in sintesi
Agile e Lean in sintesi
Stefano Muro
 
PMexpo16 - DPO - Workshop
PMexpo16 - DPO - WorkshopPMexpo16 - DPO - Workshop
PMexpo16 - DPO - Workshop
PMexpo
 
Agile working
Agile workingAgile working
Agile working
Free Your Talent
 
Introduzione alla Metodologia Scrumban
Introduzione alla Metodologia ScrumbanIntroduzione alla Metodologia Scrumban
Introduzione alla Metodologia Scrumban
Nextre Engineering
 
Agile@scale: be SAFe!
Agile@scale: be SAFe!Agile@scale: be SAFe!
Agile@scale: be SAFe!
Felice Pescatore
 
5 scrum dalle trincee - principi agili
5   scrum dalle trincee - principi agili5   scrum dalle trincee - principi agili
5 scrum dalle trincee - principi agili
Alessio Del Toro
 
Agile è il futuro? PMI Rome Webinar Presentation
Agile è il futuro? PMI Rome Webinar PresentationAgile è il futuro? PMI Rome Webinar Presentation
Agile è il futuro? PMI Rome Webinar Presentation
inspearit Italy
 
PMI Rome Agile Project Management è il futuro?
PMI Rome Agile Project Management è il futuro?PMI Rome Agile Project Management è il futuro?
PMI Rome Agile Project Management è il futuro?
Emiliano Soldi
 
Agile Lean Conference 2016 - Barengo _I principi del lean software development
Agile Lean Conference 2016 - Barengo _I principi del lean software developmentAgile Lean Conference 2016 - Barengo _I principi del lean software development
Agile Lean Conference 2016 - Barengo _I principi del lean software development
Agile Lean Conference
 
Management per l'innovazione: la metodologia Agile (principi e applicazione)
Management per l'innovazione: la metodologia Agile (principi e applicazione)Management per l'innovazione: la metodologia Agile (principi e applicazione)
Management per l'innovazione: la metodologia Agile (principi e applicazione)
Studio Sabrina Fattori - Consulenza Fiscale e Societaria - Roma Eur
 
Far scalare la Continuous Delivery per il middle management
Far scalare la Continuous Delivery per il middle managementFar scalare la Continuous Delivery per il middle management
Far scalare la Continuous Delivery per il middle management
Matteo Emili
 
Agile Project Framework
Agile Project FrameworkAgile Project Framework
Agile Project Framework
Simone Onofri
 
Project management: un must per imprese e professionisti
Project management: un must per imprese e professionistiProject management: un must per imprese e professionisti
Project management: un must per imprese e professionisti
Marco Turolla
 

Similar to Semplicemente Agile (20)

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...
 
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service Management
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service ManagementITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service Management
ITSMF Conferenza 2014 - L'officina Agile per innovare l'IT Service Management
 
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie AgiliDall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
 
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresa
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresaWorkshop di Business Design sul Business Model Canvas: dall'idea all'impresa
Workshop di Business Design sul Business Model Canvas: dall'idea all'impresa
 
Agile vs waterfall project management
Agile vs waterfall project managementAgile vs waterfall project management
Agile vs waterfall project management
 
Agile e Lean in sintesi
Agile e Lean in sintesiAgile e Lean in sintesi
Agile e Lean in sintesi
 
Reengineering agile
Reengineering agileReengineering agile
Reengineering agile
 
PMexpo16 - DPO - Workshop
PMexpo16 - DPO - WorkshopPMexpo16 - DPO - Workshop
PMexpo16 - DPO - Workshop
 
Agile working
Agile workingAgile working
Agile working
 
Introduzione alla Metodologia Scrumban
Introduzione alla Metodologia ScrumbanIntroduzione alla Metodologia Scrumban
Introduzione alla Metodologia Scrumban
 
Agile@scale: be SAFe!
Agile@scale: be SAFe!Agile@scale: be SAFe!
Agile@scale: be SAFe!
 
5 scrum dalle trincee - principi agili
5   scrum dalle trincee - principi agili5   scrum dalle trincee - principi agili
5 scrum dalle trincee - principi agili
 
Agile è il futuro? PMI Rome Webinar Presentation
Agile è il futuro? PMI Rome Webinar PresentationAgile è il futuro? PMI Rome Webinar Presentation
Agile è il futuro? PMI Rome Webinar Presentation
 
PMI Rome Agile Project Management è il futuro?
PMI Rome Agile Project Management è il futuro?PMI Rome Agile Project Management è il futuro?
PMI Rome Agile Project Management è il futuro?
 
Agile Lean Conference 2016 - Barengo _I principi del lean software development
Agile Lean Conference 2016 - Barengo _I principi del lean software developmentAgile Lean Conference 2016 - Barengo _I principi del lean software development
Agile Lean Conference 2016 - Barengo _I principi del lean software development
 
Agile for Genio
Agile for GenioAgile for Genio
Agile for Genio
 
Management per l'innovazione: la metodologia Agile (principi e applicazione)
Management per l'innovazione: la metodologia Agile (principi e applicazione)Management per l'innovazione: la metodologia Agile (principi e applicazione)
Management per l'innovazione: la metodologia Agile (principi e applicazione)
 
Far scalare la Continuous Delivery per il middle management
Far scalare la Continuous Delivery per il middle managementFar scalare la Continuous Delivery per il middle management
Far scalare la Continuous Delivery per il middle management
 
Agile Project Framework
Agile Project FrameworkAgile Project Framework
Agile Project Framework
 
Project management: un must per imprese e professionisti
Project management: un must per imprese e professionistiProject management: un must per imprese e professionisti
Project management: un must per imprese e professionisti
 

Semplicemente Agile

  • 1. 1 Semplicemente AGILE SUPSI – 29 Aprile 2014 Stefano Gallotti
  • 2. 2 La Storia L’idea Gli strumenti Il Progetto Le persone Qualche suggerimento AGENDA
  • 4. 4 Quecreek Mine Disaster Un ottimo esempio di collaborazione https://en.wikipedia.org/wiki/Quecreek_Mine_rescue
  • 5. 5 Modello evolutivo di una organizzazione
  • 6. «Abbiamo successo perché lavoriamo Insieme» Collaborazione 6
  • 7. «Abbiamo successo creando e mantenendo il controllo» Controllo 7
  • 8. «Abbiamo successo perché siamo i migliori» Competenza 8
  • 9. «Abbiamo successo perché facciamo crescere le persone che alimentano la nostra vision» Incubazione - Cultura 9
  • 11. Partiamo da 3 semplici verità E’ impossibile raccogliere tutti i requisiti all’inizio del progetto. Qualsiasi requisito andrai a raccogliere è sicuro che cambierà. Ci saranno sempre più cose da fare che soldi e tempo. 11
  • 12. Analizziamo il modello waterfall Vediamo i 6 punti che lo caratterizzano 1. Descrizione vaga e grossolana dei requisiti 2. Valutazione e stima di effort e risorse necessarie 3. Offerta economica (out of the box - tutto compreso e senza possibili modifiche) 4. Analisi Funzionale (dove capisci cosa è andato male al punto 2) 5. Analisi Architetturale (dove i dubbi del punto 4 diventano realtà) 6. Sviluppo e Test (dove il disastro assume proporzioni irreparabili) 12
  • 14. Principali cause del fallimento 14
  • 15. 15
  • 16. Stiamo scoprendo modi migliori di creare software, sviluppandolo e aiutando gli altri a fare lo stesso. Grazie a questa attività siamo arrivati a considerare importanti: 16 Gli individui e le interazioni più che i processi e gli strumenti Il software funzionante più che la documentazione esaustiva La collaborazione con il cliente più che la negoziazione dei contratti Rispondere al cambiamento più che seguire un piano Ovvero, fermo restando il valore delle voci a destra, consideriamo più importanti le voci a sinistra.
  • 17. I principi sottostanti al Manifesto Agile 17 La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua. Il software funzionante è il principale metro di misura di progresso. Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente. I processi agili promuovono uno sviluppo sostenibile. Sponsor, Sviluppatori e Utenti in grado di mantenere indefinitamente un ritmo costante. Consegnamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi. La continua attenzione all'eccellenza tecnica e alla buona progettazione esaltano l'agilità. Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto. La semplicità - l'arte di massimizzare la quantità di lavoro non svolto - è essenziale. Fondiamo i progetti su individui motivati. Diamo loro l'ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine. Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano. Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all'interno del team. A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.
  • 18. Agile timeline 18 Waterfall Predittivo: Fasi, document-centric, functional handoffs, fare bene la prima volta Spiral, RAD, RUP Iterativo: process framework, fasi, tool driven, complessi artifact Scrum, XP Adattivo: Iterativo, self-organizing team, value driven, transparente 20001970 19901980
  • 19. Facciamo un passo indietro... ANALISI DESIGN SVILUPPO TEST RILASCIO 19
  • 20. Come si può migliorare... ANALISI DESIGN SVILUPPO TEST RILASCIO 20
  • 22. Approach SCRUM Scrum è una delle tecniche agili più utilizzate. Sottolinea la comunicazione la collaborazione, software funzionante, e la flessibilità necessaria per adattarsi alle realtà aziendali emergenti. Tutti attributi che soffrono nel paradigma waterfall. 22 3 Ruoli • Product Owner • Team Member • Scrum Master 4 Cerimonie • Sprint Planning • Daily Meeting • Sprint review • Retrospective 3 Artifacts • Product backlog • Sprint backlog • Burn down chart
  • 23. I N V E S T ndipendent E’ più semplice se sono indipendenti ed è possibile eseguirle in qualsiasi ordine egotiable Non è un contratto esplicito, piuttosto i dettagli devono essere co-creati durante la definizione. aluable Deve essere utile non solo per qualcuno ma per il cliente stimable L’esatta stima non è necessaria fin dall’inizio ma sufficiente per classificare e definire l’implementazione mall Sufficientemente piccoli da permettere una stima accurata stable Ogni requisito deve essere testabile per essere considerato “Fatto” Invest in Requirement 23
  • 24. Gestire il Product Backlog Per avere un buon product backlog è necessario essere in grado di: • Gestire la priorità degli elementi • Scambiare requisiti con lo stesso effort • Cambiare l'ordine dei requisiti fissi • Migliorare la “definizione di fatto” in ogni iterazione. Ora si è pronti per definire e pianificare gli sprints • Partendo con la definizione della Timebox (Fixed Time) • Definendo le funzionalità rilasciate (Fixed Scope) In questa fase si ha la completa visibilità del progetto e si è in grado di stimarne i costi totali. 24
  • 25. AGILE Architecture Dal punto di vista architetturale, durante l'iterazione 0 l'obiettivo è identificare una direzione potenziale per la soluzione nonché eventuali rischi tecnici che potenzialmente saranno da affrontare. In questa fase non c’è bisogno di specifiche architetturali dettagliate. Definire l’architettura completa all'inizio di un progetto di sviluppo è infatti un rischio. Bisogna poter rispondere a domande critiche circa l’ambito, costi, tempi, e la strategia tecnica del progetto. 25
  • 26. 26 Envision Architetturale iniziale Condivisione Architettura con Stakeholder Aggiornamento deliverable architetturali Collaborazione con team di sviluppo Models Vision Models Vision Feedback L’architettura si aggiorna ed evolve con il tempo Scott W.Amber Architecture Evolution
  • 27. Data Architecture 27 • Classificando i data elements (data classification) • Considerando gli accessi ai dati (data security) • Identificando i Master Data (entity types, data elements, associations…) • Definendo e gestendo i metadati pertinenti ai Master Data includendo: • Primary Source(s) • Come i sistemi accedono ai MD • Lifecycles dei MD • Owners e/o data stewards • Adottando tools (repository and modeling) per gestire Master Data e metadati Come un approccio agile alla Data Architecture permette di ottenere un buon modello di MDM?
  • 29. Fixed Price, Fixed Scope 29 Manager: Voglio ordinare qualcosa, passare ad un'altra attività senza interruzioni e che si consegni il tutto per tempo. I progetti Fixed-price sono stati promossi con il pretesto di varie ottimizzazioni: Cliente: Voglio conoscere il costo del progetto. Fornitore: Voglio definire il costo totale della commessa. Venditore: Voglio definire la commessa per ottenere la commissione completa. La principale domanda diventa quindi:
  • 30. Incomprensioni su FPFS 30 Quando viene utilizzato un metodo agile i requisiti generali di rilascio del progetto non sono noti o stimati prima della prima iterazione. Con i metodi agili i requisiti sono sempre soggetti al cambiamento. Ci sono spesso due malintesi sul connubio FPFS ed i metodi agili: Anzi, in Scrum, già dall prima iterazione, è chiara la pianificazione dei rilasci (“product backlog”), in cui tutti i requisiti identificabili sono chiariti e stimati. Non è vero. Piuttosto, tutti i metodi agili offrono l'opportunità e il meccanismo per supportare l'apprendimento ed il cambiamento, ma non lo richiedono. Scrum può essere utilizzato con un backlog di fixed features da rilasciare. Non è vero.
  • 31. 31 FIXED ESTIMATED VALUE DRIVEN PLAN DRIVEN Features Cost Time Features Time Cost Project Approach
  • 34. Five dysfunction of a team 34 Assenza di fiducia Paura del conflitto Mancanza di impegno Evitare la responsabilità Disattenzione al risultato Patrik Lencioni
  • 35. 35 La barca che vince ha lo stesso vento delle altre… …ma ha un equipaggio migliore!
  • 37. Software Development Delivery Methods Agile best practice: • Analisys & Design • User Stories • Impact Mapping • Test-Driven Design • Behavior-Driven Development • Development • Scrum • Test & Delivery • Scrum • Continous Delivery 37
  • 40. Agile software development is one tool in a vast toolbox. But a fool with a tool is still a fool. 40

Editor's Notes

  1. Slide 4. Quecreek Mine Disaster 9 minatori a Queckreek nel 2002 in Pennsylvania - 77 ore intrappolati a 73 metri sottoterra La mappa usata per scavare non era aggiornata e questo ha portato a perforare la vecchia miniera abbandonata ed allagata. I soccorsi sono intervenuti repentinamente provando dapprima a estrarre l’acqua e poi pompando aria per i minatori. La super trivella usata per scavare la via di fuga si è fermata dopo 42 metri, quando hanno provato ad estrarla un componente rotto è rimasto nel tunnel impedendo ulteriori scavi. Era necessario un attrezzo speciale per rimuovere la punta rotta ed il tempo necessario a costruirlo è di norma 3 giorni. 95 operai hanno lavorato insieme ed in sole 3 ore hanno prodotto l’attrezzo. È stato quindi possibile procedere alla perforazione e quindi salvare i minatori.
  2. Modello di William Schneider Personale<->Impersonale Realtà ^-v Possibilità
  3. Cascata perpetua - Escher
  4. 12 ulteriori principi supportano i 4 valori fondamentali sottolineando: Sviluppo iterativo e la consegna le persone - sia per gli individui e le squadre collaborazione eccellenza tecnica
  5. Negli ultimi 20 anni le classiche metodologie di project management sono state riconosciute come inadatte a portare una percentuale sufficiente di progetti verso il completo successo. il modello lineare: suggerisce un approccio sequenziale allo sviluppo del software al livello del sistema e procede attraverso l’analisi, la progettazione, la codifica, il collaudo e il supporto. Spiral: framework attraverso cui si possono inquadrare tanti altri modelli. Prevede di analizzare ciclicamente (allontanandomi dal centro e aumentando i costi) tutte le fasi dello sviluppo. Questo processo e rappresentato mediante una spirale in cui ogni voluta rappresenta un completamento del sistema rispetto alla voluta precedente. Il software e sviluppato in modo ciclico (iterativo ed incrementale), producendo versioni via via piu complete del prodotto riducendo i rischi. RAD Rapid Application Development: punta a un ciclo di sviluppo molto breve. Adattamento “ad alta velocità” del modello sequenziale lineare, nel quale l’obiettivo di uno sviluppo rapido è raggiunto grazie all’uso di componenti. Si applica se i requisiti sono chiari e precisi. RUP Rational Unified Process: metamodello object-oriented, espresso in UML (Unified Modeling Language) . Prevede cicli di sviluppo, a loro volta scomposti in fasi fase iniziale elaborazione costruzione transizione Chi (ruoli) - Cosa (artefatti) - Quando (workflow) - Come (attività)
  6. Sulla base del feedback iniziale, è possibile aggiustare il tiro presto piuttosto che tardi. Soprattutto in progetti FPFS, volete sapere quanto male le cose stanno andando il più velocemente possibile I metodi agili migliorano questo tipo di feedback.
  7. Concentrarsi sulle persone, non la tecnologia o le tecniche Keep it simple Lavorare in modo iterativo e incrementale Rimboccarsi le maniche Guardate l'immagine intera Fai architettura attraente per i vostri clienti
  8. il ruolo del'architetto non è più lo stesso, evolve naturalmente in membro del gruppo che con una visione di insieme più ampia può dare indicazioni precise al team autogestito su come indirizzare gli sviluppi e come insieme collaborare alla definizione ed evoluzione della architettura. una collaborazione costante con team permette di, data la target architecture definita da business e management, capire nelle fasi evolutive deli progetti il punto boa e definire la distanza per poter indirizzare verso l’obiettivo.
  9. 1) Assenza di fiducia. Se i membri del team non si fidano l'un l'altro allora non possono essere completamente onesti tra loro . 2) La paura del conflitto. Senza fiducia la gente non avrà i dibattiti sani che sono necessari per arrivare ad una migliore pensiero attraverso decisioni. 3) Mancanza di impegno. Se la squadra non sono allineati dietro una decisione che poi i singoli membri che non erano d'accordo con la decisione finale alla fine sarà meno impegnati a tale decisione. 4) Evitare di responsabilità. Se non sono impegnati nel corso di azione, allora sono meno propensi a sentirsi responsabili (o tenere altre persone responsabili). 5) Disattenzione ai risultati. Di conseguenza, sono meno propensi a preoccuparsi dei risultati del gruppo (e invece concentrarsi sul raggiungimento dei propri obiettivi).
  10. User Story come (tipo di utente), voglio (obiettivo), così da (razionale) 3C Card-Conversation-Confirmation Impact Mapping Mind map che risponde a queste domanda: perchè-chi-come-cosa Perchè lo facciamo Chi aiuta e chi ostacola Come aiuti o Come ostacoli Cosa (Ambito) cosa possiamo fare per raggiungere l’obiettivo Behavior Driven user story: Specifiche del progetto agile - test driven: rappresenta il design BDD armonizza i due elementi Esempio Bonifico: 1 riferimento 2 contesti 3 specifiche trasferisco tra 2 conti addebito chi lo esegue accredito chi lo riceve trasferisco una somma superiore alla disponibilità non effettuo il bonifico