SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
Parte 4
Agile e Open Source

05/04/07

44
Lo sviluppo Open Source
Letteralmente significa sviluppare software che
adotta utilizzare una licenza che soddisfa i
requisiti OSI
http://www.opensource.org/docs/definition.php

In realtà facciamo riferimento allo sviluppo di
tipo collaborativo nato con il Free Software

05/04/07

Agile @ ERLUG

45
Lo sviluppo Open Source
Lo sviluppo Open Source oggi:
1. Piccoli progetti (solitamente Free)
Un unico mantainer: dittatore buono
2. Progetti in carico ad ampi gruppi che si
occupano di dare linee organizzative,
raccogliere fondi, difendere legalmente
es: Apache Foundation, GNOME Foundation
3. Progetti derivati dalla «liberazione» di
software proprietari di aziende.
05/04/07

Agile @ ERLUG

46
Lo sviluppo Open Source
Due diversi aspetti:
●

Volontariato

●

Collaborazione tra aziende

...motivazione e valori condivisi dalle comunità
molto differenti tra loro

05/04/07

Agile @ ERLUG

47
Lo sviluppo Open Source è Agile ?

?
Prendiamo come riferimento
The Cathedral and the Bazaar
E.S. Raymond

05/04/07

Agile @ ERLUG

48
Lo sviluppo Open Source è Agile ?
E.S. Raymond:
1. Every good work of software starts by
scratching a developer's personal itch
6. Treating your users as co-developers is your
least-hassle route to rapid code improvement
and effective debugging

Agile manifesto:
« collaborazione con il cliente ... »
05/04/07

Agile @ ERLUG

49
Lo sviluppo Open Source è Agile ?
Il software OS ha sempre prodotto ottimi
strumenti per sviluppatori
Il software OS ha a lungo fallito quando il
cliente era l'utente desktop...
Solo recentemente ha avvicinato i clienti
desktop:
http://usability.gnome.org
05/04/07

http://usability.kde.org

Agile @ ERLUG

50
Lo sviluppo Open Source è Agile ?
E.S. Raymond:
7. Release early. Release often. And listen to your
customers.

Agile manifesto:
«rispondere al cambiamento ... »
Scrum:
«2-4 week iterations»

OK!

XP:
05/04/07

«1 week iterations»@ ERLUG
Agile

51
Lo sviluppo Open Source è Agile ?
E.S. Raymond:
19. Provided the development coordinator has a
communications medium at least as good as the
Internet, and knows how to lead without coercion,
many heads are inevitably better than one

Agile:
«la comunicazione faccia a faccia è il mezzo
più efficace»

05/04/07

Agile @ ERLUG

52
Lo sviluppo Open Source è Agile ?
Internet vs face-2-face
●

Internet è meno efficace

Però...
●
●

05/04/07

Internet ha un ottima memoria
Internet può essere letto da moltissime persone

Agile @ ERLUG

53
Lo sviluppo Open Source è Agile ?
Nel mondo del software OS:
Se ci incontriamo un paio di volte all'anno è già molto
●

Utilizzare strumenti «pubblici» e «con memoria»:
+ Wiki, + mailing list, + IRC, - mail personali

●

Non aver paura di parlare
+ skype/open wengo, - mail personali

Molto lavoro è offerto da volontari...
●

Utilizzare strumenti di comunicazione pro-attivi:
Wiki con RSS, mailing list dei Commit

05/04/07

Agile @ ERLUG

54
Altri problemi in un team distribuito

●

Mantenere alta l'attenzione sugli obiettivi a breve
termine ...e premiarne il raggiungimento
Elenco TODO, Mail settimanali di progresso delle
attività (burn-down chart?)

●

Conoscersi almeno una volta è molto importante!
Partecipazione a conference, etc...

●

Il mantainer deve verificare la qualità del codice:
non solo code standards, ma test e «puzze»

05/04/07

Agile @ ERLUG

55
Altri problemi in un team distribuito
In remoto diventa difficile fare pair-programming
Ma non è impossibile!
«Remote pair-programming»
●
VNC (o simili)
●
VOIP (Skype/OpenWengo)
●
magari anche microfono e Webcam
Non è come il pair-programming ma...

05/04/07

http://www.quinary.com/pagine/downloads/files/Resources/
XPRemotePairProgrammingPresentation.pdf
http://www.quinary.com/pagine/downloads/files/Resources/
XPRemotePairProgrammingPresentation.avi
Agile @ ERLUG

56
Compito per casa...
Ci sono progetti OS che utilizzano
esplicitamente alcune pratiche Agili?
Quale punto di partenza:
Eclipse
http://www.infoq.com/news/Eclipse-Callisto-AgileSuccess

Mono
http://mono.ximian.com/tests/displayTestResults.php

...
05/04/07

Agile @ ERLUG

57
Agile e Open Source

Domande ?

05/04/07

58

Contenu connexe

Similaire à Agile e Open Source

OpenOffice: cos'è, chi c'è dietro e con quale modello di business
OpenOffice: cos'è, chi c'è dietro e con quale modello di businessOpenOffice: cos'è, chi c'è dietro e con quale modello di business
OpenOffice: cos'è, chi c'è dietro e con quale modello di businessmadero
 
Software Libero e LibreOffice (Liceo lezione 1)
Software Libero e LibreOffice (Liceo lezione 1)Software Libero e LibreOffice (Liceo lezione 1)
Software Libero e LibreOffice (Liceo lezione 1)LibreItalia
 
Software libero e LibreOffice al liceo
Software libero e LibreOffice al liceoSoftware libero e LibreOffice al liceo
Software libero e LibreOffice al liceosonia montegiove
 
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni Sociali
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni SocialiOpen P2P Design. Metadesign per Attività Collaborative e Innovazioni Sociali
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni SocialiMassimo Menichinelli
 
Beni Culturali 2.1 Introduzione Os
Beni Culturali 2.1 Introduzione OsBeni Culturali 2.1 Introduzione Os
Beni Culturali 2.1 Introduzione OsCaterina Policaro
 
Il mio software è più libero del tuo- handout
Il mio software è più libero del tuo- handoutIl mio software è più libero del tuo- handout
Il mio software è più libero del tuo- handoutMassimo Carnevali
 
AICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMAICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMFederico Gobbo
 
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupalDay
 
Più tempo per pensare al successo.pdf
Più tempo per pensare al successo.pdfPiù tempo per pensare al successo.pdf
Più tempo per pensare al successo.pdfGianluca Vaglio
 
Come partecipare ad FE
Come partecipare ad FECome partecipare ad FE
Come partecipare ad FEEPOCA
 
Software Libero e LibreOffice
Software Libero e LibreOfficeSoftware Libero e LibreOffice
Software Libero e LibreOfficeLibreItalia
 
Elearning: costruire contenuti con software e formati liberi
Elearning: costruire contenuti con software e formati liberiElearning: costruire contenuti con software e formati liberi
Elearning: costruire contenuti con software e formati liberiAntonio Faccioli
 
Come realizzare una distribuzione Linux per innovare e trovare lavoro
Come realizzare una distribuzione Linux per innovare e trovare lavoroCome realizzare una distribuzione Linux per innovare e trovare lavoro
Come realizzare una distribuzione Linux per innovare e trovare lavoroAlessio Fattorini
 
Open source un'opportunità di business
Open source un'opportunità di businessOpen source un'opportunità di business
Open source un'opportunità di businessRoberto Falla
 

Similaire à Agile e Open Source (20)

Drupal per la ricerca
Drupal per la ricercaDrupal per la ricerca
Drupal per la ricerca
 
Open Source
Open SourceOpen Source
Open Source
 
OpenOffice: cos'è, chi c'è dietro e con quale modello di business
OpenOffice: cos'è, chi c'è dietro e con quale modello di businessOpenOffice: cos'è, chi c'è dietro e con quale modello di business
OpenOffice: cos'è, chi c'è dietro e con quale modello di business
 
Software Libero e LibreOffice (Liceo lezione 1)
Software Libero e LibreOffice (Liceo lezione 1)Software Libero e LibreOffice (Liceo lezione 1)
Software Libero e LibreOffice (Liceo lezione 1)
 
Software libero e LibreOffice al liceo
Software libero e LibreOffice al liceoSoftware libero e LibreOffice al liceo
Software libero e LibreOffice al liceo
 
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni Sociali
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni SocialiOpen P2P Design. Metadesign per Attività Collaborative e Innovazioni Sociali
Open P2P Design. Metadesign per Attività Collaborative e Innovazioni Sociali
 
Open source per la didattica
Open source per la didatticaOpen source per la didattica
Open source per la didattica
 
Software libero, PA e Terzo Settore
Software libero, PA e Terzo SettoreSoftware libero, PA e Terzo Settore
Software libero, PA e Terzo Settore
 
Beni Culturali 2.1 Introduzione Os
Beni Culturali 2.1 Introduzione OsBeni Culturali 2.1 Introduzione Os
Beni Culturali 2.1 Introduzione Os
 
Il mio software è più libero del tuo- handout
Il mio software è più libero del tuo- handoutIl mio software è più libero del tuo- handout
Il mio software è più libero del tuo- handout
 
AICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMAICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAM
 
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
 
Più tempo per pensare al successo.pdf
Più tempo per pensare al successo.pdfPiù tempo per pensare al successo.pdf
Più tempo per pensare al successo.pdf
 
Fabio Bottega, Ditedi
Fabio Bottega, DitediFabio Bottega, Ditedi
Fabio Bottega, Ditedi
 
Come partecipare ad FE
Come partecipare ad FECome partecipare ad FE
Come partecipare ad FE
 
Software Libero e LibreOffice
Software Libero e LibreOfficeSoftware Libero e LibreOffice
Software Libero e LibreOffice
 
Open Source: Ready To Run
Open Source: Ready To RunOpen Source: Ready To Run
Open Source: Ready To Run
 
Elearning: costruire contenuti con software e formati liberi
Elearning: costruire contenuti con software e formati liberiElearning: costruire contenuti con software e formati liberi
Elearning: costruire contenuti con software e formati liberi
 
Come realizzare una distribuzione Linux per innovare e trovare lavoro
Come realizzare una distribuzione Linux per innovare e trovare lavoroCome realizzare una distribuzione Linux per innovare e trovare lavoro
Come realizzare una distribuzione Linux per innovare e trovare lavoro
 
Open source un'opportunità di business
Open source un'opportunità di businessOpen source un'opportunità di business
Open source un'opportunità di business
 

Plus de Roberto Bettazzoni

Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup RemotoGiornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup RemotoRoberto Bettazzoni
 
Complexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test typesComplexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test typesRoberto Bettazzoni
 
Why you need to change your way of working
Why you need to change your way of workingWhy you need to change your way of working
Why you need to change your way of workingRoberto Bettazzoni
 
TDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding DojoTDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding DojoRoberto Bettazzoni
 
Presentation of agile engineering practices
Presentation of agile engineering practicesPresentation of agile engineering practices
Presentation of agile engineering practicesRoberto Bettazzoni
 
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano) Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano) Roberto Bettazzoni
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme ProgrammingRoberto Bettazzoni
 
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Roberto Bettazzoni
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)Roberto Bettazzoni
 
Programmazione android per esseri umani
Programmazione android per esseri umaniProgrammazione android per esseri umani
Programmazione android per esseri umaniRoberto Bettazzoni
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanRoberto Bettazzoni
 

Plus de Roberto Bettazzoni (15)

Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup RemotoGiornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
 
Complexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test typesComplexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test types
 
Why you need to change your way of working
Why you need to change your way of workingWhy you need to change your way of working
Why you need to change your way of working
 
TDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding DojoTDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding Dojo
 
Presentation of agile engineering practices
Presentation of agile engineering practicesPresentation of agile engineering practices
Presentation of agile engineering practices
 
Unit test in a nutshell
Unit test in a nutshellUnit test in a nutshell
Unit test in a nutshell
 
Presentation TDD in Python
Presentation TDD in PythonPresentation TDD in Python
Presentation TDD in Python
 
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano) Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme Programming
 
Esempio di code kata
Esempio di code kataEsempio di code kata
Esempio di code kata
 
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)
 
The BDD live show (ITA)
The BDD live show (ITA)The BDD live show (ITA)
The BDD live show (ITA)
 
Programmazione android per esseri umani
Programmazione android per esseri umaniProgrammazione android per esseri umani
Programmazione android per esseri umani
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and Kanban
 

Agile e Open Source

  • 1. Parte 4 Agile e Open Source 05/04/07 44
  • 2. Lo sviluppo Open Source Letteralmente significa sviluppare software che adotta utilizzare una licenza che soddisfa i requisiti OSI http://www.opensource.org/docs/definition.php In realtà facciamo riferimento allo sviluppo di tipo collaborativo nato con il Free Software 05/04/07 Agile @ ERLUG 45
  • 3. Lo sviluppo Open Source Lo sviluppo Open Source oggi: 1. Piccoli progetti (solitamente Free) Un unico mantainer: dittatore buono 2. Progetti in carico ad ampi gruppi che si occupano di dare linee organizzative, raccogliere fondi, difendere legalmente es: Apache Foundation, GNOME Foundation 3. Progetti derivati dalla «liberazione» di software proprietari di aziende. 05/04/07 Agile @ ERLUG 46
  • 4. Lo sviluppo Open Source Due diversi aspetti: ● Volontariato ● Collaborazione tra aziende ...motivazione e valori condivisi dalle comunità molto differenti tra loro 05/04/07 Agile @ ERLUG 47
  • 5. Lo sviluppo Open Source è Agile ? ? Prendiamo come riferimento The Cathedral and the Bazaar E.S. Raymond 05/04/07 Agile @ ERLUG 48
  • 6. Lo sviluppo Open Source è Agile ? E.S. Raymond: 1. Every good work of software starts by scratching a developer's personal itch 6. Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging Agile manifesto: « collaborazione con il cliente ... » 05/04/07 Agile @ ERLUG 49
  • 7. Lo sviluppo Open Source è Agile ? Il software OS ha sempre prodotto ottimi strumenti per sviluppatori Il software OS ha a lungo fallito quando il cliente era l'utente desktop... Solo recentemente ha avvicinato i clienti desktop: http://usability.gnome.org 05/04/07 http://usability.kde.org Agile @ ERLUG 50
  • 8. Lo sviluppo Open Source è Agile ? E.S. Raymond: 7. Release early. Release often. And listen to your customers. Agile manifesto: «rispondere al cambiamento ... » Scrum: «2-4 week iterations» OK! XP: 05/04/07 «1 week iterations»@ ERLUG Agile 51
  • 9. Lo sviluppo Open Source è Agile ? E.S. Raymond: 19. Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one Agile: «la comunicazione faccia a faccia è il mezzo più efficace» 05/04/07 Agile @ ERLUG 52
  • 10. Lo sviluppo Open Source è Agile ? Internet vs face-2-face ● Internet è meno efficace Però... ● ● 05/04/07 Internet ha un ottima memoria Internet può essere letto da moltissime persone Agile @ ERLUG 53
  • 11. Lo sviluppo Open Source è Agile ? Nel mondo del software OS: Se ci incontriamo un paio di volte all'anno è già molto ● Utilizzare strumenti «pubblici» e «con memoria»: + Wiki, + mailing list, + IRC, - mail personali ● Non aver paura di parlare + skype/open wengo, - mail personali Molto lavoro è offerto da volontari... ● Utilizzare strumenti di comunicazione pro-attivi: Wiki con RSS, mailing list dei Commit 05/04/07 Agile @ ERLUG 54
  • 12. Altri problemi in un team distribuito ● Mantenere alta l'attenzione sugli obiettivi a breve termine ...e premiarne il raggiungimento Elenco TODO, Mail settimanali di progresso delle attività (burn-down chart?) ● Conoscersi almeno una volta è molto importante! Partecipazione a conference, etc... ● Il mantainer deve verificare la qualità del codice: non solo code standards, ma test e «puzze» 05/04/07 Agile @ ERLUG 55
  • 13. Altri problemi in un team distribuito In remoto diventa difficile fare pair-programming Ma non è impossibile! «Remote pair-programming» ● VNC (o simili) ● VOIP (Skype/OpenWengo) ● magari anche microfono e Webcam Non è come il pair-programming ma... 05/04/07 http://www.quinary.com/pagine/downloads/files/Resources/ XPRemotePairProgrammingPresentation.pdf http://www.quinary.com/pagine/downloads/files/Resources/ XPRemotePairProgrammingPresentation.avi Agile @ ERLUG 56
  • 14. Compito per casa... Ci sono progetti OS che utilizzano esplicitamente alcune pratiche Agili? Quale punto di partenza: Eclipse http://www.infoq.com/news/Eclipse-Callisto-AgileSuccess Mono http://mono.ximian.com/tests/displayTestResults.php ... 05/04/07 Agile @ ERLUG 57
  • 15. Agile e Open Source Domande ? 05/04/07 58