ClueMapper: uno strumento Open Source per la gestione di progetti software con metodologie agili
-
Upload
stefano-marchetti -
Category
Technology
-
view
3.621 -
download
1
description
Transcript of ClueMapper: uno strumento Open Source per la gestione di progetti software con metodologie agili
ClueMapper: uno strumento Open Source per la gestione di progetti software con metodologie agili
Linux Day 2009
Sabato 24 ottobre 2009 Ferrara
Chi siamo
Stefano Marchettistefano [AT] redturtle [DOT] net
Massimo Azzolinimassimo [AT] redturtle [DOT] net
Di cosa parliamo oggi
• Project management
• Metodologie agili
• Tool di gestione progetti con metodologie agili
PremessaLavoriamo per RedTurtle Technology (Ferrara).
RedTurtle fa consulenza/software e lavora con la “gestione della conoscenza”; questo si traduce in portali, intranet, gestione flussi documentali, ecc.
RedTurtle utilizza soprattutto tecnologie open (Python, Eclipse, cms Plone, OpenOffice, Linux).
Un po’ di numeri di RedTurtle
• Nasce nel 1999: 3 persone
• Nel 2009: 16 persone, di cui:
• 1 marketing/strategia/account
• 1 segreteria
• 1 grafico/developer
• 3 PM
• 10 developer
• massimo n° progetti gestiti contemporaneamente: 25-30*
* i progetti hanno dimensioni variabili: da 2 settimane uomo a 3 anni uomo
Cosa facciamo
Noi principalmente facciamo i project manager
Cioè?
Fare i project manager significa gestire
progetti
E fin qui ci arriviamo ...
Quindi?
Il PM principalmente si focalizza nel coordinamento e nel
controllo delle varie componenti e dei diversi attori
coinvolti con l'obiettivo di minimizzare la probabilità
di insuccesso.
Attività del PM
Alla ricerca dell’equilibrio1) riuscire a gestire contemporaneamente N progetti
2) mantenere alta la qualità dei servizi e del software prodotto
3) rispettare le scadenze
4) lavorare un numero ragionevole di ore
5) incassare più denaro di quanto se ne spende
5) non impazzirehttp://www.storace.it/wp-content/uploads/
2009/01/equilibrio.jpg
Alla ricerca dell’equilibrio1) riuscire a gestire contemporaneamente N progetti
2) mantenere alta la qualità dei servizi e del software prodotto
3) rispettare le scadenze
4) lavorare un numero ragionevole di ore
5) incassare più denaro di quanto se ne spende
5) non impazzirehttp://www.storace.it/wp-content/uploads/
2009/01/equilibrio.jpg
Sembra facile
Detto così sembra “quasi” fattibile ...
... ma può accadere ...
LA LEGGE
« Se qualcosa può andare storto, lo
farà. »
(Legge di Murphy)
LA LEGGE
« Se qualcosa può andare storto, lo
farà. »
(Legge di Murphy)
Per riassumere
Si potrebbe considerare il project management come la
risposta scientifica alla Legge di Murphy :)
Approccio metodologico al PM
Esistono diversi approcci metodologici al PM.
Esistono gli approcci agili, interattivi, incrementali e basati sulla successione di
fasi predefinite, ecc.
Metodologia agile nell’ingegneria software
Con metodo agile (o leggera) si intende un metodo che coinvolge
quanto più possibile il committente, ottenendo in tal modo una elevata
reattività alle sue richieste. http://www.bizzia.com/files/374/2007/12/
agile.jpg
Metodologia agile nell’ingegneria software
Con metodo agile (o leggera) si intende un metodo che coinvolge
quanto più possibile il committente, ottenendo in tal modo una elevata
reattività alle sue richieste. http://www.bizzia.com/files/374/2007/12/
agile.jpg
Obiettivo
L'obiettivo è la piena
soddisfazione del cliente e non
solo l'adempimento di un contratto. http://www.bizzia.com/files/374/2007/12/
agile.jpg
Obiettivo
L'obiettivo è la piena
soddisfazione del cliente e non
solo l'adempimento di un contratto. http://www.bizzia.com/files/374/2007/12/
agile.jpg
Agile manifesto
I principi su cui si basa una metodologia leggera che segua i punti indicati dall'Agile Manifesto,
sono solo 4http://www.ludicer.it/supereroi/fantastici-
quattro/fantastici4.jpg
Agile manifesto
I principi su cui si basa una metodologia leggera che segua i punti indicati dall'Agile Manifesto,
sono solo 4http://www.ludicer.it/supereroi/fantastici-
quattro/fantastici4.jpg
Agile manifesto principio 1
Parlare!
http://www.flickr.com/photos/timbomb/208817779/
Agile manifesto principio 1
Parlare!
http://www.flickr.com/photos/timbomb/208817779/
Agile manifesto principio 2
Rilasci frequenti
http://www.flickr.com/photos/bean/562112223/
Agile manifesto principio 2
Rilasci frequenti
http://www.flickr.com/photos/bean/562112223/
Agile manifesto principio 3
Collaborazione!
http://www.agorajesi.it/collaborazione.jpg
Agile manifesto principio 3
Collaborazione!
http://www.agorajesi.it/collaborazione.jpg
Agile manifesto principio 4
Pronti!
http://alebolo.files.wordpress.com/2009/01/partenza1.jpg
Agile manifesto principio 4
Pronti!
http://alebolo.files.wordpress.com/2009/01/partenza1.jpg
Ma è necessario tutto questo?
Perchè non basta cercare d’avere dal cliente specifiche scritte per poter scrivere codice da
consegnare dopo un pò di tempo sperando di non
“litigare” troppo con il cliente?
Perchè può succedere questo! Ricordate la legge di Murphy!
http://4.bp.blogspot.com/_dadkSDOYSMo/RyMvduPsV-I/AAAAAAAAAAU/kKSgZEOyiiQ/s1600-h/Project+Management+Illustrated+with+a+Tree+and+a
+Swing.jpg
Metodi agili: iterazioni (1)
La gran parte dei metodi agili tentano di ridurre il rischio di fallimento sviluppando il software in finestre di tempo limitate chiamate iterazioni che, in genere,
durano qualche settimana.
http://www.fz-juelich.de/leap05/main/images/scheduler.jpg
Metodi agili: iterazioni (1)
La gran parte dei metodi agili tentano di ridurre il rischio di fallimento sviluppando il software in finestre di tempo limitate chiamate iterazioni che, in genere,
durano qualche settimana.
http://www.fz-juelich.de/leap05/main/images/scheduler.jpg
Metodi agili: iterazioni (2)
Ogni iterazione è un piccolo progetto a sé stante e deve contenere tutto ciò che è necessario per rilasciare un piccolo incremento nelle funzionalità
del software: pianificazione (planning), analisi dei requisiti,
progetto, implementazione, test e documentazione.
User Story
Le User Story sono un semplice modo per
raccogliere i requirements di un
progetto; una alternativa alla scrittura di lunghe e
dettagliate specifiche http://www.yeshua.it/images/papiro.jpg
User Story
Le User Story sono un semplice modo per
raccogliere i requirements di un
progetto; una alternativa alla scrittura di lunghe e
dettagliate specifiche http://www.yeshua.it/images/papiro.jpg
User Story
Come utente [ruolo dell’utente]
voglio fare [scopo]
per poter [motivo]http://www.agileadvice.com/archives/AgileClassroom-MostRecent-
EndOfClass.jpg
Metodologie agili - user Story: un
esempio“C'era una volta, in un paese lontano, un gentiluomo vedovo
che viveva in una bella casa con la sua unica figlia.
Egli donava alla sua adorata bambina qualsiasi cosa ella desiderasse: bei vestiti, un
cucciolo, un cavallo.”http://www.imageclick.altervista.org/cartoni
%20animati-file/1236001171814_cenerentola.jpg
Metodologie agili - user Story: un
esempio“C'era una volta, in un paese lontano, un gentiluomo vedovo
che viveva in una bella casa con la sua unica figlia.
Egli donava alla sua adorata bambina qualsiasi cosa ella desiderasse: bei vestiti, un
cucciolo, un cavallo.”http://www.imageclick.altervista.org/cartoni
%20animati-file/1236001171814_cenerentola.jpg
User Story: un esempio
“Come utente
voglio poter visualizzare l’elenco dei titoli possibili dei libri da
acquistare”
Quindi?
Abbiamo capito, a grandi linee, cosa sono le metologie
agili.
E adesso come le applichiamo?
Che strumenti può usare il
PM?Nessun strumento: si va a
braccio!
www.eln.uniroma2.it/mimeg/munch_urlo_big.jpg
Che strumenti può usare il
PM?Nessun strumento: si va a
braccio!
www.eln.uniroma2.it/mimeg/munch_urlo_big.jpg
Che strumenti può usare il
PM?Foglio di calcolo.
http://www.eduverse.org/images/busy_person.jpg
Che strumenti può usare il
PM?Foglio di calcolo.
http://www.eduverse.org/images/busy_person.jpg
Che strumenti può usare il
PM?Microsoft Project
www.albanesi.it/Mente/Imma/indaffarato1.jpg
Che strumenti può usare il
PM?Microsoft Project
www.albanesi.it/Mente/Imma/indaffarato1.jpg
Che strumenti può usare il
PM?SAAS (Software As A Service)
exacterm.files.wordpress.com/2009/05/saas.jpg
Che strumenti può usare il
PM?SAAS (Software As A Service)
exacterm.files.wordpress.com/2009/05/saas.jpg
Software Saas?
Alcuni sono trendy
Alcuni sono trendy
Altri richiedono molto impegno
Altri richiedono molto impegno
Altri con un taglio XP
Altri con un taglio XP
Tutti “costicchiano”
Tutti “costicchiano”
Tutti “costicchiano”
E i MIEI dati dove li tengono?
http://www.flickr.com/photos/mikereys/2898906857/
E i MIEI dati dove li tengono?
http://www.flickr.com/photos/mikereys/2898906857/
Fermi tutti!
Ok, serve uno strumento per il
PM.
E i developer? share.skype.com/sites/en/developer.jpg
Fermi tutti!
Ok, serve uno strumento per il
PM.
E i developer? share.skype.com/sites/en/developer.jpg
Di solito i developer usano un sistema di
versionamento del codice e un sistema di
gestione ticket
http://www.sdtimes.com/blog/image.axd?
picture=2009%2F3%2Fsubversion_logo-384x332.png
http://www.edgewall.org/gfx/trac_logo.png
Molti developer usano Subversion e Trac
Da cosa di parte
Di solito i developer usano un sistema di
versionamento del codice e un sistema di
gestione ticket
http://www.sdtimes.com/blog/image.axd?
picture=2009%2F3%2Fsubversion_logo-384x332.png
http://www.edgewall.org/gfx/trac_logo.png
Molti developer usano Subversion e Trac
Da cosa di parte
Trac: caratteristiche
• Web-based
• Open source
• Wiki
• Issue tracking
• Interfaccia su Subversion
• Possibilità di personalizzare i campi e le ricerche per la costruzione di report dello stato del progetto
• Molti plug-in
Trac: caratteristiche
• Web-based
• Open source
• Wiki
• Issue tracking
• Interfaccia su Subversion
• Possibilità di personalizzare i campi e le ricerche per la costruzione di report dello stato del progetto
• Molti plug-in
Ma perchè non estendiamo
Trac?
http://www.stefanoapuzzo.it/html/images/stories/lampadina0.gif
Ma perchè non estendiamo
Trac?
http://www.stefanoapuzzo.it/html/images/stories/lampadina0.gif
CluemapperClueMapper è una versione “pompata” di Trac. Offre:
• wiki
• gestione ticket
• integrazione con sistemi di versionamento
• gestione delle tempistiche
• metodologie agili: iterazioni e user story con interfaccia D&D
CluemapperClueMapper è una versione “pompata” di Trac. Offre:
• wiki
• gestione ticket
• integrazione con sistemi di versionamento
• gestione delle tempistiche
• metodologie agili: iterazioni e user story con interfaccia D&D
Cluemapper plugin
• Itteco (whiteboard & storie)
• ClueTimer (quanto ci hai messo?)
• TracTags (project manager 2.0)
• TracWysiwyg (per fighetti anti-wiki)
• TimingAndEstimation (quanto ci metti?)
whiteboard
tempo!
tag tag tag
se wiki è così scomodo :)
se wiki è così scomodo :)
dammi una stima
Live demo!
http://www.rockaction.it/e107_plugins/coppermine_menu/albums/userpics/10004/normal_queen%20%2B%20paul%20rodgers_live%20at%20palalottomatica_26%2009%202008%20027.jpg
Live demo!
http://www.rockaction.it/e107_plugins/coppermine_menu/albums/userpics/10004/normal_queen%20%2B%20paul%20rodgers_live%20at%20palalottomatica_26%2009%202008%20027.jpg
Al volo: Bologna XP User Group
http://www.xpug.it/bologna-xpug.html
http://blog.hubdirector.com/italian-agile-day-2007/
Al volo: Bologna XP User Group
http://www.xpug.it/bologna-xpug.html
http://blog.hubdirector.com/italian-agile-day-2007/
Italian Agile Day 2009!
http://www.agileday.it/
Italian Agile Day 2009!
http://www.agileday.it/
Disclaimer
Disclaimer
“Nessun developer è stato maltrattato durante la scrittura di questa presentazione”.
Contatti
Massimo Azzolinimassimo [AT] redturtle [DOT] net
Stefano Marchettistefano [AT] redturtle [DOT] net
Domande?
Domande?