Metodologie e modelli di progetto Ingg. Francesco Gullo, Giovanni Ponti D.E.I.S Università della Calabria fgullo@deis.unical.it gponti@deis.unical.it 1
I Sistemi Informativi 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 Le fasi di progettazione di un sistema informativo sono generalmente le seguenti: studio di fattibilità: serve a stimare i costi delle varie alternative ed a stabilire le priorità di realizzazione dei vari componenti del sistema 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. progettazione: si divide in due fasi: Design del database -struttura ed organizzazione dei dati Design operazionale caratteristiche delle applicazioni sviluppo: consiste nella realizzazione del sistema informativo secondo la struttura e le caratteristiche definite nella fase di progettazione validazione e collaudo: serve a verificare il corretto funzionamento e la qualità del sistema informativo funzionamento: in questa fase il sistema informativo diventa operativo. Questa fase normalmente richiede solo operazioni di gestione e manutenzione. 3
Analisi dei Requisiti 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: Utenti Documenti preesistenti 4
Design di un Database Progettare un database implica definire i seguenti aspetti: Struttura Caratteristiche Contenuti Le fasi di progettazione sono le seguenti: 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 Progettazione logica: lo schema concettuale viene tradotto in uno schema logico, adottando un modello di dati logico che sia supportato dal DBMS scelto. 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 ( Entità-Relazione (Modello Progettazione Logica Schema Logico ( Relazionale (Schema Risultato della Progettazione ( Finito (Prodotto Progettazione Fisica 6
( E-R ) Il modello Entità-Relazione 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 I costrutti del modello E-R sono i seguenti: Entità Relazione Attributo semplice Attributo composto Cardinalità di una relazione Cardinalità di un attributo Identificatore interno Identificatore esterno 8
Progettazione e implementazione di una base di dati Esempio Videoteca 9
Scenario: Videoteca ( 1/2 ) Analisi dei Requisiti 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 identificati dallo stesso numero. 10
Scenario: Videoteca ( 2/2 ) Analisi dei Requisiti 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 Dopo l Analisi dei Requisiti si procede con la Progettazione Concettuale Specifiche Formali Modello Entità/Relazione 12