• Non ci sono risultati.

progettazione concettuale

N/A
N/A
Protected

Academic year: 2021

Condividi "progettazione concettuale"

Copied!
41
0
0

Testo completo

(1)

A. Ferrari

progettazione concettuale

informatica

(2)

A. Ferrari

le fasi

definizione dei bisogni degli

utenti

definizione dei requisiti

progettazione concettuale progettazione

logico/fisica

(3)

A. Ferrari

obiettivo

o la “progettazione concettuale” ha l’obiettivo di

riorganizzare tutti gli elementi risultanti dalla fase di

“definizione dei requisiti” per produrre un modello astratto della base di dati

(4)

A. Ferrari

modello concettuale

o il modello concettuale è un documento ufficiale

o di riferimento per i committenti

o di comunicazione verso i progettisti della fase successiva di progettazione logica.

(5)

A. Ferrari

linguaggi

o per realizzare il modello concettuale si possono

utilizzare vari linguaggi (di solito di natura grafica)

o UML (Unified Modeling Language) o Diagrammi E/R

(Entity Relationship) (Entità Associazioni)

(6)

A. Ferrari

diagrammi E/R

o 1976 Peter P. Chen.

o modello grafico per descrizione dei dati e delle loro relazioni.

o modello concettuale indipendente dalla realizzazione.

(7)

A. Ferrari

elementi del diagramma

o entità

o rappresentano classi di oggetti (fatti, cose, persone, ...) che hanno proprietà comuni ed esistenza autonoma ai fini

dell'applicazione di interesse

o associazioni

o le associazioni (dette anche relazioni) rappresentano un legame tra due o più entità

o attributi

o le entità e le associazioni possono essere descritte usando una serie di attributi

o tutti gli oggetti della stessa classe entità (associazione) hanno gli stessi attributi

(8)

A. Ferrari

entità

o le entità corrispondono a classi di oggetti del mondo reale e vengono rappresentate graficamente con un riquadro che contiene il nome

o in uno schema, ogni entità ha un nome che la identifica univocamente

<nome entità> Studente

(9)

A. Ferrari

attributi

• proprietà elementari delle entità:

– nome

– formato (tipo di dato) – dimensione

– valore

– opzionalità

(obbligatorio/facoltativo)

• la scelta degli attributi riflette il livello di

dettaglio con il quale

vogliamo rappresentare le informazioni sulle entità e sulle associazioni

<attributo 1>

<attributo 2>

<attributo 3>

<nome entità>

Nome Classe

Studente

(10)

A. Ferrari

attributi composti

o gli attributi composti o aggregati sono costituiti dall’aggregazione di altri attributi

o esempio:

o dati anagrafici o indirizzo

(11)

A. Ferrari

attributi multipli

o elenco di lunghezza variabili di attributi dello stesso tipo

o esempio:

o sport praticati o voti ottenuti

(12)

A. Ferrari

chiave

o insieme di attributi che identificano in modo univoco una entità

o possono esistere più chiavi (chiavi candidate) o esiste sempre almeno una chiave

(al limite costituita da tutti gli attributi)

o è opportuno scegliere come chiave un sottoinsieme il più ridotto possibile degli attributi

o possono esistere chiavi artificiali

o gli attributi chiave vengono rappresentati sottolineati

(13)

A. Ferrari

associazioni

o l’associazione (relationship) è un legame fra due entità

o un’associazione fra due entità ha due versi

o normalmente si utilizzano sostantivi per le entità e verbi per le associazioni

o viene rappresentata graficamente da un rombo contenente il nome dell'associazione

(14)

A. Ferrari

associazione: esempio

(15)

A. Ferrari

associazioni binarie

<associazione> <entità 1>

<entità 2>

(16)

A. Ferrari

associazioni binarie:

esempio

Appartiene Classe

Studente

(17)

A. Ferrari

associazioni multiple

<associazione>

<entità 2>

<entità 1>

<entità 3>

(18)

A. Ferrari

associazioni multiple:

esempio

Fa lezione

Classe Docente

Aula

(19)

A. Ferrari

associazioni unarie

<associazione> <entità>

(20)

A. Ferrari

associazioni unarie:

esempio

E’ genitore Persona

(21)

A. Ferrari

esempio

(22)

A. Ferrari

più associazioni fra entità

Risiede

Città Persona

E’ nata

(23)

A. Ferrari

associazioni 1:1

o una istanza dell’entità A corrisponde a una sola istanza dell’entità B e viceversa

Possiede Tastiera

Computer

1 1

(24)

A. Ferrari

associazioni 1:n

o uno a molti

o una istanza dell’entità A corrisponde a più istanze dell’entità B

o una istanza dell’entità B corrisponde a una sola istanza dell’entità A

Possiede DiscoFisso

Computer

1 n

(25)

A. Ferrari

associazioni n:n

o molti a molti

o una istanza dell’entità A corrisponde a più istanze dell’entità B

o una istanza dell’entità B corrisponde a più istanze dell’entità A

StampaSu StampanteDiRete

Computer

n n

(26)

A. Ferrari

esempio

(27)

A. Ferrari

altra notazione

(non è uno schema concettuale)

(28)

A. Ferrari

esempio: diagramma E/R

(29)

A. Ferrari

esempio: altra notazione

(30)

A. Ferrari

totale / parziale

o totale se ogni elemento fa parte dell’associazione

o linea continua

o parziale se alcuni elementi non ne fanno parte

o linea tratteggiata

Possiede Monitor

Computer

(31)

A. Ferrari

regole di lettura (1)

Possiede Monitor

Computer

1 1

un computer possiede un monitor, un monitor è collegato a un computer

Possiede Monitor

Computer

1 1

un computer può possedere un monitor, un monitor è collegato a un computer

(32)

A. Ferrari

regole di lettura (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

(33)

A. Ferrari

regole di lettura (3)

Stampa StampanteDiRete

Computer

n n

un computer stampa su una o più stampanti,

una stampante riceve stampe da uno o più computer

Stampa StampanteDiRete

Computer

n n

un computer può stampare su una o più stampanti, una stampante riceve stampe da uno o più computer

(34)

A. Ferrari

esempio errato

Stampa StampanteDiRete

Computer

1 n

un computer può stampare su una o più stampanti di rete,

una stampante di rete riceve stampe da un computer (uno solo!) la lettura dello schema evidenzia l’errore di progettazione

(35)

A. Ferrari

gerarchie ISA

• astrazione per generalizzazione

• ISA (is a) (è un)

• nell’esempio un Mac è un Computer

Computer

PC Mac

(36)

A. Ferrari

vincoli d’integrità

o asserzioni che devono essere soddisfatte

o vincoli impliciti (imposti dalla struttura dei dati):

o univocità di chiave primaria

o vincoli sulla totalità delle associazioni

o vincoli espliciti:

o V1: 0<Età<120

o V2: anno(Dipendente.DataAssunzione - Dipendente.DataNascita)>16

(37)

A. Ferrari

(38)

A. Ferrari

esempio

(39)

A. Ferrari

software per diagrammi E/R

o on line

o https://www.draw.io/

o http://creately.com/

o http://my.lovelycharts.com/

o da scaricare

o http://dia-installer.de/

o http://www.ballini.it/Software/ProgER/

(40)

A. Ferrari

esercizio

o un albergo di una grande città intende gestire in modo

automatizzato le prenotazioni e realizzare una base di dati o ogni cliente viene individuato con i dati anagrafici, il

numero di telefono e l'eventuale e-mail

o per le prenotazioni occorre indicare il periodo, i dati relativi alle persone che soggiorneranno, il numero di camera

assegnato, l'eventuale disdetta, il tipo di trattamento

o mezza pensione (Half Board, HB),pensione completa (Full Board, FB), pernottamento e prima colazione (Bed & Breakfast, B&B)

realizzare lo schema concettuale con le relative regole di lettura

(41)

A. Ferrari

esercizio

o l'ufficio della Motorizzazione civile mantiene un

registro di tutte le automobili italiane con i relativi proprietari

o una persona può possedere più automobili, ma una singola automobile può anche appartenere a più persone

o e un registro storico delle patenti rilasciate nel quale sono comprese anche le patenti ormai scadute ed

eventualmente rinnovate con altro codice

realizzare lo schema concettuale con le relative regole di lettura

Riferimenti

Documenti correlati

Considerando che l’operazione di lettura richiede necessariamente anche l’invio dell’indirizzo, si può dire che il minimo tempo necessario per avere il dato a disposizione è

progressivo nella giornata (es. prima partita, seconda partita, ecc), la data, con giorno , mese e anno, le squadre coinvolte nella partita, con nome, città della squadra

• Eseguito dall'applicazione (SW) – richiede algoritmi e strutture dati appositi – ogni cull può essere oneroso (overhead) – ma scarta primitive presto presto presto presto e

Per i partecipanti (circa 5000), identi cati da un codice, si vuole memorizzare il codice scale, il cognome, l'eta, il sesso, il luogo di nascita, il nome delle societa per le

Per Mac Os X 10.5 e precedenti scaricare la versione 2.1 per 10.6 e successivi la versione 2.3 Importante: non utilizzare il driver integrato nel sistema operativo. Installarlo;

Tuttavia, ho effettuato i conti contemporaneamente su un numero esponenzialmente grande di sequenze di zeri e uni (

Sono servizi disponibili on line, cioè su internet, molto utili a chi lavora, a chi ha dei figli a scuola, a chi vuole parlare con il servizio

Dunque con la realizzazione di processori su Circuiti Integrati Dunque con la realizzazione di processori su Circuiti Integrati viene evidenziata agli inizi degli anni ’80