SimoneCallegarin / ingsw2022-AM07

Progetto di Ingegneria del Software 2021/2022
2 stars 0 forks source link

Prova Finale Ingegneria del Software 2022

Gruppo AM07

Documentazione

Coverage report

Al seguente link è possibile consultare il report della coverage dei test effettuati con Junit: Report.

Il Controller è stato testato al 100% in tutte le sue parti.

Il Model è stato testato nel 100% delle sue classi, nel 99% dei suoi metodi per un totale di 94% delle linee di codice testate.

Package Class Method Line
Controller 100% 100% 100%
Model 100% 99% 94%

Librerie e Plugins

Libreria/Plugin Descrizione
Maven Strumento di automazione della compilazione utilizzato principalmente per progetti Java.
JavaSwing Libreria grafica per realizzare interfacce utente.
JUnit Framework di unit testing.
Jansi Libreria che permette di utilizzare le ANSI escape sequences per formattare il proprio output da console

Funzionalità

Implemented Functionalities

Functionality Implementation
Basic rules 🟢
Complete rules 🟢
Socket 🟢
GUI 🟢
CLI 🟢
12 Character cards 🟢
4 Players match 🟢
Multiple games 🟢
Persistance 🔴
Resistance to disconnection 🔴

Jars

I Jar del progetto possono essere scaricati al seguente link: Jars.

Esecuzione

Questo progetto richiede una versione di Java SE 16 o superiore per essere eseguito correttamente.

Client (App)

Le seguenti istruzioni descrivono come eseguire il client con interfaccia CLI o GUI.

Per lanciare client digitare da terminale il comando:

java -jar client.jar 

Di seguito vi verrà richiesto di inserire address e port del server a cui connettersi.

Successivamente vi sarà richiesto se desideriate giocare con CLI o GUI, selezionando l'una o l'altra semplicemente inserendo rispettivamente 0 o 1 da tastiera e confermando.

Server

Per lanciare il server digitare da terminale il comando:

java -jar server.jar 

Di seguito vi sarà richiesto di inserire la porta su cui mettere in ascolto il server, una volta inserita e confermata la porta il server sarà pronto al funzionamento.

In alternativa:

java -jar server.jar portNumber

Note aggiuntive:

Al fine di rendere l'esperienza di gioco il più godibile possibile sarebbe conveniente eseguire le seguenti operazioni prima di giocare:

CLI

GUI