Progettazione concettuale 1 persona Ente lavora in impiegatodatore.

Slides:



Advertisements
Presentazioni simili
La progettazione concettuale
Advertisements

Informatica II – Basi di Dati (08/09) – Parte 1
Sistemi Informativi di Rete AA (IV) Progettazione di siti Web: un approccio per Entita e Relazioni.
IL MODELLO ENTITÀ-RELAZIONE Gli altri costruttori
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
IL MODELLO ENTITA’ - RELAZIONE I costruttori di base
LA PROGETTAZIONE LOGICA Seconda parte
LA PROGETTAZIONE CONCETTUALE Seconda parte
Analisi e progettazione
Progettazione concettuale
Il Sistema Informativo Le Informazioni come elemento di base per il raggiungimento degli obiettivi aziendali Mario Capurso
1 Sistemi per il recupero delle informazioni PARTE - III COME SI MODELLA.
Progettazione Concettuale: Il modello Entità-Relazioni
4 – Progettazione – Introduzione e Modello E-R
5 – Progettazione Concettuale
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Relazioni Relazione: Associazione o legame logico esistente tra due o più entità Socio Prenota Campo.
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
DIFFICOLTA’ DEL LINGUAGGIO
L’uso dei database in azienda
PROGETTI DI SISTEMI INFORMATIVI DIREZIONALI
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
LA PROGETTAZIONE LOGICA
Unità Didattica 2 I Linguaggi di Programmazione
Modello E-R Generalizzazioni
Progettazione di una base di dati
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Strategia bottom-up Nella strategia bottom-up le specifiche iniziali sono suddivise in componenti via via sempre più piccole, fino a descrivere frammenti.
Modello E-R Generalizzazioni
_ ___ _ ______ _ _ _________.
Motivazione allo studio
Gerarchia delle funzioni e modello FH
Area BASE Modulo Base - Controparti. Area BASE Modulo Base - Controparti Il Modulo BASE contiene le funzioni e i 3 gruppi di archivi utilizzati in comune.
Esercitazione a cura di Roberto Savino
Basi di Dati e Sistemi Informativi
Progettare un database
Corso di Basi di Dati Progettazione di Basi di Dati
Progettazione Concettuale: Strategie di Progettazione
Basi di Dati e Sistemi Informativi
Basi di Dati e Sistemi Informativi
. STUDIARE IN L2 Strazzari.
Esercitazioni di Ingegneria del Software con UML
Modulo 5 DataBase ACCESS. Informazioni e Dati INFORMAZIONI vengono scambiate con linguaggio scritto o parlato DATI rappresentazione di informazioni in.
Modellazione dei Dati Fabio Scanu a.s. 2012/2013.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Strazzari STUDIARE IN L2.. Strazzari All’alunno straniero occorrono : 2 anni circa per acquisire la competenza comunicativa interpersonale 5 anni circa.
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Progettazione di basi di dati: metodologie e modelli
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
Fasi di sviluppo di un software
Metodologie e modelli per il progetto. 2 Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Eprogram informatica V anno.
Cloud informatica V anno.
Le basi di dati.
Progettazione concettuale Castagnozzi Savino Ciaramello Massimo Emiliano Galeazzi Federico Guerriero Lorenzo Macauda Giorgio.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
DDBMS Distributed database system. DDB Una base di dati distribuita è una collezione di dati che appartengono logicamente allo stesso sistema informativo.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Transcript della presentazione:

Progettazione concettuale 1 persona Ente lavora in impiegatodatore

requisiti del Sistema informativo progettazione concettuale progettazione logica progettazione fisica SCHEMA LOGICO SCHEMA CONCETTUALE

Progettazione concettuale3 Analisi dei requisiti e progettazione concettuale ("Analisi dei dati")  Comprende attività (interconnesse) di acquisizione dei requisiti analisi dei requisiti costruzione dello schema concettuale costruzione del glossario dei termini Partecipante Impiego passato Dipendente Professionista Datore Impiego corrente

Progettazione concettuale4 Raccolta dei requisiti  E’ la fase in cui si individuano i problemi che l’applicazione da realizzare deve risolvere le caratteristiche che tale applicazione dovrà avere: aspetti statici (dati) aspetti dinamici (operazioni sui dati)

Progettazione concettuale5 Analisi dei requisiti  Inizialmente i requisiti sono raccolti in linguaggio naturale e sono spesso ambigue e disorganizzate  L’analisi dei requisiti consiste nel chiarimento e nell’organizzazione delle specifiche dei requisiti

Progettazione concettuale6 Requisiti  Possibili fonti diversificate tra loro, per l’acquisizione dei requisiti: utenti, attraverso: interviste documentazione scritta apposita documentazione esistente: normative (leggi, regolamenti di settore) regolamenti interni, procedure aziendali modulistica realizzazioni preesistenti: applicazioni da rimpiazzare o che devono interagire con il software da realizzare

Progettazione concettuale7 Acquisizione e analisi dei requisiti  Il reperimento dei requisiti è un'attività difficile e non standardizzabile  l'attività di analisi inizia con i primi requisiti raccolti e spesso indirizza verso altre acquisizioni; spesso procede parallelamente alla realizzazione dello schema E-R

Progettazione concettuale8 Acquisizione per interviste con gli utenti utenti diversi possono fornire informazioni diverse utenti a livello più alto hanno spesso una visione più ampia ma meno dettagliata le interviste portano spesso ad una acquisizione dei requisiti “per raffinamenti successivi”

Progettazione concettuale9 Interazione con gli utenti  Spunti: effettuare spesso verifiche di comprensione e coerenza sulle informazioni raccolte verificare anche per mezzo di esempi (generali e relativi a casi limite) richiedere definizioni e classificazioni far evidenziare gli aspetti essenziali rispetto a quelli marginali

Un esempio

Progettazione concettuale13 Requisiti: documentazione descrittiva  Regole generali: scegliere il corretto livello di astrazione standardizzare la struttura delle frasi suddividere le frasi articolate separare le frasi sui dati da quelle sulle funzioni

Progettazione concettuale14 Glossario dei termini, omonimi e sinonimi  Raramente i requisisti espressi in linguaggio naturale sono privi di ambiguità. È infatti frequente il caso di Omonimi: lo stesso termine viene usato per descrivere concetti differenti (es: libro e copia di libro, posto di lavoro e geografico) Sinonimi: termini diversi vengono usati per descrivere lo stesso concetto (es: studente e partecipante)  Un modo conveniente per rappresentare i concetti più rilevanti emersi dall’analisi è il glossario dei termini, il cui scopo è fornire per ogni concetto rilevante: Una breve descrizione del concetto Eventuali sinonimi Relazioni con altri concetti del glossario stesso

Progettazione concettuale15 Requisiti: organizzazione di termini e concetti  Regole generali costruire un glossario dei termini individuare omonimi e sinonimi e unificare i termini rendere esplicito il riferimento fra termini riorganizzare le frasi per concetti

Progettazione concettuale16 Glossario dei termini

Progettazione concettuale17 Ristrutturazione dei requisiti  Oltre a costruire il glossario, per semplificare le analisi successive, è utile riformulare i requisiti: Eliminare le omonimie Usare un termine univoco per ogni concetto Riorganizzare le frasi raggruppandole in base al concetto cui si riferiscono Nell’esempio: Frasi di carattere generale Frasi riferite ai partecipanti Frasi riferite ai docenti Frasi riferite ai corsi Frasi riferite alle società

Progettazione concettuale18 Strutturazione dei requisiti in gruppi di frasi omogenee

Progettazione concettuale19

Progettazione concettuale21

Progettazione concettuale22

Progettazione concettuale23 Operazioni sui dati  E' importante raccogliere specifiche sulle operazioni da effettuare sui dati Utilizzando le stessa terminologia usata per i dati Descrivendo la frequenza con la quale le varie operazioni sono eseguite

Progettazione concettuale24 Operazioni sulla società di formazione 1.Inserisci un nuovo partecipante indicando tutti i suoi dati (40/giorno) 2.Assegna un partecipante a una edizione di corso (50/giorno) 3.Inserisci un nuovo docente indicando dati e corsi che può insegnare (2/giorno) 4.Assegna un docente abilitato a una edizione di corso (15/giorno) 5.Stampa tutte le informazioni sulle edizioni passate di un corso, con titolo, orari, lezioni e numero partecipanti (10/giorno) 6.Stampa tutti i corsi offerti, con informazioni sui docenti che possono insegnarli (20/giorno) 7.Per ogni docente, trova i partecipanti a tutti i corsi da lui insegnati (5/settimana) 8.Effettua una statistica su tutti i partecipanti a un corso, con tutte le informazioni su di essi, sulla edizione a cui hanno partecipato, e la rispettiva votazione (10/mese)

Progettazione concettuale25 Criteri di rappresentazione  Quale costrutto E-R va utilizzato per rappresentare un concetto presente nelle specifiche informali?  Bisogna basarsi sulle definizioni dei costrutti del modello E-R

Progettazione concettuale26 Trasformazione in schema E-R

Progettazione concettuale27 Strategie di progetto top-down: si parte da uno schema iniziale molto astratto ma completo, che viene successivamente raffinato fino ad arrivare allo schema finale top-down bottom-up: si suddividono le specifiche in modo da sviluppare semplici schemi parziali ma dettagliati, che poi vengono integrati tra loro bottom-up inside-out: lo schema si sviluppa “a macchia d’olio”, partendo dai concetti più importanti, aggiungendo quelli a essi correlati, e così via inside-out

Progettazione concettuale28 Strategia top-down Specifiche Schema iniziale Schema intermedio Schema finale

Progettazione concettuale29 Primitive di raffinamento top-down  Entità  Gerarchia di entità Persona Uomo Donna

 Entità  Entità e associazioni Esame StudenteCorso  Entità  Entità e attributi Impiegato CognomeEtà Stipendio Impiegato

 Associazioni  Entità e associazioni in Dipendente Dipartimento lavora con Dipendente Dirigente Dipartimento dirige Di Persona Città vive Persona nata Città  Associazioni  Più associazioni

Realizzazione di uno schema concettuale con applicazione delle primitive di raffinamento top-down Esame StudenteCorso Persona Uomo Donna Impiegato CognomeEtà Stipendio Impiegato

Progettazione concettuale33 Strategia bottom-up Specifiche Specifiche 2Specifiche 1 Specifiche 1,1 Specifiche 1,2 Specifiche 2,1 Specifiche 2,2 Schema 1,1 Schema 1,2 Schema 2,1 Schema 2,2 Schema finale

Progettazione concettuale34  Specifiche su concetto  Nuova entità Studente.. per gli studenti (circa 5000), identificati da un codice, si vuole memorizzare il codice fiscale, il cognome, l'età, il sesso, il luogo di nascita specifica su studente Primitive di raffinamento bottom-up

 Entità isolate  Gerarchia di generalizzazione Dipendente Persona Dipendente Dirigente Studente Esame StudenteCorso  Entità isolate  Associazioni tra le entità

Realizzazione dello schema con l’applicazione delle primitive di raffinamento Bottom-up StudenteCorso Persona Uomo Donna Impiegato Specifica su impiegato Esame StudenteCorso Persona Uomo Donna

Progettazione concettuale37 Un esempio già visto… Si vuole modellare il sistema informativo di un’azienda con sedi dislocate in diverse città. Gli impiegati dell’azienda sono identificati da un codice e afferiscono a un dipartimento (a partire da una certa data). Ogni dipartimento ha un nome, un direttore e un numero di telefono ed è dislocato su una sola sede, di cui è noto l’indirizzo. Gli impiegati partecipano a diversi progetti, che sono caratterizzati da un nome, un budget e una data di consegna.

…modellato con strategia inside-out Telefono Data (1,1) (0,1) (1,N) (0,1) (1,N) Dipartimento Direzione Afferenza NomeBudget (0,N) (1,N) Progetto Partecipazione Cognome Codice Impiegato (1,1) Città Composizione Sede Nome Via CAP (1,N) Indirizzo

a) si individuano i concetti principali e si realizza uno schema scheletro Strategia mista Si organizzano i concetti più importanti in un semplice schema concettuale

b) Sulla base dello schema scheletro si può decomporre, raffinare, espandere, integrare

c) Analisi di qualità dello schema ed eventuale ristrutturazione

Progettazione concettuale42 Vantaggi della strategia mista  E' la più flessibile tra le strategie, si adatta a esigenze contrapposte: Suddividere un problema complesso in sottoproblemi Procedere per raffinamenti successivi  In tutti i casi pratici di una certa complessità, la strategia mista è l'unica che si può effettivamente adottare

Progettazione concettuale43 Qualità di uno schema concettuale correttezza: uno schema E-R è corretto quando utilizza propriamente i costrutti messi a disposizione dal modello E-R. Possono esserci: - errori sintattici (uso non ammesso di costrutti) - errori semantici (uso di costrutti che non rispetta la definizione) completezza: uno schema E-R è completo quando rappresenta tutti i dati di interesse e tutte le operazioni possono essere eseguite a partire dai concetti descritti dallo schema

Progettazione concettuale44 leggibilità: uno schema E-R è leggibile quando rappresenta tutti i dati in maniera naturale e comprensibile minimalità: uno schema E-R è minimale quando tutte le specifiche sui dati sono rappresentate una sola volta nello schema  uno schema non è minimale quando esistono delle ridondanze, cioè concetti che possono essere derivati da altri.  Non sempre una ridondanza è indesiderata, ma può nascere da precise scelte progettuali

Progettazione concettuale45 Un esempio di progettazione concettuale Società di formazione

Progettazione concettuale46 Partecipante Corso Docente Partecipazione Docenza Schema scheletro

Progettazione concettuale47

Progettazione concettuale48 Raffinamento di partecipante CF Codice ….. Partecipante

Posizione Livello Titolo prof. Area Partecipante CF Codice ….. Impiego passato (0,N) Dipendente Professionista Datore Nome ….. Impiego corrente (0,N) (1,1)

Progettazione concettuale51

(1,N) (1,1) Composizione Tipologia (1,1) (0,N) Corso N.Part. Data fine Data inizio Edizione corso OrarioAula Giorno Lezione Titolo Codice

Progettazione concettuale53

Progettazione concettuale54 Docente Collaboratore Interno CF Cognome Età Telefono Città nascita (1,N) Raffinamento di docente

Progettazione concettuale55 Partecipante Corso Docente Partecipazione Docenza Integrazione

Progettazione concettuale56 Partecipazione Partecipante Corso partecipazione passata (0,N) partecipazione corrente (0,1) (0,N) Partecipante Edizione corso Integrazione: partecipante e corso

Docenza Corso Docente Abilitazione (1,N) Tipologia Corso CodiceTitolo Data inizio (0,N) (1,1) Docenza Edizione corso Docente Docenza passata (0,N) (0,1) Docenza corrente (0,1) Integrazione: docente e corso

Esercizio l Si vuole rappresentare la base di dati di un archivio fotografico distribuito in varie sedi.  Le foto hanno un titolo, una descrizione, una dimensione, uno stato di conservazione, una data e, quando noto, un autore; per le foto a colori, è indicato il tipo di stampa (chiaro o opaco). Le foto sono reperibili in archivi, di cui è registrato il responsabile (dati anagrafici, recapito, ) e l’indirizzo web.  Le fotografie appartengono a una categoria e possono riprendere uno o più soggetti (personaggi, luoghi, oggetti, opere d’arte...). Ciascun soggetto ha una propria chiave. I personaggi rappresentati hanno un nome e un sesso, data e luogo di nascita ed (eventualmente) morte. Per i personaggi politici, si indica il partito di appartenenza e l’eventuale carica governativa ricoperta. Per gli artisti, si indica la loro attività prevalente (pittura, scultura, musica,...).  Quando le foto descrivono opere artistiche, è noto il nome dell’opera d’arte, l’artista che l’ha realizzata, il luogo dove l’opera risiede e l’anno di realizzazione. Quando le foto descrivono luoghi sono indicate le coordinate geografiche (nazione, città, via...) e una descrizione.

Esercizio l Una società multinazionale che produce abbigliamento sportivo ha sedi in diversi paesi.  Le sedi della società sono identificate in modo univoco da un codice identificativo e sono caratterizzate da un indirizzo, da un numero di telefono e dal nominativo del responsabile. Le sedi sono suddivise in magazzini, centri di produzione e sedi di vendita al minuto.  I magazzini, caratterizzati da un loro ulteriore codice e dal numero di addetti, riforniscono i negozi in franchising (dunque non di proprietà della società). I negozi in franchising si riforniscono unicamente dal magazzino più vicino.  I centri di produzione sono caratterizzati dal numero di addetti e dalla capacità produttiva (in unità al giorno) relativa ai singoli prodotti.  Le sedi di vendita al minuto sono caratterizzate da un fatturato medio e da un elenco dei prodotti disponibili a magazzino, con relative giacenze. I negozi e le sedi di vendita al minuto vendono i loro prodotti ai clienti (che sono identificati da un codice) senza alcun rapporto esclusivo.  Per ogni transazione di vendita (sia al minuto che tra magazzini e negozi in franchising) devono essere registrate i prodotti venduti (e relative quantità), la data di vendita e il totale della transazione.