Esempio di progettazione di un database con elencazione delle fasi progettuali

Documenti analoghi
Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

La in verifica forma teoria normale della normalizzazione fornisce comunque uno strumento di già

Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere..

La progettazione di un database

MODELLO RELAZIONALE. Introduzione

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1

DATABASE RELAZIONALI

Basi di dati. Le funzionalità del sistema non vanno però ignorate

(C.M. n. 24 del 2 marzo 2009) Prot. n. 5462/C3b Ancona, 30 marzo 2009 IL VICE DIRETTORE GENERALE

Laboratorio di Basi di Dati e Web

Progettazione di Database. Un Esempio

BASI DATI INFORMATICA

Lezione V. Aula Multimediale - sabato 29/03/2008

GUIDA ALLA PRENOTAZIONE ESAMI PORTALE ISIDATA.NET

CLIENTE: dati anagrafici relativi ai clienti e/o proprietari di auto nuove ed usate.

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

Università degli studi di Milano Bicocca Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Magistrale in INFORMATICA

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House:

INTRODUZIONE ALLE BASI DATI RELAZIONALI

DBMS (Data Base Management System)

Traduzione dello schema E-R in modello logico relazionale

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni

Gestione Voti Scolastici

Esempio di database relazionale con l utilizzo del prodotto MySQL

Corso di Informatica

Facoltà: LETTERE E FILOSOFIA Corso: ANTROPOLOGIA CULTURALE ED ETNOLOGIA (LM) Ordinamento: DM270

Elena Baralis 2013 Politecnico di Torino 1

Organizzazione degli archivi

Normalizzazione. Definizione

ALTERNANZA SCUOLA LAVORO IN AUTOGRILL. Allegato a) 1. TITOLO DEL PROGETTO 2. DATI DELL ISTITUTO CHE PRESENTA IL PROGETTO

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER

MODELLO E/R. Modellazione dei dati

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:

CAPITOLO V. DATABASE: Il modello relazionale

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale

Basi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2

Laboratorio di Basi di Dati

U N I V E R S I T À D E G L I S T U D I D I B O L O G N A

Progettazione di Basi di Dati

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro)

Informatica per le discipline umanistiche 2 lezione 10

DESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE.

Modulo 2 Data Base 2

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Riconoscere e formalizzare le dipendenze funzionali

Un DataBase SQL per la Henry Books

UNIWEB- GUIDA STUDENTE INSERIMENTO PIANO DEGLI STUDI ON LINE

TEORIA sulle BASI DI DATI

Segreteria da campo. Database Relazionali

Concetti preliminari teorici per il corso di Access Avanzato - Sc.Elem Falcone - PON Prof. M. Simone

Modulo di domanda di partecipazione al concorso ordinario per esami e titoli della scuola secondaria Classi di Concorso TABELLA A

Basi di dati. Gabriella Trucco

Sistemi Informativi e Basi di Dati

UNIVERSITA DEGLI STUDI Niccolò Cusano - TELEMATICA ROMA Via Don Carlo Gnocchi, Roma REGOLAMENTO

Identificatori delle entità

PROGETTAZIONE CONCETTUALE

Database 1 biblioteca universitaria. Testo del quesito

Modello Relazionale. Sistemi di Elaborazione delle Informazioni. DB ed SQL. Modello relazionale: concetti di base

Capitolo 9. Esercizio 9.1. Esercizio 9.2

Basi di Dati e Microsoft Access

STANDARD DOCUMENTALE PIANO DI GESTIONE DELLA Ver. 7

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

I database relazionali (Access)

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

UNIVERSITA DEGLI STUDI DI UDINE REGOLAMENTO DIDATTICO DI CORSO DI LAUREA. Corso di laurea in Economia aziendale

Corso di Informatica (Basi di Dati)

Basi di Da( MySQL & MySQL Workbench. Anna Monreale

Università degli Studi di Verona. Laboratorio di Basi di Dati

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Cardinalità. Informatica. Cardinalità. Cardinalità. Cardinalità. Cardinalità. Cardinalità delle associazioni:

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

Piano di studi per la classe L-3: Discipline delle arti figurative, della musica, dello spettacolo e della moda

User Tools: DataBase Manager

Domini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5

Corso di Diploma in Economia e Gestione dei Servizi izi Turistici (cofinanziato dal Fondo Sociale Europeo)

Informatica 2011/

ERASMUS STUDIO LEARNING AGREEMENT

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

REGOLAMENTO DIDATTICO DEL CORSO DI LAUREA MAGISTRALE IN SERVIZIO SOCIALE E POLITICHE SOCIALI. ARTICOLO 1 Definizioni

Per l'accesso al corso di laurea magistrale sono altresì richiesti i seguenti requisiti curriculari:

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

RDBMS: panorama attuale. RDBMS: panorama attuale

PROGRAMMA DI INFORMATICA

Basi di Dati e Sistemi Informativi. Structured Query Language

Il linguaggio SQL: DDL di base

Audience di riferimento

ELENCHI DEL PERSONALE

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

Portale WEB Scambio Sul Posto

PANTHEON ACCADEMIA di BELLE ARTI

Gestione delle tabelle

Database. Organizzazione di archivi mediante basi di dati. ing. Alfredo Cozzi 1

Informatica Grafica. Basi di dati

Le Basi di Dati. Le Basi di Dati

Ufficio Relazioni Internazionali e Ricerca Scientifica Settore Rapporti Internazionali IL RETTORE

Modulo di domanda di partecipazione

CORSO DI SPECIALIZZAZIONE/PERFEZIONAMENTO (art.6 l.341/90) Per una nuova metodologia didattica: apprendere ed educare nella societa' della conoscenza

Transcript:

Esempio di progettazione di un database con elencazione delle fasi progettuali 1. Definizione delle ENTITÀ Studente: dati anagrafici degli studenti Insegnamento: i corsi di studio (materie) tenuti dai docenti Docente: i professori che tengono gli insegnamenti e gli esami 2. Definizione degli ATTRIBUTI e CHIAVI delle entità Studente (Matricola_Studente, Cognome, Nome, Data_Nascita) Insegnamento (Codice_Insegnamento, Descrizione, Anno_di_Corso, Fondamentale) Docente (Matricola_Docente, Cognome, Nome, Data_Nascita) Gli attributi sottolineati costituiscono le chiavi primarie delle entità. Non vi sono chiavi candidate, che altrimenti andrebbero evidenziate.

3. DIZIONARIO degli attributi Attributo Descrizione Tipo Vincolo / Note ID ID progressivo che identifica un record DECIMAL(6,0) Contatore automatico (per la Matricola) Cognome Cognome di una persona VARCHAR(20) Nome Nome di battesimo di una persona VARCHAR(30) Data Data cronologica DATE Formato ISO AAAA-MM-GG Denominazione Denominazione generica VARCHAR(50) Ad es. per la descrizione dell insegnamento Anno_di_Corso Anno di corso dell insegnamento TINYINT(2) UNSIGNED BETWEEN 1 AND 6 Flag Eventuale obbligatorietà (Sì/No) dell attributo BOOLEAN 1=Sì 0=No Codice_Insegnamento Codice identificativo attribuito all insegnamento CHAR(3) Anno_Accademico Anno iniziale e finale CHAR(9) Ad es. 2017/2018 Percentuale Valore percentuale espresso in frazione dell intero FLOAT(3,2) BETWEEN 0.00 AND 1.00 Ad es. 0.85 = 85%

4. Definizione delle RELAZIONI Studente Insegnamento Docente Studente R1 (0 ; m) R2 (1 ; 1) Insegnamento R1 (0 ; n) R3 (1 ; 1) Docente R2 (0 ; n) R3 (0 ; n) R1 [m : n] Studente segue Insegnamento R2 [1 : n] Docente assegnatesi a Studente R3 [1 : n] Docente tiene Insegnamento 5. VERIFICA delle RELAZIONI La relazione R1, essendo molti-a-molti, va trasformata in due relazioni uno-a-molti collegate (sul lato molti) alla nuova Entità Frequenza (le frequenze ottenute dagli studenti per gli insegnamenti seguiti), avente gli attributi: (Studente, Insegnamento, Anno_Accademico, Perc_Frequenza) che assorbe le chiavi primarie Studente.Matricola_Studente ( = Frequenza.Studente) e Insegnamento.Codice_Insegnamento ( = Frequenza.Insegnamento) delle tabelle collegate alla relazione originaria. La chiave primaria è multi-attributo e deve comprendere necessariamente anche l anno accademico potendo eventualmente uno studente rifrequentare un corso. Qualora una relazione possieda degli attributi, va anch essa scissa in due relazioni (1:1 oppure 1:m a seconda della cardinalità della relazione originaria) collegate ad una nuova tabella, avente come attributi di partenza le chiavi primarie delle tabelle collegate alla relazione originaria e gli attributi della stessa, nonché eventuali altri attributi ritenuti utili.

Sono quindi state aggiunte al progetto le seguenti nuove relazioni: R1a [1 : n] Uno Studente frequenta un Insegnamento per conseguirne la Frequenza R1b [1 : n] Un Insegnamento èfrequentato da uno Studente per conseguirne la Frequenza in sostituzione della relazione R1 che viene eliminata. Studente Insegnamento Docente Frequenza Studente R1 (0 ; m) R2 (1 ; 1) R1a (0 ; n) Insegnamento R1 (0 ; n) R3 (1 ; 1) R1b (0 ; m) Docente R2 (0 ; n) R3 (0 ; n) Frequenza R1a (1 ; 1) R1b (1 ; 1)

6. Controllo delle CHIAVI ESTERNE Fatto ciò, per ciascuna relazione ora presente nel progetto va verificato che la chiave primaria dell entità sul lato uno sia presente come chiave esterna nell altra entità della relazione: in caso contrario, va aggiunta in modo che nell implementazione del progetto nel modello relazionale il DBMS possa creare correttamente le relazioni tra le tabelle. Dopo questa fase, l elenco completo delle entità e relativi attributi è il seguente: Studente (Matricola_Studente: ID, Cognome: Cognome, Nome: Nome, Data_Nascita: Data) Insegnamento (Codice_Insegnamento: Codice_Insegnamento, Descrizione: Denominazione, Anno_di_Corso: Anno_di_Corso, Fondamentale: Flag) Docente (Matricola_Docente: ID, Cognome: Cognome, Nome: Nome, Data_Nascita: Data) Frequenza (Studente => Studente.Matricola_Studente, Insegnamento => Insegnamento.Codice_Insegnamento, Anno_Accademico: Anno_Accademico, Perc_Frequenza: Percentuale) dove, per ciascun attributo, è indicato (dopo i due punti) il tipo (l attributo del dizionario cui corrisponde) oppure se si tratta di una chiave esterna la Tabella.Chiave_Primaria cui l attributo è collegato.

7. NORMALIZZAZIONE delle entità In quest ultima fase, occorre verificare che ciascuna entità (che diventerà una tabella nel modello relazionale) sia in terza forma normale (3FN). Per fare ciò occorre procedere per gradi. (1) Innanzitutto, verificare che ciascuna entità (tabella) sia in 1FN, cioè che abbia la chiave primaria. (2) Successivamente verificare che ciascuna entità sia anche in 2FN, cioè che ciascun attributo NON CHIAVE dell entità dipenda INTERAMENTE da tutte gli attributi della chiave (questo ovviamente se la chiave primaria è multi-attributo, altrimenti l entità è anche già in 2FN). (3) Infine, un entità è in 3FN se ciascun attributo NON CHIAVE dipende DIRETTAMENTE dalla chiave (mono o multiattributo che sia), cioè un attributo non chiave non deve dipendere da un altro attributo non chiave ma solo e direttamente dalla chiave primaria. Qualora un attributo non soddisfi i requisiti sopra elencati va rimosso dall entità in esame e va inserito in una nuova entità, la cui chiave sarà costituita dagli attributi dai quali l attributo rimosso dipende.

Questo conclude l intera progettazione del database. Il progetto può quindi essere disegnato in forma grafica, rispettando le regole della metodologia Entity/Relationship (https://it.wikipedia.org/wiki/modello_e-r): Studente (1;1) (0;n) frequenta (0;n) Frequenza (0;n) (1;1) èfrequentato (1;n) Insegnamento Matricola_Studente Studente Codice_Insegnamento Cognome Insegnamento Descrizione Nome Anno_Accademico Anno_di_Corso Data_Nascita Perc_Frequenza Fondamentale assegnatesi (1;1) Docente (1;1) tiene Matricola_Docente Cognome Nome Data_Nascita