ConwayLife Sprint2

Introduction

Dotare il GAME OF LIFE DI CONWAY di un'interfaccia grafica di interazione con l'utente, per realizzare il requisito R2.

Requirements

Oltre ai requisiti già individuati nello Sprint 1, lo Sprint 2 prevede i seguenti nuovi requisiti:
  1. La griglia di gioco deve essere visualizzata in una finestra Swing (anziché solo su console).
  2. L'utente deve poter interagire con la griglia per:
    • Configurare lo stato iniziale delle celle tramite click del mouse.
    • Controllare l'evoluzione tramite pulsanti specifici: START, STOP e CLEAR.
  3. Il sistema deve essere realizzato come evoluzione del precedente, riutilizzando la logica di dominio (il file .jar dello Sprint 1) come componente libreria.

Requirement analysis

Mi concentro sulla verifica della sostituibilità dei componenti di I/O. L'obiettivo è dimostrare che le interfacce definite nello Sprint 1 sono sufficienti a coprire i nuovi requisiti funzionali: In sintesi, si conferma che l'architettura logica individuata nello Sprint 1 è chiusa alle modifiche ma aperta alle estensioni.

Problem analysis

L'evoluzione del sistema verso una GUI Swing pone delle questioni:

Test plans

Ho due obiettivi di testing in questa fase:
  1. esecuzione dei test JUnit dello Sprint 1 per garantire che l'introduzione della GUI non abbia alterato la correttezza della logica di dominio (Life, Grid, Cell).
  2. verifica per accertarsi che:
    • il click sulla cella della GUI invochi correttamente switchCellState sul Controller
    • la pressione dei tasti START/STOP attivi o metta in pausa il thread di evoluzione
    • il comando CLEAR resetti visivamente la griglia dopo aver pulito il modello

Project

Il progetto di questo sprint realizza l'evoluzione del sistema come composizione di componenti:

Testing

Deployment

Maintenance



By Desirée Pellegrini email: desiree.pellegrini@studio.unibo.it, emiglio GIT repo: https://github.com/desypellegrini/IngegneriaSistemiSoftware2026.git