1
Fork 0
mirror of https://github.com/Steffo99/alexandria.git synced 2024-11-24 22:44:19 +00:00
bdd-2020-alexandria/1-descrizione.md

6.1 KiB

Descrizione

Si vuole realizzare una base di dati a supporto di un sito web che permetta la creazione, gestione e condivisione della propria raccolta multimediale, come è possibile fare su altri siti web, quali aNobii, MyAnimeList e The Backloggery.

Il sito sarà suddiviso in sezioni, ciascuna riguardante un media diverso:

In futuro, si potrà pensare di espandere il sito web, includendo nuove sezioni, come ad esempio Serie TV.

Utenti

Chiunque può registrarsi al sito web scegliendo un username univoco e inserendo una password segreta (sarà hashata con l'algoritmo bcrypt prima che venga inserita nel database), creando così un utente.

Ogni utente avrà una sua raccolta multimediale, in cui potrà aggiungere, modificare e rimuovere elementi (descritti in seguito).

Amministratori

Esisterà una tipologia particolare di utente: l'utente amministratore.

Gli amministratori potranno modificare le raccolte multimediali di tutti gli utenti, in aggiunta alla propria.

Inoltre, potranno decidere di bannare utenti dal sito, impedendo loro di effettuare l'accesso e di conseguenza di interagire con la loro raccolta.

Elementi

Gli utenti potranno aggiungere elementi alla loro raccolta multimediale.

Un elemento rappresenta una copia di un libro, di un film o di un videogioco posseduta da un utente.

Ogni elemento avrà associato uno stato da una lista di opzioni diversa per ogni tipologia:

  • Libro
    • Da iniziare
    • Iniziato
    • Finito
    • Abbandonato
  • Film
    • Da vedere
    • Visto
  • Videogioco
    • Da iniziare
    • Iniziato
    • Finito
    • Completato al 100%

Inoltre, ogni elemento avrà associata una provenienza da un'altra lista:

  • Libro
    • Acquistato (su supporto fisico)
    • Acquistato (su supporto digitale)
    • Preso in prestito (da restituire)
    • Perso / Venduto / Restituito / Non più posseduto
    • Altro
  • Film
    • Acquistato (su supporto fisico)
    • Visto al cinema
    • Visto in televisione
    • Visto su un servizio di streaming
    • Preso in prestito (da restituire)
    • Perso / Venduto / Restituito / Non più posseduto
    • Altro
  • Videogioco
    • Gratuito
    • Acquistato
    • Giocato in abbonamento
    • Preso in prestito (da restituire)
    • Perso / Venduto / Restituito / Non più posseduto
    • Altro

Un utente potrà creare un nuovo oggetto (edizione di libro, film...) di cui aggiungere poi un elemento nella sua libreria.

Per farlo dovrà selezionarne il tipo e inserirne la chiave (ISBN, EIDR...) e il titolo; tutti gli altri campi saranno facoltativi: possono essere compilati per completezza, oppure lasciati vuoti.

Un utente può inoltre modificare una pagina già esistente al fine di aggiungervi informazioni o correggere errori.

Un amministratore è in grado di eliminare le pagine, in caso esse rappresentino oggetti non realmente esistenti.

Recensioni

Un utente potrà lasciare una recensione ad ogni elemento presente nella sua raccolta.

La recensione sarà composta da una valutazione (tra 0 e 100, dove 100 è la valutazione migliore), un commento e la data di pubblicazione.

La media delle valutazioni delle recensioni relativa a un dato libro / film / serie TV / videogioco sarà poi visualizzata nella relativa pagina, assieme ad alcune recensioni selezionate casualmente.

Gli utenti potranno decidere in qualsiasi momento di eliminare una loro recensione.

Gli amministratori potranno eliminare le recensioni nel caso queste violino i termini di servizio del sito web.

Libri ed edizioni

Ogni libro avrà una sua pagina in cui sarà presente il titolo originale, gli autori, i generi, un breve riassunto della trama, l'elenco di tutte le sue edizioni (sia in formato libro sia in formato audiolibro) e opzionalmente una lista di opere correlate (sequel, prequel, libri ambientati nello stesso universo, etc).

Ciascuna edizione del libro avrà una seconda pagina con ulteriori informazioni, quali il suo titolo, la copertina, la casa editrice e il numero di pagine; ciascuna edizione sarà identificata da il relativo codice ISBN.

Le edizioni in formato audiolibro avranno attributi diversi: invece che avere il numero di pagine e la copertina, essi avranno la durata in minuti e secondi della registrazione e opzionalmente un'immagine che rappresenti l'audiolibro.

Recensioni e valutazione media saranno calcolate sia per libro, sia per edizione.

Film

Ogni film avrà una sua pagina in cui sarà presente il titolo originale, i titoli nelle varie lingue (identificati dal codice ISO 639 della lingua), una sinossi della trama, la durata, la casa produttrice, il cast, e, come per i libri, una lista opzionale di pellicole correlate.

I film saranno identificati dal loro codice EIDR, e per ciascuno di essi verrà calcolata la valutazione media dalle recensioni, che sarà visualizzata sulla pagina assieme a un campione di recensioni.

Videogiochi

Ogni videogioco avrà una sua pagina in cui sarà presente il titolo, lo sviluppatore, il publisher, una breve descrizione del gioco, l'elenco di tutte le piattaforme in cui esso è disponibile e, come per libri e film, un elenco di altri giochi correlati.

Per ogni piattaforma sarà disponibile una sottopagina, che conterrà la box art di quella versione, il nome dello studio che ha effettuato il porting ed eventualmente il titolo se diverso da quello principale.

Recensioni e valutazione media saranno disponibili sia per ogni singola piattaforma, sia per il gioco nel suo complesso.