Issuu on Google+

ANALISI DEI REQUISITI R.A.D.

(Requirements Analysis Document)


1. Introduzione 1.1 Descrizione del sistema Il software di cui è richiesta la progettazione e realizzazione intende migliorare e facilitare quelle che sono le operazioni di gestione di una biblioteca, in modo da fornire un supporto adeguato a velocizzare tutte le seguenti attività: • Iscrizione di nuovi utenti che possono richiedere il prestito. • Ricerca dei libri da parte degli utenti che intendono effettuare un prestito. • Richieste di prestito. • Registrazione dei libri in prestito. • Aggiornamento della situazione dei libri in prestito. • Invio Solleciti ai ritardatari nella consegna dei prestiti. • Ricerche di informazioni riguardanti libri, utenza, prestiti e solleciti.

1.2 Scopo del sistema Lo scopo del sistema è quello di fornire un software che consenta una gestione ordinata e semplice di tutte quelle operazioni che prima venivano svolte manualmente dal personale addetto alla gestione della biblioteca.

2. Sistema corrente Il sistema, attualmente, non prevede nessun software di gestione della biblioteca.

2


La gestione avviene tramite supporti cartacei (o al più servendosi di telefoni e fax) sia per l’iscrizione (sotto la quale si riceve una tessera), sia per la richiesta del prestito, sia per la determinazione della collocazione dei libri in prestito, sia per la registrazione dell’avvenuta consegna e restituzione dei libri in prestito da parte dell’utente sia per l’eventuale invio dei solleciti in caso di utenti ritardatari.

3. Sistema proposto 3.1 Visione generale Il nostro sistema fornirà tutte quelle funzionalità necessarie alle diverse figure professionali coinvolte affinché siano in grado di eseguire tutte le operazioni necessarie alla corretta ed efficiente gestione della biblioteca. Il tutto verrà realizzato tenendo in debita considerazione il regolamento interno vigente. Considerando che allo stato attuale non esiste nessun sistema informatico di gestione e che le figure professionali coinvolte potrebbero non avere esperienze in campo informatico punteremo sulla realizzazione di interfacce grafiche intuitive e di semplice utilizzo al fine di venire incontro alle esigenze di ogni singolo utente del sistema.

3


3.2 Requisiti funzionali Dall’esame delle richieste effettuate dal cliente si evince che ognuno dei dipendenti svolge determinate funzioni che nel loro insieme contribuiscono alla corretta ed efficiente gestione della biblioteca. Al fine di fornire ad ognuno di essi solo quelle funzionalità di cui realmente necessita si è optato per una suddivisione in settori. Il sistema prevede la presenza di tre settori (Amministrazione, Utente, Bibliotecario) ognuno dei quali sarà in grado di svolgere determinati servizi. In particolare, avremo la seguente suddivisione dei compiti. Servizi concessi all’amministrazione: • Gestione Utenza. • Gestione Solleciti. • Archivio Prestiti Servizi concessi al bibliotecario: • Gestione Prestiti • Gestione Libri Servizi concessi all’utente: • Gestione Utente Vediamo adesso di analizzare con maggiore dettaglio quanto appena detto.

4


3.2.1 Amministrazione Il sistema Amministrazione permette all’Amministratore di potere effettuare le seguenti operazioni: • Gestione Utenza L’Amministratore può attraverso questa funzionalità accedere alle operazione che riguardano la gestione dell’utenza. Esso è quindi in grado di eseguire operazioni che riguardano : 1. Inserimento. 2. Cancellazione. 3. Modifica dei dati personali 4. Visualizzazione informazioni 5. Stampa Tesserino relative all’utenza della biblioteca. • Gestione Solleciti L’Amministratore tramite questa funzione accede alle operazioni che gli consentono di controllare la situazione dei solleciti, cioè può: 1. Inviare un sollecito agli utenti ritardatari. 2. Visualizzare informazioni sui solleciti per eventuali ricerche statistiche o altro. 3. Cancellare solleciti. • Archivio Prestiti Tramite questa funzionalità, l’Amministratore è in grado di : 5


1. Visualizzare Informazioni sui prestiti a fini statistici o per altri scopi. 2. Modificare i dati relativi ad un prestito 3. Cancellare prestiti.

3.2.2 Utente Il sistema Utente permette all’utente di poter effettuare le seguenti operazioni: • Gestione Utente L’Utente attraverso questa funzionalità accede alle operazioni ad esso consentite, che gli permettono di: 1. Richiedere prestiti (in realtà questa operazione consiste nella stampa di un modulo richiesta prestito che consegnerà al bibliotecario per richiedere un prestito) 2. Visualizzare la sua situazione personale corrente. 3. Modificare la propria password nel caso questa non risulti più sicura.

3.2.3Bibliotecario Il sistema Bibliotecario permette al bibliotecario di effettuare le seguenti operazioni: • Gestione Prestiti 6


Questa funzione permette al bibliotecario di aggiornare l’archivio della biblioteca quando consegna ad un utente il libro in prestito e quando viene effettuata la restituzione del prestito alla biblioteca. Le funzionalità fornite sono dunque: 1. Consegna libro 2. Restituzione prestito • Gestione Libri Tramite questa funzionalità il bibliotecario è in grado di accedere a tutte quelle operazioni riguardanti i libri, ossia: 1. Inserire Nuovi Libri 2. Cancellare Libri 3. Modificare i dati relativi ai libri 4. Visualizzare Informazioni riguardanti i libri

3.3 Requisiti non funzionali 3.3.1 Interfaccia utente Le interfacce sono state create per soddisfare le esigenze dei diversi utenti tenendo conto della loro preparazione e della loro competenza. Non essendo presente nessun sistema di gestione informatico precedente si suppone che il grado di conoscenza informatica degli utilizzatori del software sia medio-bassa e quindi si è puntato sulla realizzazione di interfacce grafiche semplici ed essenziali e che siano in grado di guidare agevolmente l’utente generico nello svolgimento dei propri compiti. 7


3.3.2 Documentazione La documentazione generata per la realizzazione del progetto comprende: • SPMP (Software Project Management Plan) • RAD (Requirement Analysis Document) • SDD (System Design Document) • ODD (Object Design Document) • JAVADOC

3.3.3 Hardware La struttura hardware richiesta è quella necessaria per la realizzazione di una rete locale LAN. Il sistema prevede la presenza di almeno tre postazioni, ognuna delle quali, sarà adibita ad un determinato compito. Le diverse postazioni oltre ad essere dotate dei più comuni dispositivi di input (mouse e tastiera) e output (monitor e stampante per la postazione utente e amministratore) necessitano di una struttura hardware che consenta l’installazione di un sistema operativo in grado di supportare la java virtual machine. Tali richieste non si ritengono proibitive dal momento che ogni PC di fascia media è in grado di soddisfarle ampiamente. Le postazioni Amministratore e Utente necessitano di un dispositivo di una stampante che consenta la stampa delle richieste dei prestiti e dei vari moduli relativi all’iscrizione.

8


Si rende necessaria, anche, la presenza di un sistema ad alte prestazioni che fungerà da server e in cui verrà installato il database.

3.3.4 Prestazioni hardware Non vi sono esigenze particolari in termini di prestazioni hardware se non quelle necessarie a consentire l’esecuzione del software.

3.3.5 Interfaccia del sistema Come già accennato le postazioni devono essere dotate dei comuni dispositivi di input e output. Inoltre per le postazioni relative all’amministratore e utente è richiesta la presenza di una stampante che consenta la stampa dei documenti necessari.

3.3.6 Gestione degli errori Alla fine di ogni operazione il sistema visualizzerà l’esito dell’operazione stessa, in questo modo si da la possibilità di ripetere l’operazione nel caso in cui questa non vada a buon fine. In tutti i casi di errore nella connessione al database verrà visualizzato un messaggio di errore che avviserà dell’impossibilità di effettuare la connessione.

9


3.3.6 Sicurezza Si è scelto per la sicurezza di ciascun Utente , Bibliotecario ed Amministratore che utilizza il sistema un processo di autenticazione preliminare per accedere alle funzionalità concesse. Ciò garantisce, inoltre, che ogni utente abbia accesso solo alle funzionalità messe a sua disposizione.

3.4 Pseudo-Requisiti Come pseudo-requisiti, per quanta riguarda la programmazione è stato indicato dal committente un linguaggio in particolare (java). Inotre il committente ha richiesto espressamente di non utilizzare architetture Web-Based.

10


3.5 Modelli del sistema 3.5.1 Scenari 3.5.1.1 Scenario: Autenticazione Utente Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Utente Jonny: utente Dbms : DBMS 1. Jonny si reca in biblioteca e giunto davanti ad una delle postazioni informatiche dell’aula di lettura inserisce la propria id e password. 2. Il sistema verifica la correttezza dei dati di autenticazione eseguendo un confronto con i dati disponibili in archivio su di una apposita tabella. 3. Il sistema autentica Jonny fornendogli l’accesso alle sezioni ed alle funzionalità che gli competono.

3.5.1.2 Scenario: Autenticazione Amministratore Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Amministratore Giuseppe: Amministratore Dbms : DBMS 1. Giuseppe, giunto davanti alla sua postazione, inserisce la propria id e password nel sistema. 2. Il sistema verifica la correttezza dei dati di autenticazione eseguendo un confronto con i dati disponibili in archivio su di una apposita tabella. 3. Il sistema autentica Giuseppe fornendogli l’accesso alle sezioni ed alle funzionalità che gli competono. 11


3.5.1.3 Scenario: Autenticazione Bibliotecario Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Bibliotecario Moana: Bibliotecario Dbms : DBMS 1. Moana, giunta davanti la sua postazione di lavoro, effettua l’autenticazione inserendo la propria id e password nel sistema. 2. Il sistema verifica la correttezza dei dati di autenticazione eseguendo un confronto con i dati disponibili in archivio su di una apposita tabella. 3. Il sistema autentica Moana fornendogli l’accesso alle sezioni ed alle funzionalità che gli competono.

3.5.1.4 Scenario: Autenticazione fallita utente Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Fallita Utente Jonny: utente Dbms : DBMS 1. Jonny si reca in biblioteca e giunto davanti ad una delle postazioni informatiche dell’aula di lettura inserisce la propria id e password. 2. Il sistema verifica la correttezza dei dati di autenticazione. 3. Il sistema non autentica Jonny e lo invita a reinserire id e password.

12


3.5.1.5 Scenario: Autenticazione Fallita Amministratore Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Fallita Amministratore Giuseppe: Amministratore Dbms : DBMS 1. Giuseppe inserisce la propria id e password nel sistema. 2. Il sistema verifica la correttezza dei dati di autenticazione. 3. Il sistema non autentica Jonny e lo invita a reinserire id e password.

3.5.1.6 Scenario: Autenticazione fallita Bibliotecario Nome Scenario Attori partecipanti Flusso degli eventi

Autenticazione Fallita Bibliotecario Moana: Bibliotecario Dbms : DBMS 1. Moana inserisce la propria id e password nel sistema. 2. Il sistema verifica la correttezza dei dati di autenticazione. 3. Il sistema non autentica Moana e la invita a reinserire id e password.

3.5.1.7 Scenario: Iscrizione Utenza Nome Scenario Attori partecipanti Flusso degli eventi

Iscrizione Utenza Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe riceve la richiesta d’iscrizione alla biblioteca da un nuovo utente. 2. Giuseppe, dopo aver verificato un documento d’identità, il pagamento del versamento effettuato e il modulo d’assunzione delle 13


3. 4. 5. 6. 7. 8.

responsabilità, seleziona nell’interfaccia tra le varie opzioni disponibili il comando IscrizioneUtenza. Il sistema mostra un form che Giuseppe compila in ogni sua parte. Giuseppe conferma l’inserimento dei dati. Il sistema chiede al Dbms di memorizzare l’iscrizione. Il Dbms memorizza l’iscrizione. Giuseppe seleziona la stampa del modulo riepilogativo relativo all’iscrizione. Il sistema stampa il modulo.

3.5.1.8 Scenario: Modifica Dati Utenza Nome Scenario Attori partecipanti Flusso degli eventi

Modifica Dati Utenza Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe riceve la richiesta da un utente di modificare il suo indirizzo di residenza. 2. Giuseppe seleziona la funzionalità Modifica Dati Utenza. 3. Il sistema mostra un form che Giuseppe compila inserendo le opportune chiavi per la ricerca dell’utente. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato della ricerca. 6. Giuseppe modifica il campo indirizzo dell’utente selezionato e conferma. 7. Il sistema chiede al Dbms di 14


aggiornare i dati. 8. Il Dbms aggiorna i dati. 3.5.1.9 Scenario: Cancella Utenza Nome Scenario Attori partecipanti Flusso degli eventi

Cancella Utenza Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe riceve la richiesta da parte di un utente di volersi cancellare dalla biblioteca. 2. Giuseppe seleziona nell’interfaccia tra le varie opzioni disponibili il comando CancellaUtenza. 3. Il sistema mostra un form che Giuseppe compila inserendo le opportune chiavi per la ricerca dell’utente. 4. Il sistema interroga in Dbms 5. Il Dbms fornisce il risultato della ricerca. 6. Giuseppe, seleziona l’utente da cancellare e conferma. 7. Il sistema richiede al Dbms di cancellare l’utente. 8. Il Dbms effettua la cancellazione.

3.5.1.10 Scenario:Visualizza Informazioni Utenza Nome Scenario Attori partecipanti Flusso degli eventi

Visualizza Informazioni Utenza Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe vuole conoscere l’indirizzo dell’utente Marco Cannavaro. 2. Giuseppe seleziona nell’interfaccia 15


3. 4. 5. 6. 7.

il comando VisualizzaInformazioniUtenza. Il sistema mostra un form di ricerca che Giuseppe compila in base ai dati in possesso. Il sistema interroga il Dbms. Il Dbms fornisce i risultati della ricerca. Giuseppe seleziona l’utente. Il sistema visualizza le informazioni relative all’utente selezionato.

3.5.1.11 Scenario: Stampa Tesserino Nome Scenario Attori partecipanti Flusso degli eventi

Stampa Tesserino Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe, dovendo stampare il tesserino d’iscrizione alla biblioteca di un utente che lo ha smarrito, seleziona nell’interfaccia il comando StampaTesserino. 2. Il sistema mostra un form che Giuseppe compila per la ricerca dell’utente. 3. Il sistema interroga il Dbms. 4. Il Dbms fornisce il risultato della ricerca. 5. Giuseppe seleziona l’utente. 6. Il sistema visualizza le informazioni relative all’utente selezionato. 7. Giuseppe conferma. 8. Il Sistema mostra un anteprima di stampa. 9. Giuseppe conferma la stampa del tesserino. 10. Il sistema effettua la stampa. 16


3.5.1.12 Scenario: Invio Sollecito Lettera Nome Scenario Attori partecipanti Flusso degli eventi

Invio Sollecito Lettera Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe decide di voler inviare una lettera di sollecito agli utenti con prestito scaduto da tre giorni. 2. Giuseppe seleziona nell’interfaccia la funzionalità Invio solleciti. 3. il sistema mostra un form con delle opzioni di ricerca. 4. Giuseppe inserisce gli opportuni parametri di ricerca e conferma. 5. il sistema interroga il Dbms. 6. Il Dbms fornisce le informazioni. 7. Giuseppe seleziona gli utenti a cui inviare il sollecito e clicca su InvioLettera. 8. Il sistema mostra una anteprima di stampa della lettera 9. Giuseppe conferma la stampa. 10. Il sistema provvede alla stampa. 11. Il sistema chiede al DBMS di memorizzare i solleciti inviati. 12. Il DBMS memorizza i dati.

3.5.1.13 Scenario: Invio Sollecito Email Invio Solleciti Con Email Nome Scenario Attori partecipanti Giuseppe : Amministratore Flusso degli eventi

Dbms : DBMS 1. Giuseppe decide di voler inviare 17


una E-Mail di sollecito agli utenti con prestito scaduto da una settimana. 2. Giuseppe seleziona nell’interfaccia la funzionalità Invio solleciti. 3. il sistema mostra un form con delle opzioni di ricerca. 4. Giuseppe inserisce i parametri di ricerca utili a trovare i prestiti scaduti da almeno una settimana. 5. il sistema interroga il Dbms. 6. Il Dbms fornisce le informazioni. 7. Giuseppe seleziona gli utenti a cui inviare il sollecito e clicca su InvioEmail. 8. Il sistema mostra una anteprima del testo della E-Mail 9. Giuseppe conferma l’invio 10. Il sistema invia le E-Mail di sollecito. 11. Il sistema chiede al Dbms di memorizzare l’invio del sollecito. 12. Il Dbms memorizza i dati.

3.5.1.14 Scenario: Visualizza Informazioni Sollecito Nome Scenario Attori partecipanti Flusso degli eventi

Visualizza Informazioni Sollecito Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe ha bisogno di conoscere la data d’invio del sollecito con ID Sollecito 231042005. 2. Giuseppe seleziona nell’interfaccia la funzionalità Visualizza Info Sollecito. 3. Il sistema mostra un form con delle 18


4. 5. 6. 7. 8. 9.

opzioni di ricerca. Giuseppe effettua la ricerca in base ai dati in possesso. il sistema interroga il Dbms. Il Dbms fornisce il risultato. Il sistema visualizza il risultato. Giuseppe seleziona il sollecito e conferma. Il sistema visualizza tutte le informazioni su quel sollecito.

3.5.1.15 Scenario: Cancella Sollecito Nome Scenario Attori partecipanti Flusso degli eventi

CancellaSollecito Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe decide di voler cancellare un sollecito inviato quattro fa all’utente con ID 2121 e di cui non vuole più tener traccia. 2. Giuseppe seleziona nell’interfaccia la funzionalità cancella sollecito. 3. il sistema mostra un form con delle opzioni di ricerca. 4. Giuseppe compila il form con i dati in possesso. 5. il sistema interroga il Dbms. 6. Il Dbms fornisce le informazioni. 7. Il sistema mostra il risultato. 8. Giuseppe seleziona il sollecito che intende eliminare. 9. Il sistema visualizza un form per la conferma della cancellazione del sollecito. 10. Giuseppe conferma la cancellazione. 11. Il sistema chiede al Dbms di 19


effettuare la cancellazione. 12. Il Dbms effettua la cancellazione.

3.5.1.16 Scenario: Visualizza Informazioni Prestito Nome Scenario Attori partecipanti Flusso degli eventi

Visualizza Informazioni Prestito Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe vuole conoscere la data di scadenza del prestito con ID Prestito 321042005. 2. Giuseppe seleziona nell’interfaccia la funzionalità Visualizza Info Prestito. 3. Il sistema mostra un form con delle opzioni per la ricerca dei prestiti. 4. Giuseppe compila il form in base ai dati in suo possesso. 5. Il sistema interroga il Dbms. 6. Il Dbms fornisce le informazioni. 7. Giuseppe seleziona il prestito di cui vuole visualizzare le informazioni in dettaglio e conferma. 8. Il sistema visualizza le informazioni.

3.5.1.17 Scenario: Modifica Dati Prestito Nome Scenario Attori partecipanti Flusso degli eventi

Modifica Dati Prestito Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe, deve modificare i dati relativi ad un prestito di cui conosce l’IDPrestito 2111. 20


2. Giuseppe seleziona la funzionalità Modifica Dati Prestito. 3. Il sistema mostra un form che Giuseppe compila con i dati in possesso. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato della ricerca. 6. Giuseppe seleziona il prestito di cui intende modificare i dati. 7. Il sistema mostra un form in cui modificare i campi errati. 8. Giuseppe modifica i campi errati e conferma. 9. Il sistema chiede al Dbms di aggiornare i dati. 10. Il Dbms aggiorna i dati.

3.5.1.18 Scenario: Cancella Prestito Nome Scenario Attori partecipanti Flusso degli eventi

Cancella Prestito Giuseppe : Amministratore Dbms : DBMS 1. Giuseppe vuole cancellare dall’archivio il prestito con IDPrestito 231042005. 2. Giuseppe seleziona nell’interfaccia la funzionalità cancella prestito. 3. il sistema mostra un form con delle opzioni di ricerca. 4. Giuseppe compila il form con i dati in possesso. 5. Il sistema interroga il Dbms. 6. Il Dbms fornisce le informazioni. 7. Il sistema mostra il risultato della ricerca. 8. Giuseppe seleziona il prestito che 21


intende cancellare. 9. Il sistema visualizza un form per la conferma della cancellazione del prestito. 10. Giuseppe conferma la cancellazione. 11. Il sistema chiede al Dbms di effettuare la cancellazione. 12. Il Dbms effettua la cancellazione.

3.5.1.19 Scenario: Inserisci Nuovo Libro Nome Scenario Attori partecipanti Flusso degli eventi

Inserisci Nuovo Libro Giuseppe : Bibliotecario Dbms : DBMS 1. Giuseppe deve registrare il libro “algoritmi in Java” di R. Sedjewick, recentemente acquistato dalla biblioteca. 2. Giuseppe seleziona la funzionalità InserisciNuovoLibro. 3. Il sistema mostra un form che Giuseppe compila con i dati relativi al libro e conferma. 4. Il sistema chiede al Dbms di memorizzare le informazioni. 5. Il Dbms memorizza le informazioni.

3.5.1.20 Scenario: Visualizza Informazioni Libro Nome Scenario Attori partecipanti Flusso degli eventi

Visualizza Informazioni Libro Giuseppe : Bibliotecario Dbms : DBMS 1. Giuseppe vuole conoscere la casa 22


2. 3. 4. 5. 6. 7.

editrice del libro “Algoritmi in Java”. Giuseppe seleziona la funzionalità VisualizzaInfolibro. Il sistema mostra un form che Giuseppe compila per la ricerca del libro. Il sistema interroga il Dbms. Il Dbms fornisce il risultato. Giuseppe seleziona il libro di cui vuole visualizzare le informazioni. Il sistema visualizza le informazioni relative al libro.

3.5.1.21 Scenario: Cancella Libro Nome Scenario Attori partecipanti Flusso degli eventi

Cancella Libro Giuseppe : Bibliotecario Dbms : DBMS 1. Giuseppe vuole cancellare il libro “Algoritmi in Java” di R. Sedjewick che è stato smarrito. 2. Giuseppe seleziona la funzionalità CancellaLibro. 3. Il sistema mostra un form che Giuseppe compila per la ricerca del libro. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato della ricerca. 6. Giuseppe seleziona il libro che intende cancellare dall’archivio e conferma. 7. Il sistema chiede al Dbms di cancellare il libro. 8. Il Dbms cancella il libro.

23


3.5.1.22 Scenario : Modifica Dati Libro Modifica Dati Libro Nome Scenario Attori partecipanti Giuseppe : Bibliotecario Flusso degli eventi

Dbms : DBMS 1. Giuseppe si accorge di aver sbagliato ad inserire l’autore del libro “Algoritmi in Java”. 2. Giuseppe seleziona la funzionalità ModificaDatiLibro. 3. Il Sistema mostra un form che Giuseppe compila per la ricerca del libro e conferma. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato della ricerca. 6. Giuseppe seleziona il libro di cui intende rettificare le informazioni. 7. Il sistema mostra un form con le informazioni relative al libro. 8. Giuseppe modifica le informazioni errate e conferma. 9. Il sistema chiede al Dbms di memorizzare la modifiche. 10. Il Dbms memorizza le modifiche.

3.5.1.23 Scenario: Consegna Libro Nome Scenario Attori partecipanti Flusso degli eventi

Consegna Libro Moana : Bibliotecario Dbms : DBMS 1. Moana riceve la richiesta di prestito, in un apposito modulo, del Libro “Algoritmi in Java” con cod. 2211 24


dall’utente Sig. Matraxia con ID xxxx che ne ha fatto richiesta. 2. Moana seleziona la funzionalità Consegna Libro. 3. Il Sistema mostra un form per la consegna del prestito che Moana compila inserendo i dati richiesti. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato. 6. Il sistema verifica che l’utente è abilitato al prestito. 7. Il sistema verifica che il libro è disponibile al prestito. 8. Il sistema mostra un form di riepilogo. 9. Moana conferma la consegna del libro. 10. Il sistema chiede al Dbms di effettuare gli aggiornamenti necessari. 11. Il Dbms effettua gli aggiornamenti.

3.5.1.24 Scenario: Consegna Impossibile Per NCopie Nome Scenario Attori partecipanti Flusso degli eventi

ConsegnaImpossibilePerNCopie Moana : Bibliotecario Dbms : DBMS 1. Moana riceve la richiesta di prestito, in un apposito modulo, del Libro “Algoritmi in Java” con cod. 2211 dall’utente Sig. Matraxia con ID xxxx che ne ha fatto richiesta. 2. Moana seleziona la funzionalità Consegna Libro. 3. Il Sistema mostra un form per la consegna del prestito che Moana 25


4. 5. 6.

7.

compila inserendo i dati richiesti. Il sistema interroga il Dbms. Il Dbms fornisce il risultato. Il sistema verifica che l’utente non è abilitato al prestito perché è gia in possesso del numero massimo di prestiti consentito. Il sistema visualizza l’impossibilità di portare a termine il prestito per numero max prestiti raggiunto.

3.5.1.25 Scenario: Consegna Impossibile Per Solleciti Nome Scenario Attori Partecipanti Flusso Eventi

Consegna Impossibile Per Solleciti Moana: Bibliotecario Dbms: DBMS 1. Moana riceve la richiesta di prestito, in un apposito modulo, del Libro “Algoritmi in Java” con cod. 2211 dall’utente Sig. Matraxia con ID xxxx che ne ha fatto richiesta. 2. Moana seleziona la funzionalità Consegna Libro. 3. Il Sistema mostra un form per la consegna del prestito che Moana compila inserendo i dati richiesti. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato. 6. Il sistema verifica che l’utente non è abilitato al prestito perché ha dei solleciti in corso. 7. Il sistema visualizza l’impossibilità di portare a termine il prestito per solleciti in corso.

26


3.5.1.26 Scenario: Consegna Impossibile Per Disponibilità Nome Scenario Attori Partecipanti Flusso Eventi

Consegna Impossibile Per Disponibilità Moana: Bibliotecario Dbms: DBMS 1. Moana riceve la richiesta di prestito, in un apposito modulo, del Libro “Algoritmi in Java” con cod. 2211 dall’utente Sig. Matraxia con ID xxxx che ne ha fatto richiesta. 2. Moana seleziona la funzionalità Consegna Libro. 3. Il Sistema mostra un form per la consegna del prestito che Moana compila inserendo i dati richiesti. 4. Il sistema interroga il Dbms. 5. Il Dbms fornisce il risultato. 6. Il sistema verifica che il libro richiesto non è disponibile. 7. Il sistema visualizza l’impossibilità di portare a termine il prestito perché il libro non è disponibile.

3.5.1.27 Scenario: Riconsegna Prestito Nome Scenario Attori partecipanti Flusso degli eventi

Riconsegna prestito Moana : Bibliotecario Dbms : DBMS 1. Moana avendo ricevuto da un utente un libro per la riconsegna del prestito, seleziona la funzionalità Riconsegna Prestito. 2. Il sistema mostra un form in cui Moana inserisce le informazioni per 27


3. 4. 5. 6. 7.

l’individuazione del prestito. Il sistema interroga il Dbms. Il Dbms restituisce il risultato della ricerca. Moana conferma la restituzione del prestito. Il sistema chiede al Dbms di effettuare gli aggiornamenti necessari. Il Dbms effettua gli aggiornamenti.

3.5.1.28 Scenario: Visualizza Situazione Personale Nome Scenario Attori partecipanti Flusso degli eventi

Visualizza Situazione Personale Jonny : Utente Dbms : DBMS 1. Jonny vuole verificare la sua situazione personale corrente. 2. Jonny seleziona la funzionalità VisualizzaSituazionePersonale. 3. Il sistema interroga il Dbms. 4. Il Dbms fornisce le informazioni richieste. 5. Il sistema mostra le informazioni.

3.5.1.29 Scenario: Modifica Password Modifica Password Nome Scenario Attori partecipanti Jonny : Utente

Dbms : DBMS 1. Jonny si accorge che la sua Flusso degli eventi password di accesso non è più sicura. 2. Jonny seleziona nell’interfaccia il comando Modifica Password. 3. Il sistema mostra un form per la 28


modifica della password che Jonny compila in ogni sua parte. 4. Jonny conferma l’inserimento dei dati. 5. il sistema chiede al Dbms aggiornare i dati. 6. Il Dbms aggiorna i dati. 3.5.1.30 Scenario: Richiesta Prestito Nome Scenario

Richiesta Prestito

Attori Partecipanti

Jonny: Utente; Dbms: DBMS; 1. Jonny vorrebbe prendere in prestito il libro “Algoritmi in Java” di R. Sedjewick. 2. Jonny seleziona nell’interfaccia il comando RichiestaPrestito. 3. Il sistema mostra un form per la ricerca del libro. 4. Jonny compila il form con i dati in possesso e conferma. 5. Il sistema interroga il Dbms. 6. Il Dbms fornisce il risulato della ricerca. 7. Jonny, seleziona il libro d’interesse tra quelli trovati e conferma. 8. Il sistema mostra un form di riepilogo. 9. Jonny conferma la richiesta. 10. Il sistema stampa il modulo di richiesta prestito.

Flusso degli eventi

29


3.5.2 Casi d’uso 3.5.2.1 Attori Forniremo

adesso

una

breve

descrizione

degli

attori

che

interagiscono nel nostro sistema: • Amministratore : si occupa di tutte quelle attività che riguardano la gestione dell’utenza (inserimento, cancellazione, modifica, visualizza informazioni), la gestione dei solleciti (invio solleciti, Cancella solleciti, Visualizza Informazioni sui solleciti) e l’archivio prestiti (Visualizza Informazioni sui prestiti, cancella prestiti, modifica prestiti). • Bibliotecario : si occupa di tutte quelle operazioni che riguardano la gestione dei prestiti ovvero la consegna dei libri richiesti in prestito dagli utenti, la riconsegna dei prestiti e la gestione dei libri (inserimento, cancellazione, modifica, visualizza informazioni). • Utente : attore che si occupa della generazione del modulo per la richiesta dei prestiti, della visualizzazione aggiornata della situazione personale e dell’eventuale modifica della propria password personale nel caso in cui non risulti più sicura. • UtenteAstratto: attore astratto generalizzato, tramite il quale viene evidenziato il comportamento comune degli attori concreti (Amministratore, Bibliotecario, Utente). • DBMS: attore che rappresenta il sistema di memorizzazione persistente dei dati. 30


3.5.2.2 Vista d’insieme del sistema

Andiamo adesso a descrivere in dettaglio i vari casi d’uso:

3.5.2.2.1 Caso d’uso: Login

31


3.5.2.2.1.1 Login Nome caso d’uso Attori partecianti

Login

UtenteAstratto DBMS Condizioni d’ingresso 1. L’UtenteAstratto inserisce il proprio Id e la propria Password nel form d’autenticazione Flusso eventi 2. Il sistema verifica la correttezza dei dati inseriti, interagendo con il DBMS Condizioni d’uscita 3. Il sistema autentica l’UtenteAstratto. Requisiti speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso Connection Down. Oppure Nel caso in cui il sistema non autentica l’UtenteAstratto viene invocato il caso d’uso LoginErrato.

Nota

Come precedentemente accennato con UtenteAstratto intendiamo rappresentare il comportamento comune degli attori concreti (Amministratore, Bibliotecario, Utente).

3.5.2.2.2 Login Fallito Nome caso d’uso Login Fallito Attori partecianti UtenteAstratto Condizioni d’ingresso 1. Viene invocato dal caso d’uso Login nel caso in cui il riconoscimento non ha avuto esito positivo. Flusso eventi 2. Il sistema mostra un form in cui avvista che il Login non è andato a buon fine. 3. L’UtenteAstratto legge legge l’avviso e conferma. Condizioni d’uscita 4. Il sistema torna al form di autenticazione. 32


Requisiti speciali

Nessuno

3.5.2.2.3 ConnectionDown Nome caso d’uso Attori partecianti

ConnectionDown UtenteAstratto DBMS Condizioni d’ingresso 1. Viene invocato in caso di errore nella connessione con il DBMS Flusso eventi 2. Il sistema mostra un form in cui avvista che si è verificato un errore nella connessione al DBMS. Condizioni d’uscita 3. L’UtenteAstratto legge l’avviso e conferma. Requisiti speciali Nessuno

3.5.2.3 Caso d’uso: Sessione Amministratore

33


3.5.2.3.1 Gestione Utenza Nome caso d’uso Attori partecipanti

Gestione Utenza Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità GestioneUtenza Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : • Iscrizione Utenza • Visualizza Info Utenza • Cancella Utenza • Modifica Dati Utenza 3. L’Amministratore seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. L’Amministratore inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS il quale aggiorna i dati. Condizioni d’uscita 7. L’Amministratore ha terminato l’operazione da svolgere. Requisiti speciali Nessuno

3.5.2.3.2 GestioneSolleciti Nome caso d’uso Attori partecipanti

GestioneSolleciti Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità GestioneUtenza Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : a. Invio Solleciti 34


Condizioni d’uscita Requisiti speciali

b. Visualizza Info Sollecito c. Cancella Sollecito 3. L’Amministratore seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. L’Amministratore inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS il quale aggiorna i dati. 7. L’Amministratore ha terminato l’operazione da svolgere. Nessuno

3.5.2.3.3 Archivio Prestiti Nome caso d’uso Attori partecipanti

ArchivioPrestiti Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità ArchivioPrestiti Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : a. Cancella Prestito b. Visualizza Info Prestito c. Modifica Dati Prestito 3. L’Amministratore seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. L’Amministratore inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS il quale aggiorna i dati. Condizioni d’uscita 7. L’Amministratore ha terminato 35


Requisiti speciali

l’operazione da svolgere. Nessuno

3.5.2.4 Caso d’uso: Sessione Bibliotecario

3.5.2.4.1 GestioneLibri Nome caso d’uso Attori partecipanti

GestioneLibri Bibliotecario DBMS Condizioni d’ingresso 1. Il Bibliotecario seleziona la funzionalità GestioneLibri Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : a. Inserisci Nuovo Libro b. Visualizza Info Libri c. Cancella Libro d. Modifica Dati Libro 3. Il Bibliotecario seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. Il Bibliotecario inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS 36


Condizioni d’uscita Requisiti speciali

il quale aggiorna i dati. 7. Il Bibliotecario ha terminato l’operazione da svolgere. Nessuno

3.5.2.4.2 GestionePrestiti Nome caso d’uso Attori partecipanti

GestionePrestiti Bibliotecario DBMS Condizioni d’ingresso 1. Il Bibliotecario si autentica. Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : a. Consegna Libro b. Riconsegna Prestito 3. Il Bibliotecario seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. Il Bibliotecario inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS il quale aggiorna i dati. Condizioni d’uscita 7. Il Bibliotecario ha terminato le operazione da svolgere. Requisiti speciali Nessuno 3.5.2.5 Caso d’uso: Sessione Utente

37


3.5.2.5.1 GestioneUtente Nome caso d’uso Attori partecipanti

GestioneUtente Amministratore DBMS Condizioni d’ingresso 1. L’Utente si autentica. Flusso Eventi 2. Il sistema mostra un form con diverse possibilità di scelta : a. Richiesta Prestito b. Visualizza Situazione Personale c. Modifica Password 3. L’Utente seleziona una delle possibili funzionalità. 4. Il sistema mostra un form in cui immettere i dati necessari allo svolgimento dell’operazione. 5. L' Utente inserisce i dati richiesti e conferma. 6. Il sistema comunica con il DBMS il quale aggiorna i dati. Condizioni d’uscita 7. L’Utente ha terminato le operazioni da svolgere. Requisiti speciali Nessuno

38


3.5.2.6 Caso d’uso: GestioneUtenza

3.5.2.6.1 IscrizioneUtenza Nome caso d’uso Attori partecipanti

IscrizioneUtenza Amministratore DBMS Condizioni d’ingresso 1. L’amministratore seleziona la funzionalità IscrizioneUtenza Flusso Eventi 2. Il sistema mostra un form con i dati da inserire: a. Nome b. Cognome c. Data di nascita d. Codice fiscale e. Città f. Indirizzo Residenza g. Telefono h. Mail i. Password 39


Condizioni d’uscita

Requisiti speciali (*) Nota:

3. L’Amministratore inserisce i dati e conferma. 4. Il sistema chiede al DBMS di memorizzare i dati. 5. Il DBMS memorizza i dati. 6. Il sistema mostra l’esito dell’operazione. 7. L’amministratore clicca su Stampa modulo informativo (*) oppure l’Amministratore clicca su Ritorna al menu. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown. Stampa Modulo estende, quindi il caso d’uso Iscrizione Utenza.

3.5.2.6.2 ModificaDatiUtenza Nome caso d’uso Attori partecipanti

ModificaDatiUtenza Amministratore DBMS Condizioni d’ingresso 1. L’amministratore seleziona la funzionalità Modifica Dati Utenza Flusso Eventi 2. Il sistema mostra un form in cui inserire le opportune chiavi per la ricerca dell’utente (Include Ricerca Utenza). 3. L’Amministratore seleziona l’utente di cui intende modificare i dati e conferma. 4. Il sistema mostra un form in cui l’Amministratore può modificare i dati. 5. L’Amministratore modifica i campi errati e conferma. 40


Condizioni d’uscita Requisiti speciali

6. Il sistema chiede al DBMS di aggiornare i dati. 7. Il DBMS aggiorna i dati. 8. Il sistema mostra l’esito dell’operazione 9. L’Amministratore legge l’avviso ed esce. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.6.3 VisualizzaInfoUtenza Nome caso d’uso VisualizzaInfoUtenza Attori partecipanti Amministratore Condizioni d’ingresso 1. L’amministratore seleziona la funzionalità VisualizzaInfoUtenza Flusso Eventi 2. Il sistema mostra un form con in cui inserire le opportune chiavi per la ricerca (Include Ricerca Utenza). 3. L’Amministratore seleziona l’utente di cui vuole visualizzare le informazioni e conferma. 4. Il sistema mostra un frame con le informazioni relative all’utente selezionato. Condizioni d’uscita 5. L’Amministratore legge le informazioni ed esce. Requisiti speciali Nessuno

41


3.5.2.6.4 CancellaUtenza Nome caso d’uso Attori partecipanti

CancellaUtenza Amministratore DBMS Condizioni d’ingresso 1. L’amministratore seleziona la funzionalità CancellaUtenza Flusso Eventi 2. Il sistema mostra un form con in cui inserire le opportune chiavi per la ricerca dell’utente (Include Ricerca Utenza). 3. L’Amministratore seleziona l’utente da cancellare e conferma. 4. Il sistema chiede al DBMS di effettuare la cancellazione. 5. Il DBMS effettua la cancellazione. 6. Il sistema mostra l’esito dell’operazione Condizioni d’uscita 7. L’Amministratore legge l’avviso ed esce. Requisiti speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.6.5 Stampa Tesserino Nome caso d’uso Attori partecipanti

Stampa Tesserino Amministratore DBMS Condizioni d’ingresso 1. L’amministratore seleziona la funzionalità Stampa Tesserino Flusso Eventi 2. Il sistema mostra un form in cui inserire le opportune chiavi per la ricerca dell’utente (Include Ricerca Utenza). 3. Il sistema mostra un anteprima di stampa del tesserino. 42


Condizioni d’uscita Requisiti speciali

4. L’Amministratore conferma la stampa. 5. Il sistema effettua la stampa del tesserino. Nessuno

3.5.2.6.6 RicercaUtenza Nome caso d’uso Attori Partecipanti

RicercaUtenza Amministratore; DBMS Condizioni d’ingresso 1. RicercaUtenza è invocata da : • CancellaUtenza • ModificaDatiUtenza • VisualizzaInfoUtenza • VisualizzaSituazionePersonale. • ConsegnaLibro Flusso degli Eventi 2. Se non le viene passato il parametro IDUtente per la ricerca, il sistema visualizza un form con le opportune chiavi utilizzate per effettuare la ricerca. 3. L’Amministratore inserisci le chiavi richieste per la ricerca e conferma. 4. Il sistema chiede al DBMS di effettuare la ricerca. 5. Il DBMS effettua la ricerca. 6. Se non le è stato passato il parametro ID per la ricerca, l’Amministratore seleziona tra i risultati della ricerca quello desiderato e conferma. 7. Il sistema ritorna i dati al caso d’uso che lo ha invocato.

43


Requisiti Speciali

In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.6.7 Stampa Modulo Nome caso d’uso Attori Partecipanti

Stampa Modulo Amministratore; DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità Stampa Modulo dal form di iscrizione utenza (dopo aver effettuato l’iscrizione di un nuovo utente). Flusso degli Eventi 2. Il sistema mostra un form con un riepilogo dei dati relativi al nuovo iscritto. 3. L’Amministratore conferma la stampa del modulo.. 4. Il sistema mostra un anteprima di stampa del modulo. 5. L’Amministratore conferma la stampa. 6. Il sistema effettua la stampa. Requisiti Speciali Nessuno

44


3.5.2.7 Caso d’uso: Archivio Prestiti

3.5.2.7.1 VisualizzaInfoPrestito Nome caso d’uso VisualizzaInfoPrestito Attori partecipanti Amministratore Condizioni d’ingresso 1. L’amministratore accede alla funzionalità VisualizzaInfoPrestito Flusso Eventi 2. L’Amministratore inserisce le chiavi per la ricerca del prestito e conferma (include Ricerca Prestiti). 3. l’Amministratore seleziona il prestito di cui vuole visualizzare le informazioni. 4. Il sistema visualizza le informazioni relative al prestito. Condizioni d’uscita 5. L’Amministratore prende visione delle informazioni ed esce. Requisiti funzionali Nessuno 45


3.5.2.7.2 ModificaDatiPrestito Nome caso d’uso Attori partecipanti

ModificaDatiPrestito Amministratore DBMS Condizioni d’ingresso 1. L’amministratore accede alla funzionalità ModificaDatiPrestito Flusso Eventi 2. Il sistema mostra un form in cui l’Amministratore inserisce le opportune chiavi per la ricerca del prestito (include RicercaPrestito) 3. Il sistema visualizza i dati relativi al prestito selezionato. 4. L’Amministratore modifica i dati errati e conferma. 5. Il sistema chiede al DBMS di aggiornare i dati. 6. Il DBMS aggiorna i dati 7. Il sistema visualizza l’esito dell’operazione. Condizioni d’uscita 8. L’Amministratore prende visione ed esce. Requisiti funzionali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.7.3 CancellaPrestito Nome caso d’uso Attori partecipanti

CancellaPrestito Amministratore DBMS Condizioni d’ingresso 1. L’amministratore accede alla funzionalità CancellaPrestito Flusso Eventi 2. Il sistema mostra un form in cui l’Amministratore inserisce le opportune chiavi per la ricerca del 46


Condizioni d’uscita Requisiti funzionali

prestito (include RicercaPrestito) 3. Il sistema visualizza un form per la conferma della cancellazione del prestito. 4. L’Amministratore conferma la cancellazione. 5. Il sistema chiede al DBMS di aggiornare i dati. 6. Il DBMS aggiorna i dati 7. Il sistema visualizza l’esito dell’operazione. 8. L’Amministratore prende visione ed esce. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.7.4 RicercaPrestito Nome caso d’uso Attori Partecipanti

RicercaPrestito Amministratore o Bibliotecario; DBMS Condizioni d’ingresso 1. RicercaPrestiti è invocata da: a. VisualizzaInfoPrestito b. ModificaDatiPrestito c. CancellaPrestito d. VisualizzaSituazionePersonal e. e. Riconsegna Prestito Flusso degli Eventi 2. Se non le viene passato il campo ID Utente per la ricerca, il sistema visualizza un form con le opportune chiavi utilizzate per effettuare la ricerca. 3. L’Amministratore inserisce le chiavi richieste per la ricerca e conferma. 47


Condizioni d’uscita Requisiti Speciali Nota:

4. Il sistema chiede al DBMS di effettuare la ricerca. 5. Il DBMS effettua la ricerca. 6. Se non le è stato passato il parametro ID (utente) per la ricerca, l’Amministratore seleziona tra i risultati della ricerca quello desiderato e conferma. 7. Il sistema ritorna i dati al caso d’uso che lo ha invocato. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown. La ricerca parametrizzata viene effettuata solo dal caso d’uso VisualizzaSituazionePersonale per impedire all’utente di avere accesso al form di ricerca.

3.5.2.8 Caso d’uso: GestioneSolleciti

48


3.5.2.8.1 InvioSolleciti Nome caso d’uso Attori partecipanti

InvioSolleciti Amministratore DBMS Condizioni d’ingresso 1. L’amministratore accede alla funzionalità InvioSolleciti. Flusso Eventi 2. Il sistema mostra un form in cui inserire le chiavi per la ricerca degli utenti ritardatari. 3. L’Amministratore compila il form secondo i criteri che ritiene opportuni e conferma. 4. Il sistema interroga il DBMS. 5. Il DBMS fornisce il risultato. 6. L’Amministratore seleziona gli utenti cui desidera inviare un sollecito e conferma. Condizioni d’uscita 7. L’Amministratore sceglie la funzionalità InvioEmail per la notifica del sollecito (Include InvioEmail) Oppure L’Amministratore sceglie la funzionalità InvioLettera per la notifica del sollecito (Include InvioLettera) Requisiti funzionali Nessuno

49


3.5.2.8.2 Invio Email Nome caso d’uso Attori partecipanti

InvioEmail Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità InvioEmail dalla finestra di InvioSolleciti. Flusso Eventi 2. Il sistema visualizza un form con gli utenti a cui si è scelto di inviare un sollecito. 3. L’Amministratore conferma. 4. Il sistema invia le Email. 5. Il sistema chiede al DBMS di aggiornare i dati. 6. Il DBMS aggiorna i dati. 7. Il sistema mostra un form con il risultato dell’invio. Condizioni d’uscita 8. L’Amministratore prende visione delle informazioni ed esce. Requisiti speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

50


3.5.2.8.3 Invio Lettera Nome caso d’uso Attori partecipanti

InvioLettera Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità InvioLettera dalla finestra di InvioSolleciti. Flusso Eventi 2. Il sistema visualizza un form con gli utenti a cui si è scelto di inviare un sollecito tramite lettera. 3. L’Amministratore conferma. 4. Il sistema stampa le lettere. 5. Il sistema chiede al DBMS di aggiornare i dati. 6. Il DBMS aggiorna i dati. 7. Il sistema mostra un form con l’esito dell’operazione. Condizioni d’uscita 8. L’Amministratore prende visione delle informazioni ed esce. Requisiti speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

51


3.5.2.8.4 VisualizzaInfoSollecito Nome caso d’uso Attori partecipanti

VisualizzaInfoSollecito Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità Visualizza Info Sollecito. Flusso Eventi 2. Il sistema mostra un form per la ricerca del sollecito (Include RicercaSollecito). 3. Il sistema visualizza le informazioni riguardanti il sollecito selezionato dall’Amministratore. Condizioni d’uscita 4. L’Amministratore prende visione delle informazioni ed esce. Requisiti speciali Nessuno

52


3.5.2.8.5 RicercaSollecito Nome caso d’uso Attori partecipanti

RicercaSollecito Amministratore DBMS Condizioni d’ingresso 1. viene invovato da: • CancellaSollecito • VisualizzaInfoSollecito Flusso Eventi 2. Il sistema mostra un form in cui selezionare le chiavi per la ricerca del sollecito. 3. L’Amministratore seleziona le chiavi di ricerca opportune e conferma. 4. Il sistema interroga il DBMS. 5. Il DBMS fornisce il risultato della ricerca. 6. L’Amministratore seleziona il sollecito di interesse e conferma. Condizioni d’uscita 7. Il sistema ritorna i dati al caso d’uso che lo ha invocato. Requisiti speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

53


3.5.2.8.5 CancellaSollecito Nome caso d’uso Attori partecipanti

CancellaSollecito Amministratore DBMS Condizioni d’ingresso 1. L’Amministratore seleziona la funzionalità CancellaSollecito Flusso Eventi 2. Il sistema mostra un form per la ricerca del sollecito (Include RicercaSollecito). 3. Il sistema mostra un form di conferma cancellazione con le informazioni riguardanti il sollecito. 4. L’Amministratore conferma la cancellazione. 5. Il sistema chiede al DBMS di effettuare la cancellazione. 6. Il DBMS effettua la cancellazione. 7. Il sistema visualizza l’esito dell’operazione. Condizioni d’uscita 8. L’Amministratore legge il messaggio ed esce. Requisiti speciali Viene invocato il caso d’uso Connection Down in caso di mancata connessione al DBMS.

54


3.5.2.9 Caso d’uso: GestioneLibri

3.5.2.9.1 InserisciNuovoLibro Nome caso d’uso Attori Partecipanti

InserisciNuovoLibro Bibliotecario; DBMS Condizioni d’ingresso 1. Il Bibliotecario accede alla funzionalità InserisciNuovoLibro Flusso degli Eventi 2. Il sistema mostra un form in cui inserire i dati relativi al nuovo libro: • Titolo • Autore • Casa Editrice • Codice ISBN • Collocazione • Anno Pubblicazione 3. Il Bibliotecario compila il form. 4. Il Bibliotecario conferma l’inserimento dei dati. 55


Condizioni d’uscita Requisiti Speciali

5. Il sistema chiede al DBMS di memorizzare i dati. 6. Il DBMS memorizza i dati. 7. Il sistema visualizza l’esito dell’operazione. 8. Il Bibliotecario legge il messaggio ed esce dalla funzionalità InserisciNuovoLibro. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.9.2 CancellaLibro Nome caso d’uso Attori Partecipanti

CancellaLibro

Bibliotecario; DBMS Condizioni d’ingresso 1. Il Bibliotecario accede alla funzionalità CancellaLibro Flusso degli Eventi 2. Il sistema mostra un form con delle chiavi per la ricerca del libro da cancellare. (Include RicercaLibro). 3. Il sistema visualizza un form per la conferma della cancellazione. 4. Il Bibliotecario conferma la cancellazione. 5. Il sistema chiede al DBMS di effettuare la cancellazione. 6. Il DBMS effettua la cancellazione. 7. Il sistema visualizza l’esito dell’operazione. Condizioni d’uscita 8. Il Bibliotecario legge il messaggio ed esce dalla funzionalità CancellaLibro

56


Requisiti Speciali

In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.9.3 VisualizzaInfoLibro Nome caso d’uso Attori Partecipanti

VisualizzaInfoLibro Bibliotecario; DBMS Condizioni d’ingresso 1. Il Bibliotecario accede alla funzionalità VisualizzaInfoLibro Flusso degli Eventi 2. Il sistema mostra un form con delle chiavi per la ricerca del libro di cui si vogliono informazioni. (Include RicercaLibro). 3. Il sistema visualizza le informazioni relative al libro. Condizioni d’uscita 4. Il Bibliotecario prende nota delle informazioni che cercava ed esce. Requisiti Speciali Nessuno

3.5.2.9.4 ModificaDatiLibro Nome caso d’uso Attori Partecipanti

ModificaDatiLibro Bibliotecario; DBMS Condizioni d’ingresso 1. Il Bibliotecario accede alla funzionalità ModificadatiLibro. Flusso degli Eventi 2. Il sistema mostra un form con delle chiavi per la ricerca del libro di cui si vogliono modificare i dati. (Include RicercaLibro). 3. Il sistema visualizza un form con i dati relativi al libro. 4. Il Bibliotecario modifica i dati errati e 57


conferma. 5. Il sistema chiede al DBMS di aggiornare i dati. 6. Il DBMS aggiorna i dati. 7. Il sistema visualizza l’esito dell’operazione. Condizioni d’uscita 8. Il Bibliotecario legge il messaggio ed esce. Requisiti Speciali Viene invocato il caso d’uso ConnectionDown in caso di mancata connessione con il DBMS

3.5.2.9.5 RicercaLibro Nome caso d’uso Attori Partecipanti

RicercaLibro

Bibliotecario; DBMS; Condizioni d’ingresso 1. RicercaLibro è invocata da: a. CancellaLibro b. ModificaDatiLibro c. VisualizzaInfoLibro d. RichiediPrestito e. ConsegnaLibro Flusso degli Eventi 2. Se non le viene passato il parametro ID del libro per la ricerca, il sistema visualizza un form con le opportune chiavi utilizzate per effettuare la ricerca. 3. Il Bibliotecario inserisce le chiavi richieste per la ricerca e conferma. 4. Il sistema chiede al DBMS di effettuare la ricerca. 5. Il DBMS effettua la ricerca. 6. Se non le è stato passato il parametro ID per la ricerca, il Bibliotecario seleziona tra i risultati della ricerca quello desiderato e conferma. Condizioni d’uscita 7. Il sistema ritorna i dati al caso d’uso che 58


Requisiti Speciali

lo ha invocato. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.10 GestionePrestiti

59


3.5.2.10.1 ConsegnaLibro Nome caso d’uso Attori partecipanti

ConsegnaLibro Bibliotecario DBMS Condizioni d’ingresso 1. Il Bibliotecario accede alla funzionalità ConsegnaLibro Flusso eventi 2. Il sistema mostra un form dove viene richiesto al bibliotecario di inserire gli estremi del prestito come dalla richiesta stampata: • ID Libro • ID Utente 3. Il Bibliotecario inserisce i dati e conferma. 4. Il sistema ricerca l’utente (include RicercaUtente). 5. Il sistema ricerca il libro (include RicercaLibro) 6. Il sistema controlla che le condizioni per la consegna del prestito siano verificate. 7. Se le condizioni sono verificate, il sistema visualizza un form riepilogativo in cui viene chiesto di confermare il prestito, altrimenti il sistema avvisa dell’impossibilità di poter consegnare il libro, specificando le motivazioni. 8. Il Bibliotecario conferma la consegna. 9. Il sistema chiede al DBMS di effettuare gli aggiornamenti necessari. 10. Il DBMS effettua gli aggiornamenti. 11. il sistema visualizza l’esito dell’operazione. 60


Condizioni d’uscita

Requisiti Speciali

12. Il Bibliotecario esce dalla funzionalità ConsegnaLibro Oppure Il bibliotecario prende visione dell’impossibilità di concedere il prestito ed esce. In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.5.2.10.2 RiconsegnaPrestito

61


RiconsegnaPrestito Nome Caso d’uso Attori partecipanti Bibliotecario

Condizioni d’ingresso Flusso degli eventi

Condizioni d’uscita Requisiti speciali

DBMS. 1. Il bibliotecario seleziona dalla sua postazione la funzionalità riconsegna libro. 2. Il sistema mostra un form per la ricerca del prestito da estinguere (Include Ricerca Prestito). 3. Il bibliotecario conferma la riconsegna del prestito selezionato. 4. Il programma chiede al DBMS di effettuare tutti gli aggiornamenti necessari. 5. Il DBMS aggiorna i dati 6. Il programma visualizza una schermata di conferma di avvenuta operazione. 7. Il Bibliotecario esce dalla funzionalità RiconsegnaPrestito In caso di mancata connessione col DBMS viene invocato il caso d’uso ConnectionDown.

62


3.5.2.11 Gestione Utente

3.5.2.11.1 RichiestaPrestito Nome caso d’uso RichiestaPrestito Attori Partecipanti Utente; Condizioni d’ingresso 1. L’Utente sceglie la funzionalità RichiestaPrestito. Flusso degli Eventi 2. Il sistema visualizza un form con delle chiavi per la ricerca del libro che l’Utente intende prendere in prestito (include RicercaLibro). 3. Il sistema mostra un form con i dati riepilogativi della richiesta di prestito. 4. L’Utente conferma la richiesta di prestito. Condizioni d’uscita 5. Il sistema stampa il modulo di richiesta prestito.

63


Requisiti Speciali

Nessuno

3.5.2.11.2 VisualizzaSituazionePersonale Nome caso d’uso VisualizzaSituazionePersonale Attori Partecipanti Utente; Condizioni d’ingresso 1. L’Utente sceglie la funzionalità VisualizzaSituazionePersonale. Flusso degli Eventi 2. Il sistema ricerca le informazioni riguardanti l’utente (include RicercaUtente). 3. Il sistema ricerca i prestiti in corso (include RicercaPrestiti) 4. Il sistema visualizza le informazioni. 5. L’utente prende visione delle informazioni ed esce. Requisiti Speciali Nessuno

3.5.2.11.3 ModificaPassword Nome caso d’uso Attori Partecipanti

ModificaPassword

Utente DBMS Condizioni d’ingresso 1. L’Utente sceglie la funzionalità ModificaPassword. Flusso degli Eventi 2. Il sistema visualizza un form in cui inserire: • Id Utente • Password • Nuova Password • Conferma nuova password 3. L’utente compila il form e conferma. 4. Il sistema esegue un controllo. 5. Il sistema chiede al DBMS di memorizzare i nuovi dati. 64


6. Il DBMS aggiorna i dati. 7. Il sistema visualizza l’esito dell’operazione. Condizioni d’uscita 8. L’utente legge il messaggio ed esce dalla funzionalità ModificaPassword. Requisiti Speciali In caso di mancata connessione con il DBMS viene invocato il caso d’uso ConnectionDown.

3.6

Modello oggetto del sistema

3.6.1 Data Dictionary In questo paragrafo si provvederà ad identificare gli oggetti appartenenti al sistema. Per l’identificazione verrà utilizzata l’euristica di Abbot. Una volta identificati tutti gli oggetti si provvederà a dividerli in oggetto Boundary, oggetti Control e oggetti Entità. Oggetti Entity EntityUtente EntityLibro EntityPrestito EntitySollecito EntityAccount

Contiene le informazioni relative all’utente. Contiene le informazioni relative al Libro. Contiene le informazioni relative al Prestito. Contiene le informazioni relative al Sollecito. Contiene informazioni riguardo gli account (ID e Password) 65


Oggetti Control InserisciNuovoLibroCtrl

Gestisce il caso d’uso Inserisci Nuovo Libro CancellaLibroCtrl Gestisce il caso d’uso Cancella Libro ModificaDatiLibroCtrl Gestisce il caso d’uso Modifica Dati Libro VisualizzaInfoLibroCtrl Gestisce il caso d’uso Visualizza Info Libro ConsegnaLibroCtrl Gestisce il caso d’uso Consegna Libro RiconsegnaPrestitoCtrl Gestisce il caso d’uso Riconsegna Prestito RicercaLibroCtrl Gestisce il caso d’uso Ricerca Libro ModificaPasswordCtrl Gestisce il caso d’uso Modifica Password RichiestaPrestitoCtrl Gestisce il caso d’uso Richiesta Prestito VisualizzasituazionePersonaleCtrl Gestisce il caso d’uso Visualizza Situazione Personale RicercaPrestitoCtrl Gestisce il caso d’uso Ricerca Prestito RicercaSollecitiCtrl Gestisce il caso d’uso Ricerca Solleciti IscrizioneUtenzaCtrl Gestisce il caso d’uso Iscrizione Utenza CancellaUtenzaCtrl Gestisce il caso d’uso Cancella Utenza ModificaDatiUtenzaCtrl Gestisce il caso d’uso Modifica Dati Utenza VisualizzaInfoUtenzaCtrl Gestisce il caso d’uso Visualizza Info Utenza RicercaUtenzaCtrl Gestisce il caso d’uso Ricerca Utenza 66


StampaTesserinoCtrl StampaModuloCtrl VisualizzaInfoPrestitoCtrl CancellaPrestitoCtrl ModificaDatiPrestitoCtrl InvioSollecitiCtrl InvioEmailCtrl InvioLetteraCtrl VisualizzaInfoSollecitoCtrl CancellaSollecitoCtrl

Gestisce il caso d’uso Stampa Tesserino Gestisce il caso d’uso Stampa Modulo Gestisce il caso d’uso Visualizza Info Prestito Gestisce il caso d’uso Cancella Prestito Gestisce il caso d’uso Modifica Dati Prestito Gestisce il caso d’uso Invio Solleciti Gestisce il caso d’uso Invio Email nel caso di invio dei solleciti Gestisce il caso d’uso Invio Lettera nel caso di invio dei solleciti Gestisce il caso d’uso Visualizza Info Sollecito Gestisce il caso d’uso Cancella Sollecito

Oggetti Boundary GestioneLibriFrame

Finestra che mostra le funzionalità utilizzate per la gestione dei libri Form utilizzato dall’attore bibliotecario per l’inserimento di un nuovo. Form utilizzato dall’attore bibliotecario per modificare i dati relativi ad un libro Finestra utilizzata per la conferma della cancella del libro visualizzato. Finestra utilizzata per la visualizzazione delle informazioni

InserisciNuovoLibroForm ModificaDatiLibroForm CancellaLibroForm VisualizzaInfoLibroFrame

67


relative ad un libro. LibroDBMSBnd Si occupa dell’interfacciamento delle funzionalità del caso d’uso Gestione Libri con il DBMS. GestionePrestitiFrame Finestra che mostra le funzionalità utilizzate per la gestione dei prestiti EstremiConfermaForm Finestra utilizzata dall’attore bibliotecario per l’inserimento degli estremi del prestito. VisualizzaPrestitoFrame Finestra che mostra le informazioni riassuntive del prestito che si sta concedendo. RiconsegnaPrestitoFrame Finestra utilizzata per riassumere tutte le informazioni relative al prestito che si sta riconsegnando. GestioneUtenteFrame Finestra che mostra le funzionalità utilizzate dall’attore utente. ModificaPasswordForm Finestra utilizzata dall’attore Utente per modificare la propria Password personale. RichiestaPrestitoForm Finestra utilizzata dall’attore utente per generare la richiesta del prestito. VisualizzaSituazionePersonaleFrame Finestra che visualizza la situazione personale di un utente UtenteDBMSBnd Si occupa dell’interfacciamento delle funzionalità del caso d’uso Gestione Utente con il DBMS. GestioneUtenza Finestra che mostra le funzionalità utilizzate per la gestione dell’utenza. GestioneSolleciti Finestra che mostra le funzionalità utilizzate per la gestione dei solleciti. ArchivioPrestiti Finestra che mostra le funzionalità utilizzate per la gestione dell’archivio prestiti. 68


IscrizioneUtenzaForm

Finestra utilizzata dall’attore Amministratore per l’iscrizione di un nuovo utente. Finestra per la conferma della cancellazione dell’utente di cui vengono visualizzate le informazioni. Form utilizzato dall’attore Amministratore per la modifica dei dati relativi ad un utente. Finestra che mostra le informazioni relative ad un utente. Si occupa dell’interfacciamento delle funzionalità del caso d’uso Gestione Utenza con il DBMS. Finestra che mostra le funzionalità utilizzate dall’archivio prestiti. Frame utilizzato per la conferma della cancellazione del prestito evidenziato. Frame che mostra le informazioni relative ad un prestito Si occupa dell’interfacciamento delle funzionalità del caso d’uso Archivio Prestiti con il DBMS. Finestra che mostra le funzionalità utilizzate per la gestione dei solleciti. Finestra che permette di impostare le chiavi per la ricerca dei ritardatari. Finestra che mostra il risultato della ricerca degli utenti ritardatari Finestra che mostra gli utenti cui si sta per inviare un sollecito. Finestra che mostra l’esito dell’invio dei solleciti.

CancellaUtenzaForm

ModificaDatiUtenzaForm VisualizzaInfoUtenzaForm UtenzaDBMSBnd ArchivioPrestitiFrame CancellaPrestitoFrame VisualizzaInfoPrestitoFrame ArchivioPrestitiDBMS GestioneSollecitiFrame RicercaRitardatariForm PrestitiScadutiFrame SollecitiDaInviareBnd VisualizzaEsitoInvio

69


CancellaSollecitoBnd

Finestra per la conferma della cancellazione del sollecito visualizzato Finestra utilizzata per impostare le chiavi per la ricerca dei solleciti. Finetra che mostra il risultato della ricerca dei solleciti. Frame che visualizza le informazioni relative ad un sollecito. Si occupa dell’interfacciamento delle funzionalità del caso d’uso Gestione Solleciti con il DBMS. Finestra utilizzata per la modifica dei dati relativi ad un prestito. Finestra che mostra un riepilogo dei dati relativi all’iscrizione di un utente. Finestra che mostra una anteprima di stampa del modulo informativo rilasciato in seguito ad un iscrizione. Finestra che mostra un anteprima di stampa del tesserino dell’utente Finestra utilizzata per impostare le chiavi per la ricerca di un libro. Form utilizzato per impostare le chiavi utilizzate per la ricerca di un prestito. Frame che visualizza i risultati di ricerca prestito Form utilizzato per impostare le chiavi per la ricerca di un utente. Finestra che mostra il risultato di cerca utenza. Si occupa dell’interfacciamento delle varie funzione di ricerca, che gli utenti hanno in comune, con il

RicercaSollecitiForm RisultatoRicercaSollecitiFrame VisualizzaInfoSollecitoSFrame DBMSSollecitiBnd ModificaEstremiFrame StampaModuloFrame AnteprimaModuloFrame

AnteprimaTesserinoFrame RicercaLibroForm RicercaPrestitoForm PrestitiTrovatiFrame CercaUtenzaForm RisultatoRicercaForm ClassiComuniDBMSBnd

70


DBMS.

3.6.2 Diagramma delle classi Di seguito vengono riportati i diagrammi delle classi estratti dai casi d’uso: [nota: Per una migliore visione si consiglia comunque di prendere visione dei suddetti diagrammi direttamente dal file “BibliotecaTech� contenuto nel CD]. 3.6.2.1 Diagramma delle classi: Login

71


3.6.2.2 Diagramma delle classi: Gestione Utenza

72


3.6.2.3 Diagramma delle classi: Gestione Solleciti

73


3.6.2.4 Diagramma delle classi: Archivio Prestiti

74


3.6.2.5 Diagramma delle classi: Gestione Libri

75


3.6.2.6 Diagramma delle classi: Gestione Prestiti

76


3.6.2.7 Diagramma delle classi: Gestione Utente

77


3.6.2.8 Diagramma delle classi: Classi Comuni

78


3.6.3 Modello dinamico In questo paragrafo si provvederĂ  a fornire una rappresentazione del comportamento del sistema tramite diagrammi di sequenza, che tendono a mostrare la comunicazione tra i vari oggetti del sistema con il trascorrere del tempo. 3.6.3.1 Iscrizione Utenza

79


3.6.3.2 Cancella Utenza

3.6.3.3 Modifica Dati Utenza

80


3.6.3.4 Visualizza Info Utenza

3.6.3.5 Ricerca Utenza

81


3.6.3.6 Stampa Modulo Informativo

3.6.3.7 Stampa Tesserino

82


3.6.3.8 Visualizza Info Prestito

3.6.3.9 Cancella Prestito

83


3.6.3.10 Modifica Dati Prestito

3.6.3.11 Ricerca Prestito

84


3.6.3.12 Invio Solleciti

3.6.3.13 Invio Email

85


3.6.3.14 Invio Lettera

3.6.3.15 Visualizza Info Sollecito

86


3.6.3.16 Cancella Sollecito

3.6.3.17 Ricerca Sollecito

87


3.6.3.18 Inserisci Nuovo Libro

3.6.3.19 Cancella Libro

88


3.6.3.20 Modifica Dati Libro

3.6.3.21 Visualizza Info Libro

89


3.6.3.22 Ricerca Libro

90


3.6.3.23 Consegna Libro

91


3.6.3.24 Riconsegna Prestito

3.6.3.25 Visualizza Situazione Personale

92


3.6.3.26 Richiesta Prestito

3.6.3.27 Modifica Password

93


3.6.4 Diagramma di attivitĂ  e di stato 3.6.4.1 Diagramma di stato: Consegna Libro

94


3.6.4.2 Diagramma di stato: Gestione Libri

95


3.6.4.3 Diagramma di stato: Gestione Sollecito 96


3.6.4.4 Diagramma di stato: Riconsegna Prestito 97


3.6.4.5 Diagramma di stato: Libro

3.6.4.6 Diagramma Stato: Sollecito 98


3.6.4.7 Diagramma di attivitĂ : Cancella Libro

3.4.6.8 Diagramma di attivitĂ : Consegna Libro 99


3.4.6.9 Diagramma di attivitĂ : Ricerca 100


3.4.6.10 Diagramma di attivitĂ : Riconsegna Prestito

Mock Up 101


In questa sezione verrĂ  data una breve descrizione delle interfacce principali del sistema. GestioneUtenzaFrame

IscrizioneUtenzaFrame

102


CercaUtenzaForm

ModificaDatiUtenzaForm

103


Cancella Utenza Form

Anteprima Tesserino

104


GestioneLibri

IscrizioneNuovoLibro

105


ModificaDatiLibro

RicercaLibro

106


RichiestaPrestito

VisualizzaSituazionePersonale

107


ConsegnaLibro

Invio Sollecito

108


Ricerca Ritardatari

Ricerca Sollecito Form

109


Connection down

110


prova