ConwayLife Sprint1

Introduction

Goal: Realizzazione in Java del GAME OF LIFE DI CONWAY limitatamente al requisito R1.

Requirements

R1  Realizzare una versione in Java del gioco Life di Conway, come gioco zero-player. 
    Il gioco consiste nell’introdurre una Griglia di Celle il cui stato (cella ‘viva’ o cella ‘morta’) 
    evolve come stabilito dallle regole di ConwayLife

R2  L’utente umano deve poter:
     - specificare la configurazione iniziale della griglia del gioco	
     - vedere l’evoluzione del gioco in forma opportuna 
        (si veda Problema della vista del gioco )
     - fermare e far ripartire l’evoluzione del gioco
     - pulire (a gioco fermo) la configurazione della griglia del gioco

Requirement analysis

A partire dal requisito R1 si individuano le entità logiche che compongono il dominio del problema quali Cell, Grid e Life.
Ci poniamo una domanda fondamentale: cosa intende il committente per Cell, Grid e Life?
Cosa intende il committente per Cell?
Per l'entità Cell formalizzo il seguente modello.
Cell è atomica, ha un proprio stato interno (viva o morta) e ha la possibilità di modificarlo (da viva a morta e viceversa). Per definire, invece, il comportamento attesso da una cella realizzo il seguente TestPlan.
Cosa intende il committente per Grid?
Per Grid formalizzo il seguente modello.
L'entità Grid è composta da Cell. E' un'entitò a due dimensioni, quali colonne e righe.
Quindi, l'entità Grid ha la possibilità di restituire le proprie dimensioni e una cella che la compone. Inoltre può settare lo stato di una cella, ottere il suo valore e resettare la Grid impostando tutte le celle di cui è composto a morte.
Per esprimere i requisiti che le interfacce non sono in grado di esprimere, sviluppo il seguente TestPlan.
Cosa intende il committente per Life?
Il committente non ha idea di cosa sia Life, ma mi informa che è la logica del gioca (contiene le regole). Per Life, quindi, formalizzo il seguente modello.
Per esprimere i requisiti che le interfacce non sono in grado di esprimere, sviluppo il seguente TestPlan.

Problem analysis

diagrammaUML

Test plans



Project


 

Testing



Deployment


 

Maintenance



	      	


By Marilena Rugiero email: marilena.rugiero@studio.unibo.it, foto GIT repo: https://github.com/marilena-uni/softwareEngineering