Base di dati per una libreria on-line

Transcript

Base di dati per una libreria on-line
Base di dati per una libreria on-line
(Specifica dei requisiti)
1
Descrizione della realtà di interesse
Si vuole progettare una base di dati per la gestione di una libreria on-line. La base
di dati è amministrata dal gestore della libreria ed è acceduta via web da clienti e
visitatori. Clienti sono coloro che hanno eseguito la registrazione memorizzando i
propri dati nella base di dati, mentre visitatori sono coloro che accedono al sito web
della libreria senza essere registrati.
L’acquisto di libri è riservato ai clienti e avviene come segue. Si inseriscono i libri
da acquistare in un carrello virtuale, specificando per ogni libro il numero di copie
desiderate. A partire dal carrello virtuale si crea quindi un carrello reale (da qui in poi
chiamato semplicemente carrello) memorizzandolo nella base di dati. La creazione
del carrello deve avvenire entro la stessa sessione di visita del sito web, e richiede
l’immissione di username e password, assegnati durante la registrazione. L’acquisto
avviene emettendo un ordine per il carrello creato (ciò può essere fatto anche in una
data successiva a quella di creazione del carrello). Per emettere un ordine si deve
specificare una carta di credito e autorizzare l’acquisto dei libri presenti nel carrello
che si vuole ordinare. Il costo addebitato al cliente è dato dalla somma dei prezzi
dei libri più le spese di spedizione, che sono calcolate automaticamente dal sistema
durante l’emissione dell’ordine. Infine, l’ordine viene evaso dal gestore della libreria e
ciò può avvenire in una data successiva a quella di emissione dell’ordine (ad esempio, se
i libri ordinati non sono disponibili nel numero di copie desiderate e bisogna richiederli
alla casa editrice).
Un visitatore può consultare il catalogo della libreria e mettere dei libri in un
carrello virtuale, ma per poter procedere all’acquisto, secondo la procedure sopra
indicata, dovrà eseguire prima la registrazione.
2
Descrizione dei dati
L’organizzazione della base di dati ruota attorno ai seguenti concetti.
Libro Il catalogo della libreria è costituito da diversi libri per ciascuno dei
quali la libreria dispone di 0 o più copie (0 significa che il libro non è al momento disponibile ma che lo sarà più avanti). Di un libro vengono memorizzati i seguenti dati: autore/i, titolo, anno di pubblicazione, ISBN, casa
editrice, prezzo, copie disponibili. Un libro è univocamente identificato dal
codice ISBN.
Autore Ogni autore di un libro presente nel catalogo della libreria è memorizzato
nella base di dati con i seguenti dati: codice-autore, nome, cognome. Un autore
è univocamente identificato dal codice-autore.
1
Casa Editrice Ogni casa editrice di un libro presente nel catalogo della libreria è
memorizzata nella base di dati con i seguenti dati: nome, indirizzo, telefono,
email, partita IVA. Una case editrice è univocamente identificata dalla partita
IVA.
Cliente Di un cliente vengono memorizzati, in fase di registrazione, i
seguenti dati: codice-cliente, nome, cognome, indirizzo, telefono, email,
username, password. Un cliente è univocamente identificato dal codice cliente.
Carrello E’ ottenuto dalla creazione di un carrello virtuale ed è costituito da uno o
più libri, per ciascuno dei quali è specificato un numero (maggiore o uguale a uno) di
copie. Di un carrello vengono memorizzati i seguenti dati: cliente, data e ora di
creazione, libri costituenti con i relativi numeri di copie. Un carrello
è univocamente identificato dal cliente che lo ha creato e dalla data e ora di creazione.
Ordine E’ emesso da un cliente per l’acquisto di un carrello. Di un ordine vengono
memorizzati i seguenti dati: codice-ordine, cliente, carrello, data e ora di
emissione, carta di credito, costo libri, spese di spedizione. Per gli
ordini evasi va anche memorizzata data e ora di evasione. Un ordine è univocamente identificato dal codice-ordine.
3
Descrizione degli utenti
Gli utenti della base di dati sono: il gestore della liberia, che amministra la base
di dati; e clienti e visitatori, che accedono alla base di dati via web.
4
Descrizione dei casi d’uso
I (principali) casi d’uso sono differenziati in base al tipo di utente.
Gestore della libreria: lettura/modifica dei dati relativi a libri, autori, case editrici e clienti; evasione di un ordine.
Cliente: lettura/modifica dei propri dati di registrazione; consultazione del catalogo ricercando un libro tramite una qualsiasi combinazione di (autore/i, titolo, casa
editrice, anno di pubblicazione, ISBN); inserimento di un libro in un carrello virtuale;
creazione di un carrello a partire da un carrello virtuale; modifica/cancellazione di un
carrello; emissione di un ordine per un carrello creato in precedenza.
Visitatore: registrazione; consultazione del catalogo ricercando un libro tramite
una qualsiasi combinazione di (autore/i, titolo, casa editrice, anno di pubblicazione,
ISBN); inserimento di un libro in un carrello virtuale.
2
5
Glossario dei Termini
Carrello (reale) Un insieme di libri, ciascuno in una o più copie, creato da un cliente
memorizzando nella base di dati un carrello virtuale.
Carrello virtuale Un insieme di libri, ciascuno in una o più copie, specificato da un
visitatore/cliente durante la visita del sito della libreria.
Cliente Persona che ha eseguito la registrazione e i cui dati sono memorizzati nella
base di dati.
Emissione di un ordine L’autorizzazione data da un cliente per l’acquisto di un
carrello da lui creato.
Evasione di un ordine Coincide con l’effettiva spedizione da parte del gestore della
libreria dei libri richiesti da un cliente con l’emissione di un ordine.
Registrazione L’immissione dei propri dati da parte di un visitatore che diventa in
questo modo un cliente.
Visitatore Persona che accede al sito web della libreria senza essere registrato e di
cui non c’è traccia nella base di dati.
N.B.: Nella specifica manca la stima dei volumi e della frequenza dei vari casi d’uso.
Inoltre, ai fini del progetto fisico della base di dati, sarà necessario definire esattamente
i domini dei campi associati ai diversi concetti presenti, come ad esempio i codici
utilizzati per autori, clienti e ordini.
3