aica workshop 26 feb 2008 @ siam

Post on 07-Dec-2014

582 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Il modello collaborativo dell'open sourceper lo sviluppo software

(cc) Federico Gobbofederico.gobbo@uninsubria.it

Dipartimento di Informatica e ComunicazioneUniversità degli Studi dell'Insubria

Goodbye, "free software";hello, "open source"

3 febbraio 1998, Palo Alto, California.

"dobbiamo far accettare il software libero nel  mainstream corporate world"

                                        ---   Eric Steven Raymond

Costruire il software a cattedrale"[il software] viene lavoratoattentamente a mano da singoli geni o piccole bande dimaghi che lavorano insplendido isolamento, senzache alcuna versione beta veda la luce prima del momento giusto...

[come in una] cattedrale, da costruire in silenzio e riverenza"

Comunità Linux prototipo dell'OS"un pullulare di progetti e approcci differenti basati sulla rapidità dei rilasci...

il mercato interno della reputazione della comunità esercita una sottile pressione sulle persone in modo che non si lancino dei progetti se non si è abbastanza competenti per seguirli"

Modello organizzativo di Linux• Linus dittatore benevolo

• Poca gerarchia

• Nessuna barriera all'entrata

• Creatività emergente

• La comunità certifica le competenze

Social network come opere derivate dell'open source

• Macchinetta del caffè virtuale

• Partecipazione e fiducia

• Informal > formal

• Non solo software ma qualsiasi processo

Un esempio: Creative Commons• Comunità di pratica su un

problema preciso

• Contributi su più livelli

• In pochi anni milioni di documenti hanno una (cc)

• ...incluso questo!

        

http://www.creativecommons.org

Come esportare il modello informal di Linux nello sviluppo software

d'impresa??

Agilemanifesto.org• Individui e iterazioni

• Software che funziona

• Collaborare con il cliente

• Adattarsi al cambiamento

Naturalmente antifondamentalista:tante metodologie,tante tecnologie,

più che processi e strumenti

più che documentazione estesa

più che contrattare e negoziare

più che seguire un piano prestabilito

basato sulla comunità!

eXtremeProgramming.org• primo metodo agile

• Principi

• Valori

• Pratiche

• Nella comunità XP impari facendo

ControlChaos.com : SCRUM• per sviluppatori

• per il management

• ciclo dell'iterazione

• ciclo giornaliero

• SCRUM si lega con XP come due scatole cinesi

RubyOnRails.org• sviluppo web senza dolore

• prototipi veloci

• logica del perpetual beta

• mostra il codice, non spiegarlo, anche al cliente

• il movimento agile si crea le sue tecnologie

Come insegnare al meglio le metodologie agili?

Come affiancare al curriculum universitario tradizionale di

informatica?

European Summer School on Agile Programming

http://essap.dicom.uninsubria.it

vivaci lezioni frontali...in pair coaching è più divertente!

imparare a programmare dal vivo

...in pair programming è meglio!

hai dimenticato il punto e virgola

rompere la barriera della cattedra

 

apprendimento collaborativo 

essere agili vuol dire essere veloci

simulazioni per apprendere facendo 

dal kaos nascono le idee

 

il planning agile è low tech 

utenti finali come narrative

team in competizione

tutti partecipano

rivivere quanto è successo

costruire la comunità di pratica

Grazie per l'attenzione!Domande?

http://agilemanifesto.org

http://estremeprogramming.com

http://www.rubyonrails.org

http://essap.dicom.uninsubria.it

top related