Scrum micro intro

scrum

Ken Schwaber e Jeff Sutherland nel 1995 hanno creato un framework agile per lo sviluppo software, iterativo ed incrementale.
Inizialmente ideato per il mondo del software si è diffuso anche per la gestione di progetti in generale. Il percorso è stato inverso rispetto a Lean.
Il termine Scrum deriva dal rugby e indica la mischia, è una metafora del team di sviluppo che deve lavorare insieme in modo che tutti gli attori del progetto spingano nella stessa direzione.
Rispetto a XP il framwork Scrum si concentra di più sulle attività di project management più che sulle pratiche di sviluppo.

Comments Off on Scrum micro intro  

Extreme Programming micro intro

XP

Extreme Programming spesso chiamata XP è una metodologia agile ideata da Kent Beck, uno dei firmatari del manifesto agile.
La sua diffusione parte nel 1999 con il libro “Extreme Programming explained: embrace change”.
L’idea di XP è portare quelle che sono best practise e regole di buon senso consolidate nel mondo del software all’estremo.
Se revisionare il codice va bene, allora questo verrà fatto costantemente (pair programming).
Se i test d’integrazione sono importanti, allora il team effettuerà questi test continuamente (continuous integration).

Comments Off on Extreme Programming micro intro  

Starfish

RetrospectiveStarfish

Al KLab si è parlato della tecnica per fare retrospettiva chiamata Starfish.
Questa tecnica viene descritta anche nel libro Getting Value out of Agile Retrospectives di Luis Gonçalves che trovate su InfoQ e pone 5 domande al team:
– What should we keep on doing?
– What should we do more of?
– What should we do less of?
– What should we start doing?
– What should we stop doing?
Una volta identificate le proposte, queste possono essere pianificate e applicate negli sprint successivi.

Comments Off on Starfish  

Agile Manifesto

manifestoAgile
Nel 2001 in una località sciistica dello Utah 17 professionisti di spicco nel mondo della programmazione si radunarono per discutere assieme del futuro del mondo software.
Erano stanchi di assistere ad una percentuale sempre crescente di progetti software che fallivano spesso per l’uso di metodologie non adatte al mondo del software come waterfall.

Dall’incontro di queste persone generò una riflessione profonda e limpida: il metodo ingegneristico applicato al software non è detto che funzioni in quanto lo sviluppo software è una attività creativa e non produttiva, richiede l’apporto di knowledge worker e non di operatori, con una forte componente artigianale e di interazione umana.

I principi sono fantastici quando diventano comportamenti, nell’ultima settimana quante volte vi capitato di metterle in pratica questi?

  • 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
Comments Off on Agile Manifesto  

Le basi di Lean Software Development

principlelean

L’idea alla base di Lean è veramente semplice: massimizzare il valore per il cliente minimizzando gli sprechi.

Il termine Lean è stato usato per la prima volta per descrivere il modello di business di Toyota degli anni ottanta nel libro “La macchina che ha cambiato il mondo” scritto dallo studioso Jim Womack.

Il termine Lean Software Development invece nasce con il libro scritto da Mary e Tom Poppendieck nel 2003, dove vengono presi i principi del Toyota Production System e riportati nel mondo IT.

Molte delle pratiche utilizzate in Toyota sono state riportate nel mondo del software per citarne qualcuna ricordiamo ( Kanban, Kaizen, Lean Startup, A3 Thinking, Value stream mapping …)

– Eliminare gli sprechi ( Funzionalità non necessarie, ritardi, requisiti incerti, burocrazia)
– Amplificare l’apprendimento (Lo sviluppo del software è un processo di apprendimento continuo)
– Decidere il più tardi possibile (Lo sviluppo è sempre incerto e le decisioni vanno rinviate il più possibile)
– Consegnare il più velocemente possibile (Prima il prodotto viene consegnato tanto prima arrivano i feedback)
– Dare potere al team (Ai manager si insegna ad ascoltare e gli sviluppatori a prendere decisioni)
– Integrità nella costruzione (Zero difetti e la massima qualità)
– Vedere il tutto (Avere una visione sistemica dei problemi e delle soluzioni)

Comments Off on Le basi di Lean Software Development  

MiniIAD Vimercate

MiniIADVimercate2

Quasi tutti li chiamano eventi a me piace pensare che siano occasioni.
Sono ormai 10 anni che partecipo ad eventi community da super tecnici, tecnici, metodologici e perfino un po’ antropologici, ogni volta c’è qualcosa da scoprire e da imparare.
La mia crescita professionale e le mie conoscenze sono state fortemente influenzate dalle tante persone che negli anni ho avuto modo di ascoltare e che hanno condiviso, spesso gratuitamente, il loro know-how e le loro esperienze.

Sabato con due colleghi Luigi e Andrea abbiamo partecipato al Mini Italian Agile Day in una spettacolare location, la nuova sede di Alcatel-Lucent nell’Energy Park di Vimercate.

Tra gli speaker era presente Cliff Hazell un Agile Coach di Spotify che ha tenuto una sessione su Visual Management nei sistemi complessi.
Altre sessioni da citare molto interessanti per Project Manager o Manager in generale:

  • Kill, Lean and Learn che trattava di Portfolio Management, dal dire no al gestirne la morte\chiusura di un progetto
  • Agile fixed price gestione in modo Agile contratti fixed price time e scope
  •  Make change visible… and funny! come rendere il cambiamento sostenibile, divertente

La prossima volta che c’è un evento così non fatevelo scappare potreste diventare addicted 🙂

MiniIADVimercate1 MiniIADVimercate3 MiniIADVimercate4 MiniIADVimercate5 MiniIADVimercate6 MiniIADVimercate7

Comments Off on MiniIAD Vimercate