Abbiamo seguito uno stile SCRUM inspired come consigliato nel punto P8 delle regole d’esame. Ogni membro ha avuto ruolo di developer e nello specifico:
Il lavoro è stato suddiviso in Sprint settimanali con il team che ogni lunedì effettuava un meeting per:
La gestione degli sprint e la suddivisione e l’assegnamento dei task è stata effettuata tramite Jira, un tool che ha consentito al team di avere una board virtuale nella quale “appendere” i propri task e tracciarne il progresso. Ogni task veniva, tramite l’utilizzo di un plug-in, sincronizzato con il relativo branch e commit per essere aggiornato in tempo reale delle operazioni effettuate tramite git.
Lo scrum master ha definito una board con i relativi stati di avanzamento dei task:
Sincronizzato con Jira, il team ha sfruttato Confluence per mantenere in condivisione gli sprint log e i documenti relativi allo sviluppo del progetto.
Il team ha sfruttato una branching strategy fortemente ispirata a git-flow. La repository è stata suddivisa in due branch stabili:
main
: destinato alle release stabili e aggiornato al termine di ogni sprintdevelop
: utilizzato per lo sviluppo continuo e sufficientemente testatoIl team sviluppava ogni task su un branch feature/ID-Jira_nome-task
che, una volta terminato lo sviluppo, veniva
incorporato tramite pull request in develop
. Nel caso in cui il team identificava un bug, questo veniva risolto su
un branch bugfix/ID-Jira_nome-task
se identificato in develop
; hotfix/ID-Jira_nome-bug
se identificato in main
.
Sono state utilizzate le GitHub Actions per automatizzare la verifica del codice tramite test su pull request.