Ingegneria del software Progetto per Prova finale: Horse Fever
Copyright Tutto il materiale presentato è protetto da copyright ed appartiene a Cranio Creations s.n.c. NON può essere usato con fini commerciali NON può essere riprodotto, modificato, distribuito, etc.. 2
Componenti 3
Tabellone e quotazioni Tabellone Lavagna quotazioni Cavalli 4
Componenti * = Non usato nella versione family game 5
Carte giocatore Carte giocatore Carta primo giocatore 6
Carte azione Carte azione positive Carte azione negative Lettera Lettera Simbolo Simbolo 7
Carte azione Carte azione neutre Carte con la stella * 8
Carte scuderia e cavallo Carte scuderia Carte movimento 9
Carte cavallo e prestito Carte cavallo * Carte prestito * 10
Preparazione del gioco 11
Versione Family Game 1. Ogni giocatore sceglie (in modo casuale) una carta giocatore e riceve un PV 2. Vengono distribuiti i soldi e le carte scuderia indicati sulle carte giocatore 3. I segnalini scuderia vengono collocati in modo casuale sulla tabella quotazioni 4. I cavalli vengono collocati sulla linea di partenza 5. Viene sorteggiato casualmente un Primo giocatore (modifica delle regole originali) 12
Fasi del gioco Family game 13
Fasi del gioco: Family Game 1. Distribuzione carte azione: due carte azione vengono distribuite coperte a ciascun giocatore 2. Prima scommessa: a partire dal primo giocatore, in senso orario, ogni giocatore deve effettuare una scommessa vincente (1 posto) o piazzata (1,2 o 3 posto) 3. Truccare la corsa: a partire dal primo giocatore, in senso orario, ogni giocatore dispone una carta azione coperta sulla corsia del cavallo che vuole truccare 14
Fasi del gioco: Family Game 1. Seconda scommessa: a partire dall ultimo giocatore, in senso antiorario, ogni giocatore può effettuare una scommessa 2. Visualizzazione delle carte azione 3. Corsa: vengono svolti diversi round, ognuno caratterizzato da un Movimento ed uno Sprint 4. Pagamenti: vengono pagate le scommesse corrette e le scuderie 15
Fasi del gioco: Family Game 1. Distribuzione dei punti vittoria (PV): vengono distribuiti 3 PV per ogni scommessa vincente corretta ed 1 PV per ogni scommessa piazzata corretta 2. Calcolo nuove quotazioni: i segnalini scuderia vengono spostati secondo le nuove quotazioni 3. Fine del gioco (?): se è l ultimo turno, il giocatore con più PV vince 16
Dettaglio fasi del gioco Fasi del gioco: 17
Scommesse incente Piazzato 18
Truccare la corsa e visualizzazione carte Truccare la corsa Visualizzazione carte azione 19
Truccare la corsa Se sullo stesso cavallo sono state piazzate due carte azione, una positiva ed una negativa, con la stessa lettera, queste si annullano (i.e., vengono scartate) Le carte rimanenti influenzeranno la corsa (azioni positive e negative) e le fasi successive alla corsa (azioni neutre) 20
Corsa: movimento 21
Corsa: movimento Carta movimento Nero,rosso: 3 Altri: 2 Carte azione Blu: rimane fermo alla partenza (carta azione) Verde: si muove di 4 posizioni alla partenza (carta azione) 22
Corsa: sprint 23
Pagamenti e PV scommesse vincenti Scommesse vincenti: Scommessa: 200D su rosso vincente Rosso 1:4 quotazione determina vincita! Rosso arriva primo 800D da banca (NON riprende anche i 200D scommessi) + 3 PV Scommesse vincenti: Scommessa: 200D su rosso vincente Rosso 1:4 Rosso arriva secondo perde i 200D 24
Pagamenti e PV scommesse piazzate Scommesse piazzate: Scommessa: 200D piazzate su rosso Rosso 1:4 quotazione non conta! Rosso arriva primo 400D da banca (NON riprende i 200D scommessi) + 1PV Scommesse piazzate: Scommessa: 400D su verde piazzato e 200D su rosso piazzato Verde 1:5, Rosso 1:5 quotazione non conta! Verde arriva terzo, Rosso quinto 800D da banca (NON riprende i 400D scommessi) + 1 PV e perde i 200D 25
Pagamenti scuderie Scuderie: Pagamento all eventuale proprietario (le scuderie possono non essere di nessuno) della scuderia il cui cavallo arriva primo: secondo: terzo: 600D 400D 200D 26
Calcolo nuove quotazioni Posizione di arrivo dei cavalli Vecchia quotazione Nuova quotazione Posizione di arrivo del cavallo > quotazione Quotazione sale di 1 Posizione di arrivo del cavallo < quotazione Quotazione scende di 1 Posizione di arrivo del cavallo = quotazione Quotazione resta invariata 27
Regole per il progetto 28
Regole per il progetto Svolgimento del progetto il progetto deve essere svolto in gruppo i gruppi devono essere formati da 2 (consigliato) o 3 studenti Valutazione gruppi di 2 persone tutte le richieste definite nel progetto base devono essere progettate ed implementate voto ottenibile: 0 23-24 le richieste definite nel progetto avanzato possono essere progettate ed implementate voto ottenibile: 0 30L 29
Gruppi di 3 persone Regole per il progetto tutte le richieste definite nel progetto avanzato devono essere progettate ed implementate voto ottenibile: 0 30L l assenza di una o più funzionalità del progetto avanzato comporta l insufficienza Consegna del progetto il materiale richiesto deve essere consegnato entro venerdì 21/6 (incluso) la mancata o tardiva consegna comporta la ripetizione del corso e del progetto!! 30
Regole per il progetto Materiale da consegnare file jar: il file jar del progetto, che verrà eseguito e commentato il giorno della valutazione diagramma UML iniziale: il/i diagramma/i UML prodotti ad inizio progetto (è richiesto almeno il diagramma delle classi) diagramma UML finale: il/i diagramma/i UML del software contenuto nel file jar consegnato. E possibile generare i diagrammi UML finali in modo automatico a partire dal codice (è richiesto almeno il diagramma delle classi) 31
Regole per il progetto Criteri di valutazione principali presentazione del progetto: in data da definirsi (successivamente alla data di consegna) ogni gruppo presenterà il proprio progetto ai responsabili di laboratorio, esplicitando e giustificando le scelte implementative adottate partecipazione in laboratorio Altri criteri di valutazione qualità del codice (rispetto convenzioni di programmazione, estendibilità, scalabilità,..) leggibilità del codice (struttura, commenti,..) qualità, ragionevolezza e copertura dei test 32
Specifiche 33
Progetto base Specifiche devono essere progettate e sviluppate tutte le caratteristiche del Family Game la tabella degli spareggi deve essere sostituita con un sorteggio casuale (random) tra i giocatori interfaccia testuale (console) Progetto avanzato tutte le richieste del progetto base interfaccia grafica (GUI) possibilità di giocare via rete (socket o RMI) 34
Extra Extra è possibile implementare alcune o tutte le caratteristiche del Board Game (gioco completo) per ottenere un incremento di voto è possibile implementare varianti e aggiunte al gioco originale per ottenere un incremento di voto ed un omaggio dalla Cranio Creations! per poter ottenere l incremento di voto, tutte le richieste del progetto base DEVONO essere state sviluppate Variazione di voto indicativa +/- 3 punti 35
incentivo by Cranio Creations 36