PROGETTAZIONE CONCETTUALE 1
Il Modello Concettuale Nella progettazione concettuale la descrizione dei dati da rappresentare avviene a livello astratto indipendentemente dal computer e dal software utilizzato. I dati e le relazioni tra di essi vengono rappresentati graficamente attraverso uno schema detto Schema E/R (Entity-Relationship). Esso descrive il modello concettuale senza occuparsi dell efficienza delle operazioni di manipolazione e ritrovamento dei dati. Risulta di facile comprensione anche per persone che non si occupano di computer ed ha alla base alcuni concetti e regole che lo rendono preciso e rigoroso. Gli elementi dello schema E/R sono: ENTITA ASSOCIAZIONI e ATTRIBUTI 2
ENTITA L Entità è un oggetto (concreto o astratto) di interesse della realtà che si vuole rappresentare ed ha un significato anche quando viene considerato in modo isolato. Esempio: una persona, un modello di automobile, una prova sostenuta da uno studente Si possono raggruppare in una Classe secondo un criterio di omogeneità. Esempio: gli studenti di una scuola si possono raggruppare nell entità Studente. Ciascuno studente (esempio Rossi Mario 3Al) rappresenta un Istanza dell entità studente. Nella rappresentazione grafica le entità sono identificate con un rettangolo contenente all interno il nome dell entità al singolare. Studente Automobile Persona 3
ATTRIBUTI Le proprietà delle entità e delle associazioni sono descritte attraverso gli Attributi. Esempio: gli attributi per l entità Cilindrata, PrezzoListino. Automobile sono: Modello, Produttore, Le caratteristiche di ogni attributo sono: il formato che indica il tipo di valori che può assumere (carattere, numerico, data/ora) la dimensione che indica la quantità massima di caratteri o cifre inseribili l opzionalità che indica se l attributo è obbligatorio oppure facoltativo A seconda del tipo di dato gli attributi possono essere: Semplici o elementari Composti (es. data composta da giorno, mese e anno) 4
ATTRIBUTI Normalmente la rappresentazione grafica è in un rettangolo al di sotto dell entità o dell associazione Anche le associazioni possono essere descritte con degli attributi. 5
ATTRIBUTI Si indica con il termine chiave o chiave primaria (primary key:pk) un insieme minimale (normalmente uno) di attributi che permettono di distinguere tra loro le istanze di una stessa entità. Esempi: codice di un prodotto, matricola di un dipendente, codice fiscale di una persona ecc Nel caso la chiave sia formata da più attributi essa viene indicata come Partial Primary Key (PPK) 6
ASSOCIAZIONI L Associazione (relationship( relationship) è il legame logico esistente tra due o più entità. L associazione è caratterizzata da: un nome un verso un grado la partecipazione la molteplicità o cardinalità Il nome è rappresentato con il verbo nella forma infinita. Si usa la forma passiva nella lettura del verso contrario. Il verso identifica il senso di lettura. 7
Normalmente la rappresentazione grafica utilizzata è: Il grado rappresenta il numero di entità che partecipano all associazione. Esistono associazioni: Binarie: mettono in relazione due entità e sono le più diffuse (grado 2) Unarie: mettono in relazione un istanza di un entità con un altra istanza della stessa entità (grado 1) Multiple: mettono in relazione tre o più entità (grado n) Nell esempio precedente il grado dell associazione è 2 8
La partecipazione può essere: obbligatoria: il legame tra le entità deve essere sempre presente facoltativa: il legame tra le entità può essere presente PERSONA POSSEDERE 1 1 CODICE FISCALE SPETTATORE Regole di lettura: OCCUPARE 1 1 POSTO Una persona possiede un codice fiscale (deve necessariamente possedere) e un codice fiscale è posseduto (deve necessariamente essere posseduto) da una persona. Uno spettatore occupa un posto (deve necessariamente occupare) e un posto può essere occupato (e quindi non necessariamente) da uno spettatore 9
La molteplicità o cardinalità rappresenta il numero di possibili istanze di una entità che viene messo in corrispondenza con un istanza dell altra entità. Esistono quindi tre tipi di associazioni: 1: 1 (uno a uno) o biunivoca 1: N (uno a molti) o semplice N : M (molti a molti) o complessa 10
LE ASSOCIAZIONI TRA ENTITA Associazione 1:1 Ogni istanza della prima entità si associa a una sola istanza della seconda entità e viceversa. Esempi: l associazione Conseguire tra l entità Studente e l entità Diploma di una scuola superiore; l associazione Coordinare tra l entità Docente e l entità Classe I docenti coordinano una sola classe e ve ne sono alcuni che non coordinano (partecipazione facoltativa). Ogni classe invece, ha un coordinatore. 11
LE ASSOCIAZIONI TRA ENTITA Associazione 1:N Ogni istanza della prima entità si può associare a una o più istanze della seconda entità, mentre a ogni istanza della seconda entità si deve associare una sola istanza della prima. Esempi: l associazione Eseguire tra un Artista e le sue Opere; l associazione Svolgere tra l entità Studente e l entità Prova; l associazione Effettuare nella gestione dei movimenti su un conto corrente. Ogni conto può effettuare una o più operazioni ma ogni movimento deve riferirsi a un solo conto corrente. Può avvenire però che per uno o più conti correnti non vi sia un operazione di movimento corrispondente (partecipazione facoltativa). 12
LE ASSOCIAZIONI TRA ENTITA Associazione N:N Ogni istanza della prima entità si può associare a una o più istanze della seconda entità e ogni istanza della seconda entità si può associare ad una o più istanze della prima entità. Esempi: l associazione Insegnare tra l entità Docente e l entità Classe; l associazione Viaggiare tra l entità Passeggero e l entità Volo. Un docente può insegnare in una o più classi e in una classe insegnano più docenti. Può accadere che qualche docente non insegni in nessuna classe (esempio bibliotecaria) e ciò determina una partecipazione facoltativa dell entità docente. 13
Associazione N:N (molti a molti) Consideriamo l associazione Valutare tra l entità Studente e l entità Materia: STUDENTE Valutare MATERIA Codstud Cognome Nome Datanascita Classe N Dataverifica Voto N Codmateria Nome L associazione Valutare è di fatto costituita dalla Prova (oggetto della valutazione) che ha come attributi la data e il voto della verifica. Quindi l associazione N:N viene scissa in due associazioni 1:N. 14