Requirement Breakdown Structure (RBS)
Versioni
Ultima Versione
NOTA: cliccare sull’immagine per visualizzare il diagramma su Miro.
16-01-2023
Back to Top | Back to Scoping | Next Version
Requisiti
Goal: realizzare un’applicazione web per giocare a scacchi online.
- Game Management: permettere a due giocatori dell’applicazione di giocare insieme;
- Game Configuration: permettere a un giocatore di creare e configurare una nuova partita di scacchi;
- Public Game: permettere a un giocatore di creare una partita pubblica di scacchi, a cui chiunque può partecipare;
- Private Game: permettere a un giocatore di creare una partita privata di scacchi, a cui può partecipare solo chi conosce l’identificatore segreto;
- Friend Game: permettere a un giocatore autenticato di creare una partita privata di scacchi invitando un suo specifico amico nell’applicazione a parteciparci;
- Time Constraint: permette di configurare i vincoli di tempo della partita;
- No Limit: nessun vincolo di tempo;
- Turn Limit: vincolo di tempo sul turno di ciascun giocatore (es.: ogni giocatore ha 3 minuti ogni turno per fare la propria mossa);
- Player Limit: vincolo di tempo sul controllo della scacchiera di ciascun giocatore (es.: ogni giocatore ha 10 minuti in totale per fare le sue mosse durante un’intera partita).
- Game Participation: permettere a un giocatore di partecipare a una partita di scacchi, già configurata;
- Public Game Participation: permettere a un giocatore di partecipare a una partita pubblica qualsiasi;
- Private Game Participation: permettere a un giocatore di partecipare a una partita privata di cui conosce l’identificatore segreto;
- Friend Game Participation: permettere a un giocatore autenticato di partecipare a una partita privata a cui è stato invitato.
- Game Execution: gestione dello svolgimento di una partita tra due giocatori;
- Turn Execution: gestione di un turno della partita;
- Turn Control: durante il turno di un giocatore, tale giocatore deve essere l’unico ad avere il controllo sulla scacchiera;
- Turn Termination: all’esecuzione di una mossa, il turno termina e il controllo è ceduto al giocatore avversario.
- Chessboard Creation: creazione della scacchiera negli scacchi;
- Rank Creation: la scacchiera è definita da 8 righe numerate da 1 a 8, chiamate Rank;
- File Creation: la scacchiera è definita da 8 colonne identificate con le lettere da A a H, chiamate File.
- Piece Creation: creazione dei pezzi della scacchiera;
- Pawn Creation: creazione del pedone;
- Knight Creation: creazione del cavallo;
- Bishop Creation: creazione dell’alfiere;
- Rook Creation: creazione della torre;
- Queen Creation: creazione della regina;
- King Creation: creazione del re.
- Piece Movement: movimento dei pezzi sulla scacchiera;
- Movement Constraints: gestione dei vincoli di movimento;
- Border Constraint: nessun pezzo può muoversi al di fuori della scacchiera;
- Block Constraint: nessun pezzo, ad eccezione del cavallo, può muoversi scavalcando gli altri pezzi sulla scacchiera;
- Check Constraint: nessun pezzo può muoversi se tale mossa pone il giocatore corrente in scacco.
- Pawn Movement: movimento del pedone sulla scacchiera;
- One Forward: movimento di una casella in avanti;
- Double Forward: movimento di due caselle in avanti. Possibile solo alla prima mossa del pedone.
- Knight Movement: movimento del cavallo sulla scacchiera. Il cavallo può effettuare movimenti seguendo una traiettoria ad L;
- Bishop Movement: movimento dell’alfiere sulla scacchiera. L’alfiere può effettuare movimenti in diagonale;
- Rook Movement: movimento della torre sulla scacchiera. La torre può effettuare movimenti in verticale o in orizzontale;
- Queen Movement: movimento della regina sulla scacchiera. La regina può effettuare movimenti in verticale, in orizzontale e in diagonale;
- King Movement: movimento del re sulla scacchiera;
- One Around: movimento di una casella in qualsiasi direzione;
- Castling: movimento di due caselle a sinistra o a destra, verso una delle due torri del giocatore. Quando effettuato, la torre verso cui si è mosso il re si muove fino a scavalcare il re. Effettuabile solo se il re e la torre non hanno eseguito movimenti in precedenza e se non ci sono altri pezzi tra loro due.
- Movement Constraints: gestione dei vincoli di movimento;
- Piece Capture: gestione della cattura dei pezzi sulla scacchiera;
- Standard Capture: tutti i pezzi, ad eccezione del pedone, possono catturare un pezzo avversario effettuando un movimento su tale pezzo;
- Pawn Capture: gestione della cattura da parte del pedone;
- Diagonal Capture: il pedone può catturare un pezzo solo muovendosi di una posizione in avanti in diagonale;
- En Passant: il pedone può catturare un pedone avversario che, nel turno precedente, gli si è mosso accanto effettuando una mossa doppia. Tale cattura avviene muovendosi dietro il pedone avversario.
- Chessboard Analysis: riconoscimento dei possibili stati della scacchiera;
- Check: situazione in cui il re del giocatore corrente può essere catturato dal suo avversario nel turno successivo;
- Stale: situazione in cui il giocatore corrente non ha mosse disponibili;
- Checkmate: situazione in cui il giocatore corrente è sia in scacco che in stallo;
- Promotion: situazione in cui il giocatore corrente ha portato un pedone sul lato opposto della scacchiera e può sostituirlo con un cavallo, un alfiere, una torre o una regina.
- Turn Execution: gestione di un turno della partita;
- Game Configuration: permettere a un giocatore di creare e configurare una nuova partita di scacchi;
- Tournament Management: permettere di organizzare dei tornei che includono più partite tra diversi giocatori autenticati;
- Tournament Configuration: permettere a un amministratore di creare e configurare dei tornei di scacchi (es.: massimo numero di partecipanti, numero di round…);
- Tournament Participation: permettere a un giocatore autenticato di partecipare a un torneo;
- Tournament Execution: gestione dell’esecuzione di un torneo, basandosi sul sistema svizzero;
- Round Execution: gestione di un round del sistema svizzero;
- Participant Pairing: gestione della formazione delle coppie di giocatori autenticati che devono affrontarsi, sulla base dei risultati di ciascun giocatore autenticato;
- Match Execution: gestione dell’esecuzione dei match tra le coppie di giocatori autenticati che devono affrontarsi;
- Result Aggregation: gestione dell’aggregazione dei risultati dei match eseguiti nel round corrente.
- Round Execution: gestione di un round del sistema svizzero;
- Tournament Awards: gestione della premiazione del torneo;
- Tournament Storage: gestione della memorizzazione dei dati relativi ai tornei (es.: numero di partecipanti massimi e correnti…).
- Authentication Management: permettere a un giocatore ospite di autenticarsi all’interno dell’applicazione;
- Sign In: permettere a un giocatore ospite di registrarsi all’applicazione;
- Registration Form: gestione dell’inserimento dei dati del giocatore ospite. In particolare, sono richiesti la sua email, il suo username e la sua password;
- Confirmation Email: gestione dell’email per ultimare la registrazione del giocatore ospite, verificando che l’email da lui specificata sia effettivamente la sua.
- Log In: permettere a un giocatore ospite di accedere all’applicazione, conoscendo le proprie credenziali;
- Token Creation: creazione di un token utente riferito a una sessione attiva di un giocatore autenticato, richiesto per accedere alle operazioni sensibili dell’applicazione (es.: cambio della password…);
- Token Expiration: gestire la scadenza dei token utente, per limitare la validità di uno specifico accesso nel tempo;
- Authorization Management: gestire i permessi dell’utente in base al suo ruolo nell’applicazione (es.: dipendente dell’azienda, giocatore…).
- Log out: permettere a un giocatore autenticato di disconnettersi dall’applicazione;
- Token Revocation: gestione della revoca ed eliminazione del token utente riferito alla sessione attiva del giocatore autenticato appena disconnesso.
- Sensitive Data Storage: gestione dei dati sensibili dei giocatori registrati all’applicazione;
- Secure Storage: gestione della memorizzazione dei dati sensibili su una piattaforma sicura. Tra i dati sensibili, sono inclusi l’email del giocatore, la sua password e i token utente delle sessioni attive;
- Cryptography: gestione dell’oscuramento dei dati sensibili (es.: password degli utenti dell’applicazione…).
- Sign In: permettere a un giocatore ospite di registrarsi all’applicazione;
- Profile Management: permettere a un giocatore autenticato di gestire il proprio profilo utente;
- Profile Visualization: permettere a un giocatore autenticato di visualizzare il proprio profilo utente, ovvero le informazioni relative al proprio account (es.: email, username…);
- Profile Update: permettere a un giocatore autenticato di aggiornare le informazioni relative al proprio account (es.: email, password…).
- Socialization Management: permettere ai giocatori di interagire e socializzare tra di loro;
- Friend Management: gestione delle amicizie all’interno dell’applicazione;
- Friend Request: permettere a due giocatori autenticati di stringere amicizia;
- Send Request: permettere a un giocatore autenticato di inviare una richiesta di amicizia a un altro giocatore registrato all’applicazione;
- In-Game Request: permettere a un giocatore autenticato di inviare una richiesta di amicizia al giocatore autenticato avversario durante una partita;
- Request By Username: permettere a un giocatore autenticato di inviare una richiesta di amicizia a un altro giocatore registrato all’applicazione, conoscendone lo username.
- Receive Request: permettere a un giocatore autenticato di accettare o rifiutare una richiesta di amicizia ricevuta da un altro giocatore registrato all’applicazione;
- Request Visualization: permettere a un giocatore autenticato di visualizzare le richieste di amicizia ricevute dagli altri giocatori registrati all’applicazione;
- Request Notification: gestione della notifica a un giocatore autenticato della ricezione di una nuova richiesta di amicizia;
- Accept Request: permettere a un giocatore autenticato di accettare una richiesta di amicizia inviata da un altro giocatore;
- Reject Request: permettere a un giocatore autenticato di rifiutare una richiesta di amicizia inviata da un altro giocatore.
- Send Request: permettere a un giocatore autenticato di inviare una richiesta di amicizia a un altro giocatore registrato all’applicazione;
- Friend Visualization: permettere a un giocatore autenticato di visualizzare se i propri amici sono offline, online o all’interno di una partita;
- Friend Removal: permettere a un giocatore autenticato di rimuovere un altro giocatore dalla lista dei suoi amici;
- Friend Storage: gestione della memorizzazione degli amici dei giocatori e del loro stato.
- Friend Request: permettere a due giocatori autenticati di stringere amicizia;
- Communication Management: permettere ai giocatori di comunicare tra di loro;
- Chat: permettere ai giocatori di scambiarsi dei messaggi testuali tra di loro;
- In-Game Chat: permettere a un giocatore di scambiare dei messaggi testuali con il proprio avversario durante una partita;
- Send Message: permettere a un giocatore di inviare messaggi testuali al proprio avversario durante una partita;
- Receive Message: permettere a un giocatore di ricevere messaggi testuali provenienti dal proprio avversario durante una partita;
- Message Visualization: permettere a un giocatore di visualizzare i messaggi testuali scambiati con il proprio avversario durante una partita;
- Message Notification: gestione della notifica a un giocatore della ricezione di un messaggio dell’avversario durante una partita.
- Friend Chat: permettere a un giocatore autenticato di scambiare dei messaggi testuali con un suo amico;
- Send Message: permettere a un giocatore autenticato di inviare messaggi testuali a un suo amico;
- Receive Message: permettere a un giocatore registrato di ricevere messaggi testuali provenienti da un suo amico;
- Message Visualization: permettere a un giocatore autenticato di visualizzare i messaggi testuali scambiati con un suo amico;
- Message Forwarding: gestione dell’inoltro di un messaggio da un giocatore autenticato a un suo amico;
- Message Notification: gestione della notifica a un giocatore autenticato della ricezione di un messaggio di uno dei suoi amici;
- Friend Chat Storage: gestione della memorizzazione dei messaggi scambiati tra ogni giocatore registrato e i suoi amici.
- In-Game Chat: permettere a un giocatore di scambiare dei messaggi testuali con il proprio avversario durante una partita;
- Chat: permettere ai giocatori di scambiarsi dei messaggi testuali tra di loro;
- Friend Management: gestione delle amicizie all’interno dell’applicazione;
- Statistics Management: permettere a un giocatore di monitorare le statistiche di un giocatore registrato all’applicazione, tra cui le proprie statistiche;
- Score Visualization: permettere a un giocatore di visualizzare il punteggio ELO di un giocatore registrato all’applicazione;
- Score Evaluation: gestione della valutazione del punteggio di un giocatore autenticato al termine di ogni partita;
- Score Storage: gestione della memorizzazione dello storico dei punteggi di ciascun giocatore registrato all’applicazione;
- Score History Visualization: permettere a un giocatore di visualizzare come è cambiato nel tempo il punteggio ELO di un giocatore registrato all’applicazione.
- Tournament Visualization: permettere a un giocatore di visualizzare i risultati ottenuti nei tornei a cui ha partecipato un giocatore registrato all’applicazione;
- Tournament Storage: gestire la memorizzazione dei risultati di ogni torneo dei giocatori registrati all’applicazione.
- Leaderboard Visualization: permettere a un giocatore di visualizzare la classifica globale dei giocatori registrati all’applicazione;
- Rank Visualization: permettere a un giocatore autenticato di visualizzare la propria posizione nella classifica globale.
- Score Visualization: permettere a un giocatore di visualizzare il punteggio ELO di un giocatore registrato all’applicazione;
- Notification Management: gestione delle notifiche in tempo reale dell’applicazione;
- Notification Forwarding: gestione della notifica in tempo reale ai giocatori autenticati degli eventi che li coinvolgono;
- Notification Storage: gestione della memorizzazione delle notifiche relative ai giocatori registrati all’applicazione.
- Sponsor Management: gestione della pubblicità agli sponsor dell’applicazione (es.: banner, video…).
31-01-2023
Back to Top | Back to Planning | Previous Version
Requisiti
Goal: realizzare un’applicazione web per giocare a scacchi online.
M
Game Management: permettere a due giocatori dell’applicazione di giocare insieme;M
Game Configuration: permettere a un giocatore di creare e configurare una nuova partita di scacchi;M
Public Game: permettere a un giocatore di creare una partita pubblica di scacchi, a cui chiunque può partecipare;S
Private Game: permettere a un giocatore di creare una partita privata di scacchi, a cui può partecipare solo chi conosce l’identificatore segreto;C
Friend Game: permettere a un giocatore autenticato di creare una partita privata di scacchi invitando un suo specifico amico nell’applicazione a parteciparci;M
Time Constraint: permette di configurare i vincoli di tempo della partita;M
No Limit: nessun vincolo di tempo;C
Turn Limit: vincolo di tempo sul turno di ciascun giocatore (es.: ogni giocatore ha 3 minuti ogni turno per fare la propria mossa);C
Player Limit: vincolo di tempo sul controllo della scacchiera di ciascun giocatore (es.: ogni giocatore ha 10 minuti in totale per fare le sue mosse durante un’intera partita).
M
Game Participation: permettere a un giocatore di partecipare a una partita di scacchi, già configurata;M
Public Game Participation: permettere a un giocatore di partecipare a una partita pubblica qualsiasi;S
Private Game Participation: permettere a un giocatore di partecipare a una partita privata di cui conosce l’identificatore segreto;C
Friend Game Participation: permettere a un giocatore autenticato di partecipare a una partita privata a cui è stato invitato.
M
Game Execution: gestione dello svolgimento di una partita tra due giocatori;M
Turn Execution: gestione di un turno della partita;M
Turn Control: durante il turno di un giocatore, tale giocatore deve essere l’unico ad avere il controllo sulla scacchiera;M
Turn Termination: all’esecuzione di una mossa, il turno termina e il controllo è ceduto al giocatore avversario.
M
Chessboard Creation: creazione della scacchiera negli scacchi;M
Rank Creation: la scacchiera è definita da 8 righe numerate da 1 a 8, chiamate Rank;M
File Creation: la scacchiera è definita da 8 colonne identificate con le lettere da A a H, chiamate File.
M
Piece Creation: creazione dei pezzi della scacchiera;M
Pawn Creation: creazione del pedone;M
Knight Creation: creazione del cavallo;M
Bishop Creation: creazione dell’alfiere;M
Rook Creation: creazione della torre;M
Queen Creation: creazione della regina;M
King Creation: creazione del re.
M
Piece Movement: movimento dei pezzi sulla scacchiera;M
Movement Constraints: gestione dei vincoli di movimento;M
Border Constraint: nessun pezzo può muoversi al di fuori della scacchiera;M
Block Constraint: nessun pezzo, ad eccezione del cavallo, può muoversi scavalcando gli altri pezzi sulla scacchiera;M
Check Constraint: nessun pezzo può muoversi se tale mossa pone il giocatore corrente in scacco.
M
Pawn Movement: movimento del pedone sulla scacchiera;M
One Forward: movimento di una casella in avanti;M
Double Forward: movimento di due caselle in avanti. Possibile solo alla prima mossa del pedone.
M
Knight Movement: movimento del cavallo sulla scacchiera. Il cavallo può effettuare movimenti seguendo una traiettoria ad L;M
Bishop Movement: movimento dell’alfiere sulla scacchiera. L’alfiere può effettuare movimenti in diagonale;M
Rook Movement: movimento della torre sulla scacchiera. La torre può effettuare movimenti in verticale o in orizzontale;M
Queen Movement: movimento della regina sulla scacchiera. La regina può effettuare movimenti in verticale, in orizzontale e in diagonale;M
King Movement: movimento del re sulla scacchiera;M
One Around: movimento di una casella in qualsiasi direzione;M
Castling: movimento di due caselle a sinistra o a destra, verso una delle due torri del giocatore. Quando effettuato, la torre verso cui si è mosso il re si muove fino a scavalcare il re. Effettuabile solo se il re e la torre non hanno eseguito movimenti in precedenza e se non ci sono altri pezzi tra loro due.
M
Piece Capture: gestione della cattura dei pezzi sulla scacchiera;M
Standard Capture: tutti i pezzi, ad eccezione del pedone, possono catturare un pezzo avversario effettuando un movimento su tale pezzo;M
Pawn Capture: gestione della cattura da parte del pedone;M
Diagonal Capture: il pedone può catturare un pezzo solo muovendosi di una posizione in avanti in diagonale;M
En Passant: il pedone può catturare un pedone avversario che, nel turno precedente, gli si è mosso accanto effettuando una mossa doppia. Tale cattura avviene muovendosi dietro il pedone avversario.
M
Chessboard Analysis: riconoscimento dei possibili stati della scacchiera;M
Check: situazione in cui il re del giocatore corrente può essere catturato dal suo avversario nel turno successivo;M
Stale: situazione in cui il giocatore corrente non ha mosse disponibili;M
Checkmate: situazione in cui il giocatore corrente è sia in scacco che in stallo;M
Promotion: situazione in cui il giocatore corrente ha portato un pedone sul lato opposto della scacchiera e può sostituirlo con un cavallo, un alfiere, una torre o una regina.
S
Tournament Management: permettere di organizzare dei tornei che includono più partite tra diversi giocatori autenticati;S
Tournament Configuration: permettere a un amministratore di creare e configurare dei tornei di scacchi (es.: massimo numero di partecipanti, numero di round…);S
Tournament Participation: permettere a un giocatore autenticato di partecipare a un torneo;S
Tournament Execution: gestione dell’esecuzione di un torneo, basandosi sul sistema svizzero;S
Round Execution: gestione di un round del sistema svizzero;S
Participant Pairing: gestione della formazione delle coppie di giocatori autenticati che devono affrontarsi, sulla base dei risultati di ciascun giocatore autenticato;S
Match Execution: gestione dell’esecuzione dei match tra le coppie di giocatori autenticati che devono affrontarsi;S
Result Aggregation: gestione dell’aggregazione dei risultati dei match eseguiti nel round corrente.
S
Tournament Awards: gestione della premiazione del torneo;S
Tournament Storage: gestione della memorizzazione dei dati relativi ai tornei (es.: numero di partecipanti massimi e correnti…).
M
Authentication Management: permettere a un giocatore ospite di autenticarsi all’interno dell’applicazione;M
Sign In: permettere a un giocatore ospite di registrarsi all’applicazione;M
Registration Form: gestione dell’inserimento dei dati del giocatore ospite. In particolare, sono richiesti la sua email, il suo username e la sua password;W
Confirmation Email: gestione dell’email per ultimare la registrazione del giocatore ospite, verificando che l’email da lui specificata sia effettivamente la sua;
M
Log In: permettere a un giocatore ospite di accedere all’applicazione, conoscendo le proprie credenziali;M
Token Creation: creazione di un token utente riferito a una sessione attiva di un giocatore autenticato, richiesto per accedere alle operazioni sensibili dell’applicazione (es.: cambio della password…);M
Token Expiration: gestire la scadenza dei token utente, per limitare la validità di uno specifico accesso nel tempo;M
Authorization Management: gestire i permessi dell’utente in base al suo ruolo nell’applicazione (es.: dipendente dell’azienda, giocatore…).
M
Log out: permettere a un giocatore autenticato di disconnettersi dall’applicazione;M
Token Revocation: gestione della revoca ed eliminazione del token utente riferito alla sessione attiva del giocatore autenticato appena disconnesso.
M
Sensitive Data Storage: gestione dei dati sensibili dei giocatori registrati all’applicazione;M
Secure Storage: gestione della memorizzazione dei dati sensibili su una piattaforma sicura. Tra i dati sensibili, sono inclusi l’email del giocatore, la sua password ed i token utente delle sessioni attive;M
Cryptography: gestione dell’oscuramento dei dati sensibili (es.: password degli utenti dell’applicazione…).
M
Profile Management: permettere a un giocatore autenticato di gestire il proprio profilo utente;M
Profile Visualization: permettere a un giocatore autenticato di visualizzare il proprio profilo utente, ovvero le informazioni relative al proprio account (es.: email, username…);M
Profile Update: permettere a un giocatore autenticato di aggiornare le informazioni relative al proprio account (es.: email, password…).
C
Socialization Management: permettere ai giocatori di interagire e socializzare tra di loro;C
Friend Management: gestione delle amicizie all’interno dell’applicazione;C
Friend Request: permettere a due giocatori autenticati di stringere amicizia;C
Send Request: permettere a un giocatore autenticato di inviare una richiesta di amicizia a un altro giocatore registrato all’applicazione;W
In-Game Request: permettere a un giocatore autenticato di inviare una richiesta di amicizia al giocatore autenticato avversario durante una partita;C
Request By Username: permettere a un giocatore autenticato di inviare una richiesta di amicizia a un altro giocatore registrato all’applicazione, conoscendone lo username.
C
Receive Request: permettere a un giocatore autenticato di accettare o rifiutare una richiesta di amicizia ricevuta da un altro giocatore registrato all’applicazione;C
Request Visualization: permettere a un giocatore autenticato di visualizzare le richieste di amicizia ricevute dagli altri giocatori registrati all’applicazione;W
Request Notification: gestione della notifica a un giocatore autenticato della ricezione di una nuova richiesta di amicizia;C
Accept Request: permettere a un giocatore autenticato di accettare una richiesta di amicizia inviata da un altro giocatore;C
Reject Request: permettere a un giocatore autenticato di rifiutare una richiesta di amicizia inviata da un altro giocatore.
C
Friend Visualization: permettere a un giocatore autenticato di visualizzare se i propri amici sono offline, online o all’interno di una partita;C
Friend Removal: permettere a un giocatore autenticato di rimuovere un altro giocatore dalla lista dei suoi amici;C
Friend Storage: gestione della memorizzazione degli amici dei giocatori e del loro stato.
C
Communication Management: permettere ai giocatori di comunicare tra di loro;C
Chat: permettere ai giocatori di scambiarsi dei messaggi testuali tra di loro;W
In-Game Chat: permettere a un giocatore di scambiare dei messaggi testuali con il proprio avversario durante una partita;W
Send Message: permettere a un giocatore di inviare messaggi testuali al proprio avversario durante una partita;W
Receive Message: permettere a un giocatore di ricevere messaggi testuali provenienti dal proprio avversario durante una partita;W
Message Visualization: permettere a un giocatore di visualizzare i messaggi testuali scambiati con il proprio avversario durante una partita;W
Message Notification: gestione della notifica a un giocatore della ricezione di un messaggio dell’avversario durante una partita.
C
Friend Chat: permettere a un giocatore autenticato di scambiare dei messaggi testuali con un suo amico;C
Send Message: permettere a un giocatore autenticato di inviare messaggi testuali a un suo amico;C
Receive Message: permettere a un giocatore registrato di ricevere messaggi testuali provenienti da un suo amico;C
Message Visualization: permettere a un giocatore autenticato di visualizzare i messaggi testuali scambiati con un suo amico;C
Message Forwarding: gestione dell’inoltro di un messaggio da un giocatore autenticato a un suo amico;W
Message Notification: gestione della notifica a un giocatore autenticato della ricezione di un messaggio di uno dei suoi amici;C
Friend Chat Storage: gestione della memorizzazione dei messaggi scambiati tra ogni giocatore registrato e i suoi amici.
C
Statistics Management: permettere a un giocatore di monitorare le statistiche di un giocatore registrato all’applicazione, tra cui le proprie statistiche;C
Score Visualization: permettere a un giocatore di visualizzare il punteggio ELO di un giocatore registrato all’applicazione;C
Score Evaluation: gestione della valutazione del punteggio di un giocatore autenticato al termine di ogni partita;C
Score Storage: gestione della memorizzazione dello storico dei punteggi di ciascun giocatore registrato all’applicazione;W
Score History Visualization: permettere a un giocatore di visualizzare come è cambiato nel tempo il punteggio ELO di un giocatore registrato all’applicazione.
C
Tournament Visualization: permettere a un giocatore di visualizzare i risultati ottenuti nei tornei a cui ha partecipato un giocatore registrato all’applicazione;C
Tournament Storage: gestire la memorizzazione dei risultati di ogni torneo dei giocatori registrati all’applicazione.
C
Leaderboard Visualization: permettere a un giocatore di visualizzare la classifica globale dei giocatori registrati all’applicazione;C
Rank Visualization: permettere a un giocatore autenticato di visualizzare la propria posizione nella classifica globale.
M
Notification Management: gestione delle notifiche in tempo reale dell’applicazione;M
Notification Forwarding: gestione della notifica in tempo reale ai giocatori autenticati degli eventi che li coinvolgono;M
Notification Storage: gestione della memorizzazione delle notifiche relative ai giocatori registrati all’applicazione.
M
Sponsor Management: gestione della pubblicità agli sponsor dell’applicazione (es.: banner, video…).
Legenda
M
: Must-Have: requisito necessario, con elevato Business Value.S
: Should-Have: requisito non necessario, con elevato Business Value.C
: Could-Have: requisito non necessario, con discreto Business Value.W
: Would-Have: requisito non necessario, con Business Value minimo o inesistente.