MosaicoX è un software gestionale open source dedicato alle attività aziendali interne. Il team di sviluppo è cambiato diverse volte nel corso del tempo portandosi dietro problemi di design e qualità del codice.
È qui che siamo entrati in gioco noi: il cliente aveva bisogno di un supporto per il team di sviluppo e di un nuovo design del codice dell’applicazione, per diminuire i costi di manutenzione e sviluppo.
Il refactoring del Codice
Insieme al team di MosaicoX, abbiamo esaminato il codice esistente e il flusso di lavoro del team per decidere come intervenire. In questo modo abbiamo potuto identificare alcune criticità e quindi, basandoci su quelle, definire delle priorità d’intervento. In particolare abbiamo migliorato la capacità di intervento sul progetto:
- separando le parti di logica di business da quelle di presentazione,
- riducendo la complessità di alcune implementazioni,
- introducendo test automatici per verificare eventuali regressioni introdotte dal nostro intervento.
Agile Coaching
Durante la fase di affiancamento, abbiamo deciso di riorganizzare il team in coppie formate ciascuna da uno sviluppatore di MosaicoX e uno di ideato. Gli sviluppatori di MosaicoX hanno affrontato una fase di formazione parallela allo sviluppo del progetto, migliorando quindi non solo la conoscenza del progetto a livello tecnico ma anche facendo proprie le metodologie utilizzate.
Backend Development
In tutta la fase di sviluppo abbiamo supportato il team per migliorare il codice e per introdurre nel flusso di lavoro strumenti di testing e Continuous Integration. Abbiamo introdotto la pratica del TDD e ci siamo occupati di aiutare MosaicoX nel design dell’architettura dell’applicazione.