Metodologie e modelli di progetto Ingg. Francesco Gullo, Giovanni Ponti D.E.I.S – Università della Calabria [email protected] [email protected] 1 I Sistemi Informativi n n Un sistema informativo è un sistema che organizza e gestisce in modo efficace ed efficiente le informazioni necessarie per perseguire uno o più scopi Per la conservazione dei dati si ricorre molto spesso alle Basi di Dati 2 Ciclo di vita di un Sistema Informativo n Le fasi di progettazione di un sistema informativo sono generalmente le seguenti: n studio di fattibilità: serve a stimare i costi delle varie alternative ed a stabilire le priorità di realizzazione dei vari componenti del sistema n raccolta e analisi dei requisiti: consiste nello studio delle proprietà e delle funzionalità che il sistema informativo dovrà avere. E’ richiesta un'interazione con gli utenti del sistema e produce una descrizione completa ma informale dei dati coinvolti e delle operazioni su di essi. n progettazione: si divide in due fasi: n Design del database - struttura ed organizzazione dei dati n Design operazionale – caratteristiche delle applicazioni n sviluppo: consiste nella realizzazione del sistema informativo secondo la struttura e le caratteristiche definite nella fase di progettazione n validazione e collaudo: serve a verificare il corretto funzionamento e la qualità del sistema informativo n funzionamento: in questa fase il sistema informativo diventa operativo. Questa fase normalmente richiede solo operazioni di gestione e manutenzione. 3 Analisi dei Requisiti n n n n Per raccolta dei requisiti si intende la completa individuazione dei problemi che l'applicazione da realizzare deve risolvere e le caratteristiche che tale applicazione dovrà avere L'analisi dei requisiti consiste nel chiarimento e nell'organizzazione delle specifiche del sistema I requisiti vengono inizialmente raccolti in specifiche espresse generalmente in linguaggio naturale e per questo motivo spesso ambigue e disorganizzate I requisiti provengono da fonti diverse: n n Utenti Documenti preesistenti 4 Design di un Database n n Progettare un database implica definire i seguenti aspetti: n Struttura n Caratteristiche n Contenuti Le fasi di progettazione sono le seguenti: n Progettazione concettuale: si descrive l’organizzazione dei dati ad un alto livello, producendo come risultato uno schema concettuale. È uno schema formale ed indipendente dai criteri di rappresentazione n Progettazione logica: lo schema concettuale viene tradotto in uno schema logico, adottando un modello di dati logico che sia supportato dal DBMS scelto. n Progettazione fisica: lo schema logico viene completato con tutti i dettagli necessari per l’implementazione fisica sul DBMS scelto. 5 Design di un Database Requisiti Progettazione Concettuale Schema Concettuale (Modello Entità-Relazione) Progettazione Logica Risultato Risultatodella dellaProgettazione Progettazione (Prodotto (ProdottoFinito) Finito) Schema Logico (Schema Relazionale) Progettazione Fisica 6 Il modello Entità-Relazione (E-R) n n n n Il modello Entità-Relazione (E-R) è un modello di dati concettuale. Fornisce dei costrutti per descrivere i requisiti dei dati di un’applicazione in modo formale ed indipendente da come verranno organizzati e gestiti i dati in un sistema. Ad ogni costrutto è associata una rappresentazione grafica. In questo modo è possibile rappresentare tramite dei diagrammi (ottenuti combinando i costrutti di base) i requisiti che i dati devono soddisfare. 7 Costrutti del modello E-R n I costrutti del modello E-R sono i seguenti: n Entità n Relazione n Attributo semplice n Attributo composto n Cardinalità di una relazione n Cardinalità di un attributo n Identificatore interno n Identificatore esterno 8 Progettazione e implementazione di una base di dati Esempio Videoteca 9 Scenario: Videoteca Analisi dei Requisiti (1/2) n n n La Videoteca è una struttura collocata in un edificio di più piani ed è volta a fornire una serie di servizi ai suoi clienti, quali la visione ed il noleggio dei film che essa ha in magazzino. Ogni film ha informazioni riguardanti il titolo del film, l’anno, il genere ed il suo regista. Inoltre, ogni film è interpretato da una serie di attori, ognuno di essi identificato da un codice univoco e per i quali si memorizzano le informazioni riguardanti il loro nome ed il cognome. Per ogni film, nella videoteca sono presenti più copie, identificate dal codice del film e da un valore che identifica il numero della copia di quel film. Inoltre, le copie contengono anche l’informazione sul tipo di supporto utilizzato per la memorizzazione (DVD, VHS, etc…). Le copie vengono conservate negli scaffali della videoteca, ognuno dei quali è caratterizzato da una capienza massima e da un numero complessivo. Non è possibile avere su uno stesso piano due scaffali 10 identificati dallo stesso numero. Scenario: Videoteca Analisi dei Requisiti (2/2) n n n I clienti sono le persone che richiedono qualche servizio alla videoteca. Sono caratterizzati da un codice fiscale, cognome, nome, email, numero di telefono ed indirizzo, composto da città, via e numero civico. I clienti che usufruiscono dei servizi della videoteca sono di due diversi tipi: i clienti tesserati e quelli occasionali. I clienti occasionali posso soltanto richiedere la visione dei film nei locali della videoteca, mentre quelli tesserati posso, oltre che visionare i film nella videoteca, effettuare dei noleggi per le copie dei film disponibili. Sia per le visioni che per i noleggi, non è possibile avere una visione o un noleggio di uno stessa copia di film da parte di un cliente nella stessa data. I clienti tesserati hanno anche l’informazione sul codice della tessera e sull’eventuale sconto che viene applicato al prezzo di ogni servizio richiesto. 11 Progettazione Concettuale n Dopo l’Analisi dei Requisiti si procede con la Progettazione Concettuale Specifiche Formali Modello Modello Entità/Relazione Entità/Relazione 12