Sprint 2 [28/07/2025 - 10/08/2025]
Backlog Item | Id | Task | Volontario | Stima (h) | Effettivo (h) | D1 | D2 | D3 | D4 | D5 | D6 | D7 | D8 | D9 | D10 | D11 | D12 | D13 | D14 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Come utente, voglio modificare la dimensione dell'ambiente e aggiungere/rimuovere le entità al suo interno | 6.3 | Validazione collisioni tra le entità | Ceredi | 4 | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio modificare la dimensione dell'ambiente e aggiungere/rimuovere le entità al suo interno | 6.4 | Gestione dei confini dell'ambiente | Ceredi | 2 | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio gestire gli attuatori di spostamento del robot, come le ruote motorizzate, così da poterli aggiungere, rimuovere o modificare la loro velocità per personalizzare la mobilità del robot | 9.3 | Modellazione del movimento in azioni | Nardicchia | 2 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio gestire le luci, così da configurare il numero, la posizione e l'intensità di essi | 11.4 | Seconda modellazione e gestione della griglia | Cohen | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 0 | 0 |
Come utente, voglio modificare il comportamento dei robot, così da poter personalizzare le loro azioni | 15.1 | Implementazione prima versione del DSL per la definizione dei comportamenti | Cohen | 3 | 3 | 3 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio modificare il comportamento dei robot, così da poter personalizzare le loro azioni | 15.2 | Implementazione della logica di esecuzione del comportamento sui robot | Cohen | 2 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio modificare il comportamento dei robot, così da poter personalizzare le loro azioni | 15.3 | Seconda versione del DSL per la definizione dei comportamenti | Cohen | 3 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 2 | 0 | 0 | 0 | 0 | 0 |
Come utente, voglio modificare il comportamento dei robot, così da poter personalizzare le loro azioni | 15.4 | Implementazione di regole e politica di esecuzione del comportamento sui robot | Cohen | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 |
Come un utente, durante la simulazione voglio: poter mettere in pausa la simulazione; poter riprendere la simulazione, se in pausa; poter fermare la simulazione; così che possa gestire il controllo della simulazione | 16.1 | Modellazione del motore di simulazione | Nardicchia | 8 | 5 | 5 | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, durante la simulazione voglio: poter mettere in pausa la simulazione; poter riprendere la simulazione, se in pausa; poter fermare la simulazione; così che possa gestire il controllo della simulazione | 16.2 | Implementazione dello stato della simulazione | Nardicchia | 1 | 3 | 3 | 3 | 2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, durante la simulazione voglio: poter mettere in pausa la simulazione; poter riprendere la simulazione, se in pausa; poter fermare la simulazione; così che possa gestire il controllo della simulazione | 16.3 | Gestione degli eventi di controllo della simulazione | Nardicchia | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, durante la simulazione voglio: poter mettere in pausa la simulazione; poter riprendere la simulazione, se in pausa; poter fermare la simulazione; così che possa gestire il controllo della simulazione | 16.4 | Implementazione della logica di controllo della simulazione | Nardicchia | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, voglio modificare la durata della simulazione, così da avere simulazioni di durata differente | 17.1 | Gestione degli eventi temporali della simulazione | Nardicchia | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, voglio modificare la durata della simulazione, così da avere simulazioni di durata differente | 17.2 | Implementazione della logica del tempo (rimanente/trascorso) | Nardicchia | 3 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
Come un utente, voglio poter scegliere il seed, così da poter riprodurre la stessa simulazione | 18.1 | Implementazione libreria Generatore di Numeri Casuali | Nardicchia | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
Come un utente, voglio poter caricare e salvare un file di configurazione personalizzato della simulazione, così che possa verificare nuovamente comportamenti eseguiti precedentemente | 19.1 | Implementazione dei DSL per la configurazione di tutti gli elementi della simulazione salvabili | Ceredi | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, voglio poter caricare e salvare un file di configurazione personalizzato della simulazione, così che possa verificare nuovamente comportamenti eseguiti precedentemente | 19.2 | Implementazione della logica di caricamento del file di configurazione | Ceredi | 4 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
Come un utente, voglio poter caricare e salvare un file di configurazione personalizzato della simulazione, così che possa verificare nuovamente comportamenti eseguiti precedentemente | 19.3 | Implementazione della logica di salvataggio della configurazione | Ceredi | 1 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 0 | 0 |
Deliverable sprint-2 (GUI con visualizzazione dello stato, gestione del tempo e della riproducibilità) | 20.1 | Implementazione della GUI per la gestione della simulazione | Nardicchia | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
TOT | 48 | 49 | 49 | 45 | 40 | 34 | 33 | 33 | 27 | 21 | 12 | 10 | 6 | 5 | 0 | 0 |
Sprint Goal
Gli obiettivi dello Sprint 2 sono stati:
- Completamento della modellazione del dominio;
- Prima implementazione GUI di simulazione;
- Prima implementazione del motore di simulazione;
- Salvataggio e caricamento del file di configurazione;
- Implementazione del comportamento del robot.
Sprint Deadline
Lo Sprint 2 è iniziato il 28 Luglio 2025 e si è concluso il 10 Agosto 2025.
Sprint Review
Durante la Sprint Review sono stati presentati i seguenti risultati:
- Una prima implementazione della GUI di simulazione è stata realizzata;
- Il motore di simulazione è stato implementato;
- Il salvataggio e caricamento del file di configurazione è stato implementato, resta da gestire il caricamento dinamico del comportamento del robot;
- Il comportamento del robot è stato implementato;
- La modellazione del dominio non è stata completata in quanto mancano i sensori di luce.
Sprint Retrospective
-
La gestione del salvataggio e caricamento del file di configurazione ha richiesto più tempo del previsto, a causa della necessità di implementare una serializzazione e deserializzazione personalizzata per oggetti complessi.
-
Una limitazione nella modellazione iniziale del dominio, relativa alle azioni che il robot può svolgere, ha reso necessaria una revisione più generica della rappresentazione delle azioni e del comportamento dei robot, comportando un prolungamento dei tempi rispetto alla pianificazione iniziale.
-
I ritardi descritti hanno influito sulla pianificazione dello sprint, rendendo necessario posticipare l’implementazione dei sensori di luce allo sprint successivo.