Sei sulla pagina 1di 10

MODELLAZIONE DEI DATI OBIETTIVI

Strategie di progettazione di una base di dati Tecniche per la definizione del modello dei dati.

ESEMPIO
Si vuole realizzare una base di dati per una scuola, di cui vogliamo rappresentare i dati dei partecipanti ai
corsi e dei docenti. Per gli studenti (circa 2000), identificati da un codice, si vuole memorizzare il codice
fiscale, il cognome, il nome, il luogo e la data di nascita, l’indirizzo e il numero di telefono, i corsi che hanno
frequentato (i corsi sono in tutto 300 circa) e il giudizio finale. Rappresentiamo anche i seminari che stanno
attualmente frequentando e, per ogni giorno, i luoghi e le ore dove sono tenute le lezioni. I corsi hanno un
codice, un titolo e possono avere varie edizioni con date di inizio e fine e numero di partecipanti. Per quelli
che lavorano, vogliamo conoscere il posto ricoperto e anche l’eventuale titolo. Per gli insegnanti (circa
200), rappresentiamo il cognome, il nome, la data e il posto dove sono nati, il nome del corso che
insegnano, quelli che hanno insegnato nel passato e quelli che possono insegnare. Rappresentiamo anche
tutti i loro recapiti telefonici. I docenti possono essere dipendenti interni o collaboratori esterni.
TROPPE AMBIGUITÀ, È MEGLIO STESSO STILE E SPECIFICARE IL SOGGETTO. SPECIFICARE BENE ANCHE LE
PAROLE.

GLOSSARIO

Si vuole realizzare una base di dati per una scuola, di cui vogliamo rappresentare i dati dei partecipanti ai
corsi e dei docenti. Per gli studenti (circa 2000), identificati da un codice, rappresentiamo il codice fiscale, il
cognome, il nome, il luogo e la data di nascita, l’indirizzo e il numero di telefono, i corsi che frequentano e
quelli che hanno frequentato (circa 300) con la relativa votazione finale in trentesimi. Per gli studenti
lavoratori rappresentiamo la posizione ricoperta e l’eventuale titolo professionale. Per i corsi
rappresentiamo il codice, il titolo e, per ogni edizione rappresentiamo la data di inizio e di fine, il numero
dei partecipanti, il giorno della settimana, l’aula e l’ora di inizio e di fine della lezione. Per gli insegnanti
(circa 200), rappresentiamo il cognome, il nome, il luogo e la data di nascita, tutti i numeri di telefono, il
titolo del corso che insegnano, di quelli che hanno insegnato nel passato e di quelli che possono insegnare.
I docenti possono essere dipendenti interni o collaboratori esterni.
OPERAZIONI
 Inserire un nuovo partecipante indicando tutti i suoi dati (frequenza: 30 volte al giorno).
 Assegnare un partecipante ad una edizione di corso (40 volte al giorno).
 Inserire un nuovo docente indicando tutti i suoi dati e i corsi in cui può insegnare (2 volte alla
settimana).
 Assegnare un docente ad un’edizione di un corso (15 volte al mese).
 Visualizzare i partecipanti ad un corso di un dato docente (5 volte a settimana).
 Effettuare una statistica su tutti i partecipanti ad un corso con tutte le informazioni su di essi,
sull’edizione del corso e sulla votazione conseguita (10 volte al mese)
STRATEGIE
◼ Top-down
◼ Bottom-up
◼ Inside-out (a macchia d’olio)
◼ Strategia mista

TOP DOWN

VISIONE ASTRATTA E GLOBALE DI TUTTE LE


COMPONENTI

SCHEMA ENTITÀ-ASSOCIAZIONE
PER CONVENZIONE LE ENTITÀ SONO
IDENTIFICATE COME RETTANGOLI, LE
ASSOCIAZIONI COME ROMBI, GLI
ATTRIBUTI TRAMITE CERCHI
BOTTOM-UP
CONCETTI SEMPRE Più PICCOLI FINO AD
ARRIVARE A QUELLI DI BASE

INSIDE-OUT
SOLO ALCUNI CONCETTI

STRATEGIA MISTA
◼ Analizzare i requisiti ed eliminare le ambiguità presenti
◼ Costruire un glossario
◼ Raggruppare i requisiti
◼ Individuare i concetti rilevanti e rappresentarli nello schema scheletro
◼ Effettuare una decomposizione dei requisiti
◼ Raffinare i concetti presenti sulla base delle specifiche e aggiungere i nuovi non ancora descritti
◼ Integrare i sotto-schemi
◼ Verificare la correttezza, la leggibilità, la completezza e l’essenzialità dello schema
ARCHIVI

GESTIONE NON INTEGRATA

BASE DI DATI (DATABASE): Insieme di archivi integrati che possono costituire una base di lavoro per utenti
diversi con applicazioni diverse

GESTIONE INTEGRATA

OPERAZIONI SUL DATABASE


◼ Creazione
◼ Manipolazione
–Inserimento
–Variazione
–Cancellazione
◼ Interrogazione (query)

MODELLO E/R: ENTITÀ


 L’entità è un oggetto (concreto o astratto) che ha un significato anche quando viene considerato in
modo isolato.
 Esempi di entità sono: le persone, un’automobile, i movimenti contabili, gli studenti, le facoltà.

Entità: rettangoli, i concetti al singolare

MODELLO E/R: ASSOCIAZIONI


◼ L’associazione (in inglese relationship) è un legame che stabilisce un’interazione tra le entità.
Attenzione: Non sono da confondere le parole relationship e relazione.

Versi dell’associazione: tra Facoltà e Studente sussiste l’associazione Essere scelta, che non viene
rappresentata

MODELLO E/R: ASSOCIAZIONI


◼ Una persona può possedere un’automobile o più
◼ Un’automobile deve essere posseduta da una persona
ESEMPIO 1

◼ Ogni Studente deve essere iscritto a una sola Facoltà.


◼ Ogni Facoltà può avere iscritti uno o più Studenti.

ESEMPIO 2

◼ Ogni Materia deve essere insegnata da uno o più Docenti


◼ Ogni Docente può insegnare una o più Materie

ASSOCIAZIONE TRA DUE ENTITÀ CLASSIFICAZIONE


◼ Associazione 1:1 (uno a uno) o biunivoca
◼ Associazione 1:n (uno a molti) o semplice
◼ Associazione n:n (molti a molti) o complessa

ASSOCIAZIONI E ATTRIBUTI

◼ Di chi sono attributi il prezzo di


acquisto, la data di acquisto, ... ?
◼ Anche le associazioni possono avere
attributi
UN SIMBOLISMO DIVERSO PER DESCRIVERE UN'ASSOCIAZIONE

MODELLO E/R: ATTRIBUTI


◼ Le proprietà delle entità e delle associazioni vengono descritte attraverso gli attributi.
◼ I valori degli attributi determinano le diverse istanze di una entità. Attributi di Studente: Matricola, Nome,
Cognome, Indirizzo.

CARATTERISTICHE DEGLI ATTRIBUTI


◼ Il dominio è l’insieme dei valori che può assumere l’attributo.
◼ Il formato di un attributo indica il tipo di valori che assume. Formati base: carattere, numerico, data/ora
◼ La dimensione indica la quantità massima di caratteri o cifre inseribili.
◼ L'opzionalità
◼ Il valore nullo: Null

CHIAVE O CHIAVE PRIMARIA


◼ L'insieme minimale di uno o più attributi che consentono di
distinguere un’istanza dall'altra.
◼ Esempi di chiavi sono il codice di un prodotto o la matricola di
uno studente.

Chiave o chiave primaria


◼ L'insieme minimale di uno o più attributi che consentono di
distinguere un’istanza dall'altra.
LIVELLI DI ANALISI

MODELLO RELAZIONALE

MODELLO RELAZIONALE
◼ Dati n insiemi S1, S2, S3, ..., Sn (non necessariamente distinti), si dice relazione R su questi insiemi
l'insieme delle n-uple s1, s2, s3,..., sn
◼ Gli insiemi Si si chiamano domini della relazione.
◼ Si dice che la relazione è di grado n
◼ Il numero delle n-uple o tuple si chiama cardinalità della relazione

LA RELAZIONE COME TABELLA


1. Ogni riga rappresenta una tupla della relazione R
2. L’ordine delle righe non è importante
3. Tutte le righe sono diverse tra loro
4. L’ordine delle colonne è significativo e corrisponde all’ordine dei domini S1, S2, ..., Sn sui quali la
relazione R è definita
5.Ogni colonna è rappresentata con un titolo che è il nome del dominio corrispondente.
[Codd, 1970]
REGOLE DI DERIVAZIONE PER LE ASSOCIAZIONI

◼ L’associazione uno a uno diventa un’unica tabella che contiene gli attributi della prima e della seconda
entità
◼ L'identificatore univoco dell’entità di partenza nell’associazione uno a molti diventa chiave esterna
(foreign key) dell'entità di arrivo associata
◼ L'associazione molti a molti diventa una nuova tabella (in aggiunta alle tabelle derivate dalle entità)
composta dagli identificatori univoci delle due entità e dagli eventuali attributi dell’associazione.

Potrebbero piacerti anche