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