Agile Project Management
Methods per progetti IT
The difference between failure and success is the difference
between doing something almost right and doing something right.
− Benjamin Franklin
Le metodologie di Agile project management sono
sempre più presenti nel vocabolario delle
moderne organizzazioni per affrontare progetti
nell’ambito dell’Information Technology.
Queste metodologie nascono per snellire i processi
High ceremony come il PMBOK o il CMM
tradizionalmente associati a domini della
software engineering e si concentrano sulle
attività legate al software piuttosto che sulle
persone.
Le organizzazioni con processi affermati definiscono
e controllano le attività in maniera molto
rigorosa, spesso usando esperienza diretta.
Si parla di metodi agili nel contesto di un
insieme di attività leggere (lightweight) che
gestiscono tutte le fasi di sviluppo o
acquisizione del software.
Le attività sono indirizzate in parte ad aspetti
manageriali, ma principalmente alla creazione
degli artefatti software.
Gli approcci agili sono la naturale evoluzione
dello sviluppo del software, ma come possono
essere applicati alle tradizionali attività di
project management? Quali semplificazioni
sono appropriate per ogni specifico dominio?
Weight vs Agility
Lightweight e Agile non sono termini
intercambiabili.
Lightweight descrive la pesantezza del processo
e dei suoi artefatti: la quantità di artefatti che
non hanno un valore aggiunto.
Agility descrive il comportamento dei
partecipanti e la loro abilità nel muoversi e
modificare l’attività in situazioni impreviste.
Weight vs Agility
Rendere un processo più leggere eliminando il
“peso indesiderato” è una pratica standard in
molte discipline ingegneristiche, ma nel
contesto del project management questa
pratica è inappropriata e possibile fonte di
fallimenti nei progetti.
Project Management Framework
In accordo con la Software Engineering Institute
(SEI), una metodologia deve possedere certi
attributi in modo da rispettare i requisiti per
essere chiamata tale.
Gli attributi sono in relazione tra loro mentre
l’approccio è basato sulla comunicazione e sugli
aspetti centrati sulle persone del project
management.
Con questa metodologia è possibile costruire un
project management Agile.
Project Management Framework
Relazioni tra le attività del Project Management
Agile Project Management
L’applicazione di una metodologia Agile in
un’organizzazione già esistente e strutturata
incontra alcuni ostacoli:
• I processi legacy devono far posto ai nuovi
processi agili.
• Le lacune dei processi legacy devono essere
riempite con i nuovi processi mantenendo
l’integrità fornita dai vecchi.
Agile Project Management
Elementi comuni tra i metodi
E’ possibile definire una lista di passi comuni tra i vari
metodi di Agile Project Management, usando la figura
precedente come framework.
Thread
Compliance
Raccolta dei requisiti
E’ necessario un metodo di raccolta dei requisiti
Sviluppo o recupero del software
Sviluppare o reperire il software come da requisiti
Testing
Test strutturato del software
Gestione del personale
Metodi per la gestione del personale
Project Management
Metodi per la definizione di procedure,
misurazione di progressi, feedback e cambiamenti
Agile Project Management
Agile come tassonomia
Prima di scegliere una metodologia di sviluppo è utile capire
che tipo di software si sta per sviluppare.
Quale metodologia di project management è più
appropriata per il particolare problema di dominio?
Tipo
Attributi
Management Information Systems Software di supporto al business
Sistemi in appalto
Sviluppo per organizzazioni
Systems software
Sistemi di controllo di device ed embedded
Software commerciali
Software venduto su ampi mercati
Software militari
Servizi per militari
End User Software
Piccole applicazioni per usi personali
Web Applications
Applicazioni di migrazione, multimedia,
transazioni o interfacce web in generale
Agile Project Management
Fondamenti
Un framework per sviluppare processi agili di project
management dovrebbe fornire linee guida più che
regole. Questo framework fornisce infatti una larga
serie di raccomandazioni e si basa su due
fondamenti:
• The Software Program Managers Network Nine Best
Practices – che forniscono linee guida per le attività
giornaliere.
• Il framework Agile Modeling di Scott Ambler – un
vasto framework per processi agili in ambito di
sviluppo del software.
Agile Project Management
Linee guida
Le linee guida affrontano due aspetti
fondamentali dell’Agile Project Managment:
• Valori dell’Agile Project Mangement.
• Applicazione dei principi dell’Agility.
Agile Project Management
Linee guida
Valori dell’Agile Project Mangement
• Comunicazione: deve essere continua,
all’interno e all’esterno, tra tutti gli
stakeholders.
• Semplicità: le soluzioni devono essere facili e
facilmente misurabili.
• Feedback: usare il feedback come strumento
principale per l’Agility.
Agile Project Management
Linee guida
• Coraggio: decisioni e cambiamenti vanno
affrontati con coraggio perché parte di ogni
progetto.
• Umiltà: i migliori project manager sanno di
non essere a conoscenza di tutto; ogni
stakeholder porta un valore aggiunto al
progetto.
Agile Project Management
Linee guida
Applicare i principi agili
• Assumere semplicità: creare solo artefatti utili
per l’immediato beneficio degli stakeholder.
• Adattarsi ai cambiamenti: i requisiti possono
evolvere nel tempo, cambiare quindi i punti di
vista e i criteri di successo del progetto.
• Pensare al prossimo sforzo: dopo la consegna,
un progetto può ancora essere un fallimento.
Agile Project Management
Linee guida
• Cambiamenti incrementali: affrontare il
sistema a piccole porzioni.
• Massimizzare il valore degli stakeholder:
investono risorse e si aspettano che il risultato
incontri i loro requisiti.
• Gestire con criterio: per ogni artefatto
identificare per chi ha valore e crearlo
secondo questo proposito.
Agile Project Management
Linee guida
• Visioni multiple del progetto: fornire differenti
visioni del progetto per differenti ascoltatori.
• Feedback frequenti: minimizzare il tempo tra
l’azione e il suo feedback.
• Creare software è il goal principale: tralasciare
documentazione, modelli o artefatti estranei
alle specifiche dei requisiti; pesare ogni
attività non connessa ai goal del progetto.
Agile Project Management
Linee guida
• Viaggiare leggeri: ogni artefatto va mantenuto
per tutto il ciclo di sviluppo, quindi bilanciare
lo sforzo per mantenerlo con il suo valore.
Agile Project Management
Raccomandazioni
• Cambiamenti, project plan e artefatti devono
essere votati all’agilità.
• Sforzarsi di ottenere feedback frequenti per
assicurarsi che il progetto segua i bisogni degli
stakeholder.
• Gestire con criterio e fare solo azioni con
valore aggiunto.
• Viaggiare leggeri scaricando artefatti senza
valore.
Riferimenti
• The story of managing projects, Greenwood
Press
• The Software Program Managers Network
Nine Best Practices, www.spmn.com
• Agile Modeling, Scott Ambler,
www.agilemodeling.com
• www.agilemanagement.net
Scarica

Agile Project Management Methods per progetti IT