Agile Project Management: Integrare metodologie di progetto tradizionali con Agile - Agile Project...
-
Upload
codemotion -
Category
Technology
-
view
137 -
download
1
Transcript of Agile Project Management: Integrare metodologie di progetto tradizionali con Agile - Agile Project...
Simone Onofri, Claudia Spagnuolo
Agile Project Management: Integrare metodologie di progetto tradizionali con Agile
Agile Consortium International - Italian Chapter
ROME 27-28 march 2015
ROME 27-28 march 2015 – Speaker's name
• E’ una disciplina che si occupa di progetti e attività relative all’organizzazione e alla motivazione di team e di procedure e protocolli per ottenere obiettivi specifici.
• Un progetto è temporaneo ed è pensato per produrre un prodotto, un servizio, un risultato secondo determinati obiettivi così da poter trarre dei benefici o del valore aggiunto dal cambiamento.
• La natura temporanea è in contrasto con il Business As Usual (Operations) delle attività permanenti o semi-permanenti per il mantenimento in produzione di quanto fatto.
• La gestione di questi due aspetti è differente e richiede sia competenze tecniche e di gestione, oltre a specifiche strategie.
Cos’è il Project Management
ROME 27-28 march 2015 – Speaker's name
Un progetto è un’organizzazione temporanea che ha lo scopo di consegnare uno o più
prodotti come previsto da un Business Case predefinito.
Ma chi dice esattamente come deve essere organizzato?
Cosa è un Progetto?
ROME 27-28 march 2015 – Speaker's name
“Agile” è un termine “ombrello” che descrive un modo di lavorare collaborativo.
Cosa intendiamo per Agile?
AgilePF™AgilePM™
Scrum
SAFe™XP
CrystalAUP
RAD
DAD
ROME 27-28 march 2015 – Speaker's name
Perché essere Agili conviene?
Approccio Tradizionale
18%
32%
49%Hanno SuccessoSfidantiFalliscono
IT Project Success Survey 2013
Approccio Agile
6%
30%
64%
ROME 27-28 march 2015 – Speaker's name
“Le regole non sono necessariamente sacre, lo
sono i principi.”
Franklin D. Roosevelt
Principi di Management
ROME 27-28 march 2015 – Speaker's name
Un metodo “tradizionale”: PRINCE2®
PRINCE2®
Processi Tematiche
Principi Adattamento
1. Giustificazione commerciale continua2. Apprendimento dall’esperienza3. Ruoli e responsabilità predefiniti4. Gestione per fasi5. Gestione per eccezione6. Focalizzazione sui prodotti7. Adattamento all’ambiente di progetto
•Applicazione dei Principi•Adattamento delle Tematiche•Adattamento dei Processi•Vocabolario comune
1. Business Case2. Organizzazione3. Qualità4. Piani5. Rischio6. Cambiamento7. Stato di Avanzamento
1. Avvio di un Progetto (SU)2. Inizio di un Progetto (IP)3. Direzione di un Progetto (DP)4. Controllo di Fase (CS)5. Gestione del Limite di Fase (SB)6. Gestione della Consegna dei Prodotti (MP)7. Chiusura di un Progetto (CP)
ROME 27-28 march 2015 – Speaker's name
Gli individui e le interazioni più che i processi e gli strumenti
Il software funzionante più che la documentazione esaustiva
La collaborazione col 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.
Il manifesto Agile
ROME 27-28 march 2015 – Speaker's name
L'adattamento è così importante da essere anche espresso in un principio.
Per adattare PRINCE2 all'ambiente di progetto si applicano le seguenti regole: 1) principi si
applicano inalterati; 2) Le tematiche e i processi si adattano.
Esempio: la documentazione di progetto può essere corposa o ‘leggera’ secondo le esigenze, deve essere adattata (parliamo anche di report, log,
strumenti visuali etc.)
Nello stesso modo possiamo adattare PRINCE2 per essere Agile.
Adattare PRINCE2
ROME 27-28 march 2015 – Speaker's name
Le variabili che deve sempre monitorare e controllare
un buon Project Manager (o chi ne fa le veci) sono:
Costo, tempo, ambito (scope), qualità, rischio e benefici.
Cosa sono le variabili di progetto?
ROME 27-28 march 2015 – Speaker's name
Le monitoriamo e controlliamo, ma in maniera diversa…
In Agile non monitoriamo o controlliamo?
Approccio Tradizionale Approccio Agile
Qualità
Tempi
Funzio-‐nalità
Qualità
Costi Tempi
Funzio-‐nalitàCosti
Variabili
Fisse
ROME 27-28 march 2015 – Speaker's name
Abbiamo vari livelli di gestione: a quale livello possiamo/vogliamo applicare Agile e
dove i metodi tradizionali?
O:\Portfolio\Programma\Progetto\Team\Delivery\
Breve introduzione ai livelli di gestione
ROME 27-28 march 2015 – Speaker's name
Come e cosa integrare nella nostra ricetta?
Team
Progetto
Programma
Portfolio
Scrum
Delivery XP Lean*
DSDM® AgilePF®
DSDM®
AgilePgM®
DAD
DSDM® AgilePM®
SAFe™
PRINCE2®
MSP®
M_o_P®
DevOps**
ROME 27-28 march 2015 – Speaker's name
Un progetto deve avere un inizio e una fine prefissati con dei momenti iniziali in cui si
comprende cosa fare.
La durata totale del progetto va divisa in fasi temporali più brevi (fasi di gestione) che ne
favoriscono il controllo.
Se abbracciamo il concetto di Continuous Delivery possiamo considerare ogni fase un
rilascio, o ogni rilascio un progetto in se.
Il ciclo di vita Agile e Tradizionale
ROME 27-28 march 2015 – Speaker's name
In Agile i tempi sono prefissati (Timeboxing). PRINCE2 utilizza le tolleranze che, per il
tempo, possono essere impostate a 0 (e quindi avere una Timebox).
Il Timeboxing è una tecnica che trasforma la variabile “tempo” in una costante, fissando brevi periodi di tempo entro cui ottenere un determinato obiettivo. Alla fine del periodo
fissato il lavoro si ferma – anche se l'obiettivo non è stato raggiunto – e si fanno le
dovute valutazioni.
Gestire il tempo
ROME 27-28 march 2015 – Speaker's name
Quando si comincia un progetto - o la prima parte di sviluppo di un prodotto - si cerca di
capire meglio cosa andremo a produrre, un po’ come si gettano le fondamenta.
PRINCE2 ha l’Avvio e l’Inizio di un ProgettoAgilePF ha la Feasibility e Foundations
DAD ha l’InceptionScrum non ha una struttura specifica ma viene
spesso usato lo “Sprint 0” o l’”Architectural Spike”
La prima parte di un progetto
ROME 27-28 march 2015 – Speaker's name
Esempi di Gestione del tempo e Ciclo di Vita (DSDM e Scrum)
Increment Timebox #1
Kick-‐Off
Deployment Timebox
DevelopmentTimebox #1
[...]
[...]
Close-‐OutInvestigation Refinement Consolidation
•Objective•Content•Priorities•Responsibilities
Feasibility Foundations
Project Timebox
•Acceptance•Replanning*•Retrospective
•Investigation•Acceptance Criteria Definition
•Development itself•Documentation
•Final Work
© Sim
one Ono
fri -‐ 2014
[...]
Sprint
[...]DailyScrum
[...]Product Backlog
Refinement
SprintReview
Sprint Retrospectiv
e
[...]DailyScrum
[...]DailyScrum
SprintPlanning
[...]
ROME 27-28 march 2015 – Speaker's name
Esempi di Gestione del tempo e Ciclo di Vita (PRINCE2 e DAD)
© Sim
one Ono
fri -‐ 2015
Avvio di un Progetto
Inizio di un Progetto
Fasi di Consegna
Fasi di Consegna
Fasi di Consegna Finale
Inception Construction Transition
ROME 27-28 march 2015 – Speaker's name
Per avere la flessibilità così da gestire rischi e dagli imprevisti, in Agile si rimuovono elementi dall’ambito (es. funzionalità).
PRINCE2 e Agile Project Framework prevedono una tecnica per la gestione delle
priorità (MoSCoW) che può essere usata anche per gestire l’ambito all’interno di un
Piano.
E’ possibile utilizzare molte tecniche, ma è bene il de-scope sia fatto con criterio.
Gestire l’ambito (scope)
ROME 27-28 march 2015 – Speaker's name
Il ruolo del cambia con il modello di gestione adottato (Tradizionale o Agile) e poi viene ulteriormente adattato
alle esigenze dell’azienda per cui si lavora o ci si relaziona.
L’importante è, come sottolinea PRINCE2, che tutte le responsabilità necessarie siano associate ad almeno
ruolo e che questo venga assegnato ad almeno una persona. In Agile molte responsabilità sono delegate al team
di sviluppo… con tutti i vantaggi e gli svantaggi del caso.
Vediamo nello specifico il metodo PRINCE2 e il framework Agile Project Framework.
Ruolo del Projet Manager
ROME 27-28 march 2015 – Speaker's name
PRINCE2 - Organizzazione (molto) semplificata
Viene creata una gerarchia precisa. Il Project Manager può prendere decisioni autonome solo se queste gli consentono di restare all’interno delle tolleranze che gli vengono dall’alto. In caso contrario deve chiedere l’autorizzazione.
Gli stakeholder di progetto sono “rappresentanti” nella parte alta del team di progetto (Project Board).
Il livello di Delivery ha una struttura libera.
Project BoardExecutive Senior User Senior Supplier
Project Manager
Team Manager A (tradizionale)
Team Manager B (agile)
Team Alfa Team Bravo
Team di Gestione
del Progetto
Direzione del
Progetto
Delivery
ROME 27-28 march 2015 – Speaker's name
Agile Project Framework - OrganizzazioneGli stakeholder (es. chi lo finanzia, chi lo utilizzerà e chi lo sviluppa) sono ‘rappresentate’ o fanno parte del team di progetto anche a livello di delivery.
E’ previsto il ruolo del Project Manager (ma è diverso da quello di PRINCE2) e sono previsti anche ruoli di supporto.
Sono 13 ruoli con responsabilità differenti (possono essere accorpati).
Il Project Manager agisce a livello Progetto. E’ particolarmente cruciale il ruolo del Business Analyst.
©DSDM Consortium -‐ Reproduced by permission
ROME 27-28 march 2015 – Speaker's name
Will it blend?Il principio di PRINCE2 che si applica in questo caso è “Ruoli e Responsabilità predefinite”, l’importante è quindi che ognuno sappia quello che deve fare e a chi fa riferimento.
Altro aspetto importante dell’Integrazione è l’assegnazione delle varie “responsabilità” che vengono assegnate ai vari componenti del team.
E’ importante a chi si assegna una responsabilità, ma è ancora più importante che questa sia assegnata.
Corporate/Programme Management
Project Board
Project ManagerBusiness Visionary
Technical Coordinator
Agile “Functional”
Team
Business Analyst
Technical Advisors
Business Advisors
Traditional Team
Team Manager
SeniorUser
SeniorSupplier
Executive Sponsor
Coach / Facilitator
ROME 27-28 march 2015 – Speaker's name
1.Tenere in ordine e conservare la documentazione/gli artefatti 2.Informare su come sta procedendo il progetto e lo sviluppo 3.Collaborare con il resto dell’organizzazione aziendale per evitare gli sprechi o di trascurare aspetti importanti
4.Interagire e gestire i responsabili esterni al progetto come i fornitori o i clienti finali
5.Motivare il team 6.Assicurare che siano definite le aspettative di merito di ogni membro del team e relative gratificazioni.
7.Verificare che il prodotto (es. software) sia rilasciato come da aspettative.
8.Gestire i flussi di informazione 9.Definire il processo da applicare per rilasciare l’output (es. software)
10.Definire e gestire i controlli del progetto (es. Timebox, Modifiche ecc…)
Responsabilità…
ROME 27-28 march 2015 – Speaker's name
Le diapositive saranno disponibili su http://onofri.org/u/cmagile
i nostri contatti [email protected] [email protected]
ROME 27-28 march 2015 – Speaker's name
Leave your feedback on Joind.in!https://joind.in/event/view/3347