[ Torna all'inizio della pagina ]
Metodologie Agili
I nostri team di lavoro utilizzano Metodologie Agili (in particolare Extreme Programming e Scrum) fortemente basate su dei valori condivisi, espressi nell'Agile Manifesto,:
- persone e interazioni piuttosto che processi e tool
- software funzionante rispetto a documentazione completa e dettagliata del sistema
- collaborazione col cliente piuttosto che negoziazione contrattuale
- rispondere ai cambiamenti piuttosto che seguire un piano prestabilito
Sulla base di questi valori poggiano una serie di best pratices che realizzano un processo di sviluppo agile e adattativo.
Le pratiche in Flosslab
Ne citiamo solo alcune:
- Sit together: open space per massimizzare la comunicazione e collaborazione reciproca.
- Tecnica del Pomodoro: metodo di lavoro che consente di utilizzare il tempo come un utile alleato per realizzare le proprie attività nel modo desiderato e consentire un continuo miglioramento nel proprio processo di lavoro o studio [http://www.tecnicadelpomodoro.it/tdp.html].
- Standup meeting: brevi riunioni in piedi per presentare cosa si è fatto, cosa si sta facendo e far emergere possibili criticità. Servono a massimizzare la comunicazione all'interno del team.
- Spike Solutions: veloci soluzioni esplorative per ridurre i rischi e migliorare la conoscenza del problema.
- Iterazioni brevi: pianificazione del lavoro per iterazioni di una o due settimane, al termine delle quali si verificano i risultati prodotti e si analizzano eventuali punti critici.
- User Story: la pianificazione avviene attraverso l'uso di UserStory, ovvero funzionalità circoscritte e definite che danno valore al cliente.
- Controllo e monitoraggio del processo: attraverso l'uso di strumenti di gestione collaborativi riusciamo ad avere giornalmente il controllo del processo e dello stato d'avanzamento dei lavori. Questo ci permette di identificare ancora prima del termine dell'iterazione eventuali impedimenti, consentendoci di prendere preventive azioni correttive.
- Design incrementale emergente: investiamo quotidianamente nel design senza forzarlo attraverso l'uso di pattern o architetture imposte, ma facendo in modo che questo emerga gradualmente al crescere del sistema e della nostra conoscenza di esso.
- Testing automatico: forte enfasi sull'uso di test automatici ai vari livelli, puntando a sviluppare i vari sistemi con tecniche di Test Driven Development.
Gli strumenti di gestione
Per la pianificazione, il controllo e monitoraggio del processo facciamo uso di Redmine, uno software di gestione multi progetto, completo di strumenti di comunicazione e lavoro collaborativo, quali Time tracking, Wiki, Forum, Reportistica, integrazione con strumenti di Configuration Management (SVN, CVS, ...).
[ Torna all'inizio della pagina ]
News
- 19/03/10
Ethical Code in ICT company
- 01/03/10
IV Conferenza Italiana sul Software Libero
- 17/02/10
Dicono di noi: l'Unione Sarda