Skip to content

6. Retrospective

Giulio Zaccaroni edited this page Dec 21, 2022 · 7 revisions

6. Retrospettiva

Scrum

Lo sviluppo del progetto tramite Scrum è stata una novità e all'inizio ci è voluto qualche giorno per abituarsi e capire bene questo modello. Una volta rodato il nuovo metodo di sviluppo siamo riusciti a portare effettivamente valore ad ogni sprint e a concentrare i nostri sforzi sulla progettazione e implementazione del sistema. Inoltre, la suddivisione del lavoro in User Story ha reso ancora più esplicito i miglioramenti che stavamo portando agli utilizzatori grazie alla suddivisione in who (per chi stiamo facendo questa funzione) , what (che funzione stiamo facendo), e why (perché la stiamo facendo). Queste novità assieme allo sviluppo incrementale ha permesso di eliminare gran parte del lavoro tipicamente concentrato nella settimana prima del rilascio (nel nostro caso la consegna del progetto) rendendo più tranquilla la fase di consegna.

Test Driven Development

L'intento iniziale era quello di adottare un approccio Test Driven Development a livello di team, ma l'idea è stata scartata lasciando a ogni singolo membro del team la possibilità di sviluppare o con un approccio tradizionale o in test driven per evitare di avere una curva di apprendimento iniziale troppo elevata (data l'assenza di un'implementazione di riferimento) col rischio di rendere difficoltoso l'inizio del progetto.

Andamento degli sviluppi

Il quarto sprint, come abbiamo descritto nella review, è stato l'unico dove il carico di lavoro e gli impegni personali hanno portato a non concludere in tempo gli obiettivi prefissati. Abbiamo gestito la situazione allungando la deadline (anziché fare carry over) in quanto nel primo sprint avevamo calcolato di finire 2 settimane in anticipo sulla consegna proprio per avere margine in caso di problemi durante gli sviluppi e per eventuali raffinamenti.

Commenti finali

Il progetto ha permesso a tutto il team di approfondire analisi, progettazione e sviluppo di un prodotto software emulando un ambiente aziendale nel quale si utilizza il framework Scrum. La volontà di tutti i membri del team nello svolgimento del progetto è stata quella di sperimentare il più possibile funzioni avanzate anche col rischio di fallire accettando un certo livello di rischio in alcune funzioni come la Continuous Integration, l'integrazione con Prolog e l'utilizzo di macro Scala. Questo ha sicuramente reso più difficile alcune fasi dello sviluppo, ma nel lungo termine ha permesso di facilitare dei processi e migliorare la qualità del codice prodotto, quindi il team è soddisfatto delle scelte intraprese.

Clone this wiki locally