Agile Project Management: Integrare metodologie di progetto tradizionali con Agile - Agile Project...

33
Simone Onofri, Claudia Spagnuolo Agile Project Management: Integrare metodologie di progetto tradizionali con Agile Agile Consortium International - Italian Chapter ROME 27-28 march 2015

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

Il menù di questa sera

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

Il Ciclo di Vita “giusto” per il tuo progetto

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

La struttura del Team

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

Per chi non ne ha abbastanza

ROME 27-28 march 2015 – Speaker's name

Libri su Project Management “integrabile”

ROME 27-28 march 2015 – Speaker's name

Libri su Agile "integrabili"

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

ROME 27-28 march 2015 – Speaker's name

Leave your feedback on Joind.in!https://joind.in/event/view/3347