proge(azioneconce(uale - alberto ferrari · 1 proge(azione"conce(uale"...
Post on 18-Jun-2020
7 Views
Preview:
TRANSCRIPT
1
Proge(azione conce(uale
A. Ferrari
Le fasi
Definizione dei bisogni degli uten;
Definizione dei requisi;
Proge(azione conce(uale
Proge(azione logico/fisica
Obie?vo
• La “proge(azione conce(uale” ha l’obie?vo di riorganizzare tu? gli elemen; risultan; dalla fase di “definizione dei requisi;” per produrre un modello astra(o della base di da;.
Il modello conce(uale
• Il modello conce(uale è un documento ufficiale – di riferimento per i commi(en; – di comunicazione verso i proge?s; della fase successiva di proge(azione logica.
Linguaggi
• Per realizzare il modello conce(uale sono u;lizza; vari linguaggi, per lo più di natura grafica – UML (Unified Modeling Language) – Diagrammi E/R (En;ty Rela;onship) (En;tà Associazioni)
Diagrammi E/R
• 1976 Peter P. Chen. • Modello grafico per descrizione dei da; e delle loro relazioni.
• Modello conce(uale indipendente dalla realizzazione.
2
Gli elemen; del diagramma • En;tà – Rappresentano classi di ogge? (fa?, cose, persone, ...) che hanno proprietà comuni ed esistenza autonoma ai fini dell'applicazione di interesse
• Associazioni – Le associazioni (de(e anche relazioni) rappresentano un legame tra due o più en;tà
• A(ribu; – Le en;tà e le associazioni possono essere descri(e usando una serie di a(ribu;. Tu? gli ogge? della stessa classe en;tà (associazione) hanno gli stessi a(ribu;
En;tà
• Le en;tà corrispondono a classi di ogge? del mondo reale e vengono rappresentate graficamente con un riquadro che con;ene il nome.
• In uno schema, ogni en;tà ha un nome che la iden;fica univocamente.
<nome en;tà> Studente
A(ribu; • Proprietà elementari delle
en;tà: – Nome – Formato (;po di dato) – Dimensione – Valore – Opzionalità (obbligatorio/
facolta;vo) • La scelta degli a(ribu;
rifle(e il livello di de(aglio con il quale vogliamo rappresentare le informazioni sulle en;tà e sulle associazioni
<a(ributo 1>
<a(ributo 2>
<a(ributo 3>
<nome en;tà>
Nome
Classe Studente
A(ribu; compos;
• Gli a(ribu; compos; o aggrega; sono cos;tui; dall’aggregazione di altri a(ribu;.
• Esempio: – Da; anagrafici – Indirizzo
A(ribu; mul;pli
• Elenco di lunghezza variabili di a(ribu; dello stesso ;po.
• Esempio: – Sport pra;ca; – Vo; o(enu;
Chiave
• Insieme di a(ribu; che iden;ficano in modo univoco un’en;tà – Possono esistere più chiavi. – Esiste sempre almeno una chiave (al limite cos;tuita da tu? gli a(ribu;).
– È opportuno scegliere come chiave un so(oinsieme il più rido(o possibile degli a(ribu;.
– Possono esistere chiavi ar;ficiali. • Gli a(ribu; chiave vengono rappresenta; so(olinea;
3
Associazioni
• L’associazione (rela;onship) è un legame fra due en;tà
• Un’associazione fra due en;tà ha due versi • Normalmente si u;lizzano sostan;vi per le en;tà e verbi per le associazioni
• Viene rappresentata graficamente da un rombo contenente il nome dell'associazione
Associazione: esempio
Associazioni binarie
<associazione> <en;tà 1> <en;tà 2>
Associazioni binarie esempio
Appar;ene Classe Studente
Associazioni mul;ple
<associazione>
<en;tà 1> <en;tà 2>
<en;tà 1>
Associazioni mul;ple esempio
Fa lezione
Classe Docente
Aula
4
Associazioni unarie
<associazione> <en;tà>
Associazioni unarie esempio
E’ genitore Persona
Esempio sul libro Più associazioni fra en;tà
Risiede
Ci(à Persona
E’ nata
Associazioni 1:1
• Una istanza dell’en;tà A corrisponde a una sola istanza dell’en;tà B e viceversa.
Possiede Tas;era Computer 1 1
Associazioni 1:n
• Uno a mol; • Una istanza dell’en;tà A corrisponde a più istanze dell’en;tà B e una istanza dell’en;tà B corrisponde a una sola istanza dell’en;tà A .
Possiede DiscoFisso Computer 1 n
5
Associazioni n:n
• Mol; a mol; • Una istanza dell’en;tà A corrisponde a più istanze dell’en;tà B e una istanza dell’en;tà B corrisponde a più istanze dell’en;tà A .
StampaSu StampanteDiRete Computer n n
Esempio sul libro
Altra Notazione (non è uno schema conce(uale) Altro esempio
Altra notazione Totale/Parziale
• Totale se ogni elemento fa parte dell’associazione – Linea con;nua
• Parziale se alcuni elemen; non ne fanno parte – Linea tra(eggiata
Possiede Monitor Computer
6
Regole di le(ura (1)
Possiede Tas;era Computer 1 1
Un computer possiede un monitor, un monitor è collegato a un computer
Possiede Tas;era Computer 1 1
Un computer può possedere un monitor, un monitor è collegato a un computer
Regole di le(ura (2)
Possiede DiscoFisso Computer 1 n
Un computer possiede uno o più dischi fissi, un disco è collegato a un computer
Possiede DiscoFisso Computer 1 n
Un computer può possedere uno o più dischi fissi, un disco è collegato a un computer
Regole di le(ura (3)
Stampa StampanteDiRete Computer n n
Un computer stampa su una o più stampan;, una stampante riceve stampe da uno o più computer
Stampa StampanteDiRete Computer n n
Un computer può stampare su una o più stampan;, una stampante riceve stampe da uno o più computer
esempio errato
Stampa StampanteDiRete Computer 1 n
Un computer può stampare su una o più stampan; di rete, una stampante di rete riceve stampe da un computer (uno solo!) La le(ura dello schema evidenzia l’errore di proge(azione
Gerarchie ISA
• Astrazione per generalizzazione
• ISA (is a) (è un) • Nell’esempio un Mac è un Computer
Computer
PC Mac
Vincoli d’integrità
• Asserzioni che devono essere soddisfa(e. • Vincoli implici; (impos; dalla stru(ura dei da;): – Univocità di chiave primaria – Vincoli sulla totalità delle associazioni
• Vincoli esplici;: – V1: 0<Età<120 – V2: anno(Dipendente.DataAssunzione -‐Dipendente.DataNascita)>16
7
Esempio sul libro
Solware per diagrammi E/R
• On line – h(ps://www.draw.io/ – h(p://creately.com/ – h(p://my.lovelycharts.com/
• Da scaricare – h(p://dia-‐installer.de/ – h(p://www.ballini.it/Solware/ProgER/
Esercizio sul libro • Un albergo di una grande ci(à intende ges;re in modo automa;zzato le prenotazioni e realizzare una base di da;. Ogni cliente viene individuato, tra l'altro con i da; anagrafici, il numero di telefono e l'eventuale e-‐mail. Per quanto riguarda le prenotazioni occorre indicare il periodo, i da; rela;vi alle persone che soggiorneranno, il numero di camera assegnato, l'eventuale disde(a, il ;po di tra(amento: mezza pensione (Half Board, HB),pensione completa (Full Board, FB), perno(amento e prima colazione (Bed & Breakfast, B&B).
• Realizzare lo schema conce(uale con le rela;ve regole di le(ura
Esercizio sul libro • L'ufficio centrale della Motorizzazione civile man;ene un registro di tu(e le automobili italiane coni rela;vi proprietari (una persona può possedere più automobili, ma una singola automobile può anche appartenere a più persone) e un registro storico delle paten; rilasciate nel quale sono comprese anche le paten; ormai scadute ed eventualmente rinnovate con altro codice.
• Realizzare lo schema conce(uale con le rela;ve regole di le(ura
top related