|
|
- Raimonda Bucci
- 8 anni fa
- Visualizzazioni
Transcript
1 Sommario Ing. Gianluca Di Tomassi Sito Web: Sistemi informativi e sistemi informatici Metodologie e modelli per il progetto Progettazione di una base di dati Un modello concettuale: Il Modello E-R (1976) Progettazione concettuale Un modello logico: Il modello relazionale DataWarehouse Processi aziendali e sistemi informativi OLTP e OLAP Data warehouse e data warehousing Architetture per il warehousing Analisi multidimensionale 2 Sistema informativo Componente (sottosistema) di una organizzazione che gestisce (acquisisce, elabora, conserva, produce) le informazioni di interesse (cioè utilizzate per il perseguimento degli scopi dell organizzazione ) ogni organizzazione ha un sistema informativo, eventualmente non esplicitato nella struttura; Sistema organizzativo insieme di risorse e regole per lo svolgimento coordinato delle attività al fine del perseguimento degli scopi il sistema informativo è parte del sistema organizzativo il sistema informativo esegue/gestisce processi informativi (cioè i processi che coinvolgono informazioni) quasi sempre, il sistema informativo è di supporto ad altri sottosistemi, e va quindi studiato nel contesto in cui è inserito il sistema informativo è di solito suddiviso in sottosistemi (in modo gerarchico o decentrato), più o meno fortemente integrati 3 4
2 Risorse Risorse: Informazioni Le risorse di una azienda (o amministrazione): persone denaro materiali informazioni 5 6 Risorse: Informazioni Sistemi informativi e automazione Il concetto di sistema informativo è indipendente da qualsiasi automatizzazione: esistono organizzazioni la cui ragion d essere è la gestione di informazioni (p. es. servizi anagrafici e banche) e che operano da secoli. Anche prima di essere automatizzati, molti sistemi informativi si sono evoluti verso una razionalizzazione e standardizzazione delle procedure e dell organizzazione delle informazioni 7 8
3 Sistema Informatico Gestione delle informazioni Porzione automatizzata del sistema informativo: la parte del sistema informativo che gestisce informazioni con tecnologia informatica Sistema azienda Sistema organizzativo Sistema informativo Sistema informatico Nelle attività umane, le informazioni vengono gestite (registrate e scambiate) in forme diverse: idee informali linguaggio naturale (scritto o parlato, formale o colloquiale, in una lingua o in un altra) disegni, grafici, schemi numeri e codici e su vari supporti memoria umana, carta, dispositivi elettronici 9 10 Gestione delle informazioni Nelle attività standardizzate dei sistemi informativi complessi, sono state introdotte col tempo forme di organizzazione e codifica delle informazioni Ad esempio, nei servizi anagrafici si è iniziato con registrazioni discorsive e poi nome e cognome estremi anagrafici codice fiscale Informazioni e dati Nei sistemi informatici (e non solo), le informazioni vengono rappresentate in modo essenziale, spartano: attraverso i dati Dal Vocabolario della lingua italiana (1987) informazione: notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere. dato: ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione; (in informatica) elementi di informazione costituiti da simboli che debbono essere elaborati
4 Dati e informazioni Perché i dati? I dati hanno bisogno di essere interpretati Esempio Mario 275 su un foglio di carta sono due dati. Se il foglio di carta viene fornito in risposta alla domanda A chi mi devo rivolgere per il problema X; qual è il suo numero di telefono?, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza. La rappresentazione precisa di forme più ricche di informazione e conoscenza è difficile I dati costituiscono spesso una risorsa strategica, perché più stabili nel tempo di altre componenti (processi, tecnologie, ruoli umani) Base di dati (accezione generica, metodologica) Insieme organizzato di dati utilizzati per il supporto allo svolgimento delle attività di un ente (azienda, ufficio, persona) (accezione specifica, metodologica e tecnologica) insieme di dati gestito da un DBMS Sistema di gestione di basi di dati DataBase Management System DBMS Sistema (prodotto software) in grado di gestire collezioni di dati che siano (anche): grandi (di dimensioni (molto) maggiori della memoria centrale dei sistemi di calcolo utilizzati) persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano) condivise ( utilizzate da applicazioni diverse) garantendo affidabilità (resistenza a malfunzionamenti hardware e software) e privatezza (con una disciplina e un controllo degli accessi). Come ogni prodotto informatico, un DBMS deve essere efficiente (utilizzando al meglio le risorse di spazio e tempo del sistema) ed efficace (rendendo produttive le attività dei suoi utilizzatori)
5 Alcuni DBMS in commercio Condivisione Access DB2 Oracle Informix Sybase SQLServer Ingres... Ogni organizzazione (specie se grande) è divisa in settori o comunque svolge diverse attività A ciascun settore o attività corrisponde un (sotto)sistema informativo Possono esistere sovrapposizioni fra i dati di interesse dei vari settori Una base di dati è una risorsa integrata, condivisa fra i vari settori Condivisione: Esempio Condivisione: Esempio 19 20
6 Possibili problemi Archivi e basi di dati Possibilità di avere: Ridondanza: informazioni ripetute Gestione orario lezioni Archivio 1: orario lezioni Di conseguenza: Rischio di incoerenza: le versioni possono non coincidere Gestione ricevimento Archivio 2: ricevimento Archivi e basi di dati Le basi di dati sono condivise Gestione orario lezioni Gestione ricevimento Base di dati Una base di dati è una risorsa integrata, condivisa fra le varie applicazioni Conseguenze Attività diverse su dati in parte condivisi: meccanismi di autorizzazione Attività multi-utente su dati condivisi: controllo della concorrenza 23 24
7 Efficienza Si misura (come in tutti i sistemi informatici) in termini di tempo di esecuzione (tempo di risposta) e spazio di memoria (principale e secondaria). DBMS vs file system La gestione di insiemi di dati grandi e persistenti è possibile anche attraverso sistemi più semplici (gli ordinari file system dei sistemi operativi) I DBMS, a causa della varietà di funzioni, non sono necessariamente più efficienti dei file system. I file system prevedono forme rudimentali di condivisione: "tutto o niente". Nei DBMS, c è maggiore flessibilità L efficienza è il risultato della qualità del DBMS e delle applicazioni che lo utilizzano. I DBMS estendono le funzionalità dei file system, fornendo più servizi ed in maniera integrata (cfr. efficacia) DBMS vs file system (2) Nei programmi tradizionali che accedono a file, ogni programma contiene una descrizione della struttura del file stesso, con i conseguenti rischi di incoerenza fra le descrizioni (ripetute in ciascun programma) e i file stessi. Nei DBMS, esiste una porzione della base di dati (il catalogo o dizionario) che contiene una descrizione centralizzata dei dati, che può essere utilizzata dai vari programmi. Descrizioni dei dati nei DBMS Descrizioni e rappresentazioni dei dati a livelli diversi Permettono l indipendenza dei dati dalla rappresentazione fisica: i programmi fanno riferimento alla struttura a livello più alto, e le rappresentazioni sottostanti possono essere modificate senza necessità di modifica dei programmi Precisiamo attraverso il concetto di modello dei dati 27 28
8 Modello dei dati Organizzazione dei dati in una base di dati Insieme di costrutti utilizzati per organizzare i dati di interesse e descriverne la dinamica Orario Componente fondamentale: meccanismi di strutturazione (o costruttori di tipo) Insegnamento Analisi matem. I Docente Luigi Neri Aula N1 Ora 8:00 Come nei linguaggi di programmazione esistono meccanismi che permettono di definire nuovi tipi, così ogni modello dei dati prevede alcuni costruttori Chimica Fisica I Piero Rossi Nicola Mori Mario Bruni N2 N1 N1 9:45 9:45 11:45 Ad esempio, il modello relazionale prevede il costruttore relazione, che permette di definire insiemi di record omogenei Fisica II Sistemi Inform. Mario Bruni Pero Rossi N3 N3 9:45 8: Architettura (semplificata) di un DBMS utente Schema logico Schema interno (o fisico) BD Il livello logico è indipendente da quello fisico: Schema logico: Descrizione della base di dati nel modello logico (ad esempio, la struttura della tabella) Schema fisico: Rappresentazione dello schema logico per mezzo di strutture memorizzazione (file) Una tabella è utilizzata nello stesso modo qualunque sia la sua realizzazione fisica (che può anche cambiare nel tempo) 31 Architettura standard (ANSI/SPARC) a tre livelli per DBMS utente utente utente utente utente Schema esterno Schema esterno Schema logico Schema interno (o fisico) BD Schema esterno 32
9 Architettura ANSI/SPARC: schemi Una vista schema logico: descrizione dell intera base di dati nel modello logico principale del DBMS schema fisico: rappresentazione dello schema logico per mezzo di strutture fisiche di memorizzazione Corsi Corso Sistemi Reti Controlli Docente Rossi Neri Bruni Bruni Aula DS3 N3 N3 G Aule Nome DS1 N3 G Edificio OMI OMI Pincherle Piano Terra Terra Primo schema esterno: descrizione di parte della base di dati in un modello logico ( viste parziali, derivate, anche in modelli diversi) CorsiSedi Corso Aula Edificio Piano Sistemi Reti Controlli N3 N3 G OMI OMI Pincherle Terra Terra Primo Indipendenza dei dati Conseguenza della articolazione in livelli: l accesso avviene solo tramite il livello esterno (che può coincidere con il livello logico) Indipendenza fisica il livello logico e quello esterno sono indipendenti da quello fisico una relazione è utilizzata nello stesso modo qualunque sia la sua realizzazione fisica la realizzazione fisica può cambiare senza che debbano essere modificati i programmi Indipendenza logica il livello esterno è indipendente da quello logico aggiunte o modifiche alle viste non richiedono modifiche al livello logico modifiche allo schema logico che lascino inalterato lo schema esterno sono trasparenti Linguaggi per basi di dati Un altro contributo all efficacia: disponibilità di vari linguaggi e interfacce diverse: linguaggi testuali interattivi (SQL) comandi (come quelli del linguaggio interattivo) immersi in un linguaggio ospite (Pascal, C, Cobol, etc.) comandi (come quelli del linguaggio interattivo) immersi in un linguaggio ad hoc, con anche altre funzionalità (p.es. per grafici o stampe strutturate), anche con l ausilio di strumenti di sviluppo (p. es. per la gestione di maschere) con interfacce amichevoli (senza linguaggio testuale) 35 36
10 SQL un linguaggio interattivo SELECT Corso, Aula, Piano FROM Aule, Corsi WHERE Nome = Aula AND Piano="Terra" Corso Sistemi Reti Aula N3 N3 Piano Terra Terra SQL immerso in linguaggio ad alto livello write('nome della citta''?'); readln(citta); EXEC SQL DECLARE P CURSOR FOR SELECT NOME, REDDITO FROM PERSONE WHERE CITTA = :citta ; EXEC SQL OPEN P ; EXEC SQL FETCH P INTO :nome, :reddito ; while SQLCODE = 0 do begin write('nome della persona:', nome, 'aumento?'); readln(aumento); EXEC SQL UPDATE PERSONE SET REDDITO = REDDITO + :aumento WHERE CURRENT OF P EXEC SQL FETCH P INTO :nome, :reddito end; EXEC SQL CLOSE CURSOR P SQL immerso in linguaggio ad hoc (Oracle PL/SQL) Interazione non testuale (in Access) declare Stip number; begin select Stipendio into Stip from Impiegato where Matricola = '575488' for update of Stipendio; if Stip > 30 then update Impiegato set Stipendio = Stipendio * 1.1 where Matricola = '575488'; else update Impiegato set Stipendio = Stipendio * 1.15 where Matricola = '575488'; end if; commit; exception when no_data_found then insert into Errori values('non esiste la matricola specificata',sysdate); end; 39 40
11 Una distinzione terminologica (separazione fra dati e programmi) Data Manipulation Language (DML) per l interrogazione e l aggiornamento di (istanze di) basi di dati Data Definition Language (DDL) per la definizione di schemi (logici, esterni, fisici) e altre operazioni generali Un'operazione DDL (sullo schema) CREATE TABLE orario ( insegnamento CHAR(20), docente CHAR(20), aula CHAR(4), ora CHAR(5) ); Personaggi e interpreti progettisti e realizzatori di DBMS progettisti della base di dati e amministratori della base di dati (DBA) progettisti e programmatori di applicazioni utenti utenti finali (terminalisti): eseguono applicazioni predefinite (transazioni) utenti casuali: eseguono operazioni non previste a priori, usando linguaggi interattivi Database administrator (DBA) Persona o gruppo di persone responsabile del controllo centralizzato e della gestione del sistema, delle prestazioni, dell affidabilità, delle autorizzazioni Le funzioni del DBA includono quelle di progettazione, anche se in progetti complessi ci possono essere distinzioni 43 44
12 Transazioni Programmi che realizzano attività frequenti e predefinite, con poche eccezioni, previste a priori. Esempi: versamento presso uno presso sportello bancario emissione di certificato anagrafico dichiarazione presso l ufficio di stato civile prenotazione aerea Le transazioni sono di solito realizzate con programmi in linguaggio ospite (tradizionale o ad hoc). N.B.: il termine transazione ha un altra accezione, più specifica: sequenza indivisibile di operazioni (o vengono eseguite tutte o nessuna). Vantaggi e svantaggi dei DBMS Pro dati come risorsa comune, base di dati come modello della realtà gestione centralizzata con possibilità di standardizzazione ed economia di scala disponibilità di servizi integrati riduzione di ridondanze e inconsistenze indipendenza dei dati (favorisce lo sviluppo e la manutenzione delle applicazioni) Contro costo dei prodotti e della transizione verso di essi non scorporabilità delle funzionalità (con riduzione di efficienza) Sommario Sistemi informativi e sistemi informatici Metodologie e modelli per il progetto Progettazione di una base di dati Un modello concettuale: Il Modello E-R (1976) Progettazione concettuale Un modello logico: Il modello relazionale DataWarehouse Processi aziendali e sistemi informativi OLTP e OLAP Data warehouse e data warehousing Architetture per il warehousing Analisi multidimensionale Progettazione di basi di dati È una delle attività del processo di sviluppo dei sistemi informativi va quindi inquadrata in un contesto più generale: Il ciclo di vita dei sistemi informativi: Insieme e sequenzializzazione delle attività svolte da analisti, progettisti, utenti, nello sviluppo e nell uso dei sistemi informativi attività iterativa, quindi ciclo 47 48
13 Ciclo di vita sistemi informativi Fasi (tecniche) del ciclo di vita Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Studio di fattibilità: definizione costi e priorità Raccolta e analisi dei requisiti: studio delle proprietà del sistema Progettazione: di dati e funzioni Realizzazione Validazione e collaudo: sperimentazione Funzionamento: il sistema diventa operativo Funzionamento Progettazione: Note Ciclo di vita sistemi informativi La progettazione di un sistema informativo riguarda due aspetti: progettazione dei dati progettazione delle applicazioni Ma: i dati hanno un ruolo centrale in quanto più stabili Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Funzionamento 51 52
14 Metodologia di progetto Ciclo di vita sistemi informativi Per garantire prodotti di buona qualità è opportuno seguire una metodologia di progetto, con: articolazione delle attività in fasi criteri di scelta modelli di rappresentazione generalità e facilità d'uso Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Funzionamento Metodologia di progetto per le basi di dati Metodologia di progetto per le basi di dati Progettazione concettuale COME : progettazione Requisiti della base di dati Schema concettuale Progettazione logica Schema logico Progettazione fisica Schema fisico CHE COSA : analisi I prodotti della varie fasi sono schemi di alcuni modelli di dati: Schema concettuale Schema logico Schema fisico 55 56
15 Descrizioni dei dati nei DBMS Descrizioni e rappresentazioni dei dati a livelli diversi Permettono l indipendenza dei dati dalla rappresentazione fisica: i programmi fanno riferimento alla struttura a livello più alto, e le rappresentazioni sottostanti possono essere modificate senza necessità di modifica dei programmi Precisiamo attraverso il concetto di modello dei dati Modello dei dati Insieme di costrutti utilizzati per organizzare i dati di interesse e descriverne la dinamica Componente fondamentale: meccanismi di strutturazione (o costruttori di tipo) Come nei linguaggi di programmazione esistono meccanismi che permettono di definire nuovi tipi, così ogni modello dei dati prevede alcuni costruttori Ad esempio, il modello relazionale prevede il costruttore relazione, che permette di definire insiemi di record omogenei Modello dei dati:esempio Organizzazione dei dati in una base di dati Orario Insegnamento Docente Aula Ora Analisi matem. I Luigi Neri N1 8:00 Piero Rossi N2 9:45 Chimica Nicola Mori N1 9:45 Fisica I Mario Bruni N1 11:45 Fisica II Mario Bruni N3 9:45 Sistemi Inform. Pero Rossi N3 8:
16 Definizioni: Schema e istanza Definizioni: Schema e istanza In ogni base di dati esistono: lo schema, sostanzialmente invariante nel tempo, che ne descrive la struttura (aspetto intensionale) le intestazioni delle tabelle l istanza, i valori attuali, che possono cambiare anche molto rapidamente (aspetto estensionale) Orario Insegnamento Analisi matem. I Chimica Fisica I Fisica II Sistemi Inform. Lo schema della base di dati Docente Aula Ora Luigi Neri N1 8:00 Piero Rossi N2 9:45 Nicola Mori N1 9:45 Mario Bruni N1 11:45 Mario Bruni N3 9:45 Pero Rossi N3 8:00 il corpo di ciascuna tabella L'istanza della base di dati Due tipi (principali) di modelli Modelli concettuali, perché? Modelli logici: utilizzati nei DBMS esistenti per l organizzazione dei dati utilizzati dai programmi indipendenti dalle strutture fisiche esempi: relazionale, reticolare, gerarchico, a oggetti Modelli concettuali: permettono di rappresentare i dati in modo indipendente da ogni sistema Proviamo a modellare una applicazione definendo direttamente lo schema logico della base di dati: da dove cominciamo? rischiamo di perderci subito nei dettagli dobbiamo pensare subito a come correlare le varie tabelle (chiavi etc.) i modelli logici sono rigidi cercano di descrivere i concetti del mondo reale sono utilizzati nelle fasi preliminari di progettazione il più noto è il modello Entity-Relationship 63 64
17 Modelli concettuali, perché? servono per ragionare sulla realtà di interesse, indipendentemente dagli aspetti realizzativi Progettazione concettuale permettono di rappresentare le classi di dati di interesse e le loro correlazioni prevedono efficaci rappresentazioni grafiche (utili anche per documentazione e comunicazione) Progettazione logica Progettazione fisica Sommario Sistemi informativi e sistemi informatici Metodologie e modelli per il progetto Progettazione di una base di dati Un modello concettuale: Il Modello E-R (1976) Progettazione concettuale Un modello logico: Il modello relazionale DataWarehouse Processi aziendali e sistemi informativi OLTP e OLAP Data warehouse e data warehousing Architetture per il warehousing Analisi multidimensionale Modello Entity-Relationship (Entità-Relazione) Il più diffuso modello concettuale ma attenzione ne esistono molte versioni, (più o meno) diverse l una dall altra I costrutti del modello E-R: Entità Relationship Attributo Identificatore Generalizzazione
18 Modello E-R: Entità Modello E-R: Entità rappresentazione grafica Classe di oggetti (fatti, persone, cose) della applicazione di interesse con proprietà comuni e con esistenza autonoma Esempi: impiegato, città, conto corrente, ordine, fattura Distinguiamo tra: Entità: classe di oggetti, persone, "omogenei" Impiegato Dipartimento Occorrenza (o istanza) di entità: elemento della classe (l'oggetto, la persona,, non i dati) Nello schema concettuale rappresentiamo le entità, non le singole istanze ( astrazione ) Città Vendita Modello E-R: Entità commenti Modello E-R: Relationship Ogni entità ha un nome che la identifica univocamente nello schema: nomi espressivi opportune convenzioni (Es: singolare) Legame logico fra due o più entità, rilevante nell applicazione di interesse Esempi: Residenza (fra persona e città) Esame (fra studente e corso) Chiamata anche: relazione, correlazione, associazione 71 72
19 Modello E-R: Relationship rappresentazione grafica Modello E-R: Relationship commenti Esame Ogni relationship ha un nome che la identifica univocamente nello schema: nomi espressivi opportune convenzioni (Es: singolare, se possibile sostantivi invece dei verbi) Residenza Modello E-R: rappresentazione grafica Modello E-R: Relationship occorrenze Una occorrenza di una relationship binaria è coppia di occorrenze di entità, una per ciascuna entità coinvolta Studente Esame Corso Una occorrenza di una relationship n-aria è una n-upla di occorrenze di entità, una per ciascuna entità coinvolta Impiegato Residenza Città Nell'ambito di una relationship non ci possono essere occorrenze (coppie, ennuple) ripetute 75 76
20 Modello E-R: Relationship binarie Modello E-R: Relationship n-arie Due relationship sulle stesse entità Fornitore Fornitura Prodotto Sede di lavoro Dipartimento Impiegato Residenza Città A fornisce stampanti al Dip Personale B fornisce fotocopiatrici al Dip Personale A fornisce calcolatori al Dip Ricerca C fornisce calcolatori al Dip Personale Modello E-R: Relationship ricorsiva Modello E-R: Relationship ricorsiva con ruoli Coinvolge due volte la stessa entità Coinvolge due volte la stessa entità ma essendo simmetrica occorre specificare i ruoli al fine di poter fornie una semantica Conoscenza Successione Persona Successore Sovrano Predecessore 79 80
21 Modello E-R: Relationship ternaria ricorsiva con ruoli Modello E-R: Attributo Superficie Proprietà elementare di un entità o di una relationship, di interesse ai fini dell applicazione Migliore Confronto Peggiore Associa ad ogni occorrenza di entità o relationship un valore appartenente a un insieme detto dominio dell attributo Tennista Migliore Peggiore Superfice Sanchez Navratilova Terra Navratilova Sanchez Erba Graf Sanchez Erba Modello E-R: Attributo rappresentazione grafica Modello E-R: Attributo composto Cognome Nome Data Voto Titolo Raggruppano attributi di una medesima entità o relationship che presentano affinità nel loro significato o uso Studente Esame Corso Esempio: Via, Numero civico e CAP formano un Indirizzo Matricola Codice 83 84
22 Modello E-R: Attributo composto rappresentazione grafica Cognome Modello E-R: Esempio Cognome Direzione Impiegato Telefono Dipartimento Impiegato Età Indirizzo Via Numero CAP 85 Codice Afferenza Partecipazione Data Progetto Via Budget Nome CAP Nome Composizione Sede Indirizzo Città 86 Modello E-R: Altri costrutti Cardinalità di relationship di attributo Identificatore interno esterno Modello E-R: Cardinalità di Relationship Coppia di valori associati a ogni entità che partecipa a una relationship Specificano il numero minimo e massimo di occorrenze delle relationship cui ciascuna occorrenza di una entità può partecipare Generalizzazione 87 88
23 Modello E-R: Cardinalità di Relationship esempio Modello E-R: Cardinalità di Relationship Per semplicità usiamo solo tre simboli: Impiegato (1,5) (0,50) Assegnamento Incarico 0 e 1 per la cardinalità minima: 0 = partecipazione opzionale 1 = partecipazione obbligatoria Un impiegato ha assegnati minimo 1 massimo 5 incarichi Un incarico ha assegnati minimo 0 massimo 50 impiegati 1 e N per la cardinalità massima: N non pone alcun limite Modello E-R: Cardinalità di Relationship esempo Modello E-R: Tipi di Relationship (1,1) (0,N) Con riferimento alle cardinalità relationship: massime, abbiamo Studente Residenza Città uno a uno uno a molti (o 1 a N) molti a molti (o N a N) Uno studente risiede minimo in 1 massimo in 1 città Una città è residenza per minimo 0 massimo N studenti Avvertenze: Attenzione al "verso" nelle relationship uno a molti le relationship obbligatorie-obbligatorie sono molto rare 91 92
24 Modello E-R: Relationship molti a molti Modello E-R: Relationship uno a molti (0,N) (0,N) (0,1) (0,N) Studente Esame Corso Persona Impiego Azienda (0,N) (1,N) (1,1) (0,N) Montagna Scalata Alpinista Cinema Ubicazione Località (1,N) (1,N) (1,1) (1,N) Macchinista Abilitazione Locomotore Comune Ubicazione Provincia Modello E-R: Relationship uno a uno Modello E-R: Cardinalità di attributi Professore (0,1) (0,1) Titolarità Cattedra E possibile associare delle cardinalità anche agli attributi, con due scopi: Professore di ruolo (1,1) (0,1) Titolarità Cattedra indicare opzionalità ("informazione incompleta") indicare attributi multivalore Professore di ruolo (1,1) (1,1) Titolarità Cattedra coperta 95 96
25 Modello E-R: Cardinalità di attributi rappresentazione grafica Modello E-R: Identificatore entità Strumento per l identificazione univoca delle occorrenze di un entità Impiegato (0,N) Telefono Nome Costituito da: attributi dell entità identificatore interno (0,1) Numero patente (attributi +) entità esterne attraverso relationship identificatore esterno Modello E-R: Identificatore entità interno Modello E-R: Identificatore entità esterno Automobile Targa Modello Marca La targa di un automobile sul territorio nazionale la identifica in modo univoco Cognome Matricola (1,1) (0,N) Studente Iscrizione Nome Università Persona Indirizzo Data Nascita Cognome Nome Supponendo che non esistono persone che hanno contemporaneame nte lo stesso nome, cognome e data di nascita Anno di corso Indirizzo Sul territorio nazionale l Università è identificata univocamente dal nome. Lo studente dal nome dell Università e dalla matricola che gli è stata assegnata
26 Modello E-R: Identificatore osservazioni Modello E-R: Esempio Ogni entità deve possedere almeno un identificatore, ma può averne in generale più di uno Cognome (0,1) Direzione (1,1) Telefono (1,N) Una identificazione esterna è possibile solo attraverso una relationship a cui l entità da identificare partecipa con cardinalità (1,1) 101 Impiegato (0,1) (0,N) Dipartimento Codice (0,N) Afferenza (1,1) Nome Partecipazione (0,1) Composizione (1,N) Data (1,N) Progetto Sede Via Budget Nome Indirizzo CAP Città 102 Modello E-R: Generalizzazione Mette in relazione una o più entità E1, E2,..., En con una entità E, che le comprende come caso particolare E è generalizzazione di E1, E2,..., En E1, E2,..., En sono specializzazioni (o sottotipi) di E Modello E-R: Generalizzazione rappresentazione grafica Dipendente Impiegato Funzionario Dirigente
27 Modello E-R: Generalizzazione proprietà Modello E-R: Generalizzazione esempio Se E (genitore) è generalizzazione di E1, E2,..., En (figlie): Città ogni proprietà di E è significativa per E1, E2,..., En ogni occorrenza di E1, E2,..., En è occorrenza anche di E (0,N) Nascita (1,1) Codice fiscale Ereditarietà delle generalizzazioni Persona Nome tutte le proprietà (attributi, relationship, altre generalizzazioni) dell entità genitore vengono ereditate dalle entità figlie e non rappresentate esplicitamente Stipendio Età Lavoratore Studente Modello E-R: Tipi di generalizzazione Modello E-R: Tipi di generalizzazione esempi totale se ogni occorrenza dell'entità genitore è occorrenza di almeno una delle entità figlie, altrimenti è parziale Persona Persona esclusiva se ogni occorrenza dell'entità genitore è occorrenza di al più una delle entità figlie, altrimenti è sovrapposta Disoccupato Lavoratore Uomo Donna consideriamo (senza perdita di generalità) solo generalizzazioni esclusive e distinguiamo fra totali e parziali Generalizzazione parziale esclusiva Generalizzazione totale esclusiva
28 Modello E-R: Tipi di generalizzazione altre proprietà possono esistere gerarchie a più generalizzazioni allo stesso livello livelli e multiple un'entità può essere inclusa in più gerarchie, come genitore e/o come figlia se una generalizzazione ha solo un entità figlia si parla di sottoinsieme Modello E-R: Generalizzazioni esercizio Le persone sono uomini e donne hanno CF,cognome ed età; per gli uomini è rilevante anche la posizione militare. Gli impiegati e gli studenti sono delle persone. Gli impiegati hanno lo stipendio e possono essere segretari per i quali è rilevante l orario di lavoro, direttori o progettisti (nell ultimo caso possono essere anche responsabili di progetto); gli studenti (che non possono essere impiegati) hanno il numero di matricola; esistono persone che non sono né impiegati né studenti (ma i dettagli non ci interessano) alcune configurazioni non hanno senso il genitore di una generalizzazione totale può non avere identificatore, purché Modello E-R: Generalizzazioni esercizio Modello E-R: Documentazione associata agli schemi concettuali CF Cognome Persona Stipendio Età Matr. dizionario dei dati entità relationship Uomo Donna Impiegato Studente vincoli non esprimibili Militare Segretario Direttore Progettista Orario lavoro Responsabile
29 Modello E-R: Esempio Cognome (0,1) (1,1) Telefono Direzione (1,N) Impiegato (0,1) (0,N) Dipartimento Codice (0,N) Afferenza (1,1) Nome Partecipazione (0,1) Composizione (1,N) Data (1,N) Progetto Sede Via Budget Nome Indirizzo CAP Città 113 Entità Descrizione Attributi Identificatore Impiegato Dipendente Codice, Codice dell'azienda Cognome, Stipendio Progetto Progetti Nome, Nome aziendali Budget Dipartimento Struttura Nome, Nome, Sede Modello E-R: Dizionario dei dati (entità) aziendale Sede dell'azienda Telefono Città, Indirizzo Sede Città 114 Modello E-R: Dizionario dei dati (relationship) Modello E-R: Vincoli non esprimibili Relazioni Descrizione Componenti Attributi Direzione Direzione di un Impiegato, dipartimento Dipartimento Afferenza Afferenza a un Impiegato, Data dipartimento Dipartimento Partecipazione Partecipazione a un progetto Impiegato, Progetto Composizione Composizione dell'azienda Dipartimento, Sede Vincoli di integrità sui dati (1) Il direttore di un dipartimento deve a afferire a tale dipartimento (2) Un impiegato non deve avere uno stipendio maggiore del direttore del dipartimento al quale afferisce (3) Un dipartimento con sede a Roma deve essere diretto da un impiegato con più di dieci anni di anzianità (4) Un impiegato che non afferisce a nessun dipartimento non deve partecipare a nessun un progetto
30 Sommario Sistemi informativi e sistemi informatici Metodologie e modelli per il progetto Progettazione di una base di dati Un modello concettuale: Il Modello E-R (1976) Progettazione concettuale Un modello logico: Il modello relazionale DataWarehouse Processi aziendali e sistemi informativi OLTP e OLAP Data warehouse e data warehousing Architetture per il warehousing Analisi multidimensionale Metodologia di progetto per le basi di dati Progettazione concettuale COME : progettazione Requisiti della base di dati Schema concettuale Progettazione logica Schema logico Progettazione fisica Schema fisico CHE COSA : analisi 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 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 Requisiti Possibili fonti: utenti, attraverso: interviste documentazione apposita documentazione esistente: normative (leggi, regolamenti di settore) regolamenti interni, procedure aziendali realizzazioni preesistenti modulistica
31 Acquisizione per interviste 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 Spunti: Interazione con gli utenti effettuare spesso verifiche di comprensione e coerenza 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 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 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
32 Requisiti: Esempio Requisiti: Glossario dei termini Base di dati bibliografica Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti bibliografici Term ine Descrizione Sinonim i Collegamenti Partecipante Persona che partecipa Studente Corso, ai corsi Società Base di dati bibliografica Si vogliono organizzare i dati di interesse per automatizzare la gestione dei riferimenti bibliografici, con tutte le informazioni da riportarsi in una bibliografia. Docente Corso Docente dei corsi. Può essere esterno Corso organizzato dalla società. Può Insegnante Sem inario Corso Docente Per ogni pubblicazione deve esistere un codice identificante costituito da avere più edizioni. sette caratteri, indicanti le iniziali degli autori, l'anno di pubblicazione e un carattere aggiuntivo per la discriminazione delle collisioni Requisiti: Strutturazione dei requisiti in gruppi di frasi omogenee Requisiti: Strutturazione dei requisiti in gruppi di frasi omogenee Frasi di carattere generale Si vuole realizzare una base di dati per una società che eroga corsi, di cui vogliamo rappresentare i dati dei partecipanti ai corsi e dei docenti. Frasi relative ai datori di lavoro Relativamente ai datori di lavoro presenti e passati dei partecipanti, rappresentiamo il nome, l'indirizzo e il numero di telefono. Frasi relative ai partecipanti Per i partecipanti (circa 5000), identificati da un codice, rappresentiamo il codice fiscale, il cognome, l'età, il sesso, la città di nascita, i nomi dei loro attuali datori di lavoro e di quelli precedenti (insieme alle date di inizio e fine rapporto), le edizioni dei corsi che Frasi relative ai corsi Per i corsi (circa 200), rappresentiamo il titolo e il codice, le varie edizioni con date di inizio e fine e, per ogni edizione, rappresentiamo il numero di partecipanti e il giorno della settimana, le aule e le ore dove sono tenute le lezioni. stanno attualmente frequentando e quelli che hanno frequentato nel passato, con la relativa votazione finale in decimi
33 Quale costrutto E-R va utilizzato per rappresentare un concetto presente nelle specifiche? Bisogna basarsi sulle definizioni dei costrutti del modello E-R se ha proprietà significative e descrive oggetti con esistenza autonoma entità se è semplice e non ha proprietà attributo se correla due o più concetti relazione se è caso particolare di un altro generalizzazione Strategie di progetto top-down bottom-up inside-out Strategie di progetto: Top Down Strategie di progetto: Bottom Up
34 Strategie di progetto: Inside Out Strategie di progetto: In pratica si procede di solito con una strategia ibrida (mista): si individuano i concetti principali e si realizza uno schema scheletro sulla base di questo si può decomporre poi si raffina, si espande, si integra Definizione dello schema scheletro: Si individuano i concetti più importanti, ad esempio perché più citati o perché indicati esplicitamente come cruciali e li si organizza in un semplice schema concettuale Qualità di uno schema concettuale Correttezza Completezza Un esempio di progettazione concettuale Supponiamo di dover progettare una base di dati per una società di formazione F rasi d i carattere gen erale S i vu ole realizzare u n a b ase d i d ati p er u n a società ch e eroga corsi, d i cu i vogliam o rap p resen tare i dati d ei p artecip an ti ai corsi e d ei d ocen ti. Leggibilità minimalità Definiamo lo schema scheletro: Partecipazione Corso Docenza Partecipante Docente
35 Un esempio di progettazione concettuale Un esempio di progettazione concettuale Frasi relative ai partecipanti Per i partecipanti (circa 5000), identificati da un codice, rappresentiamo il codice fiscale, il cognome, l'età, il sesso, la città di nascita, i nomi dei loro attuali datori di lavoro e di quelli precedenti (insieme alle date di inizio e fine rapporto), le edizioni dei corsi che stanno attualmente frequentando e quelli che hanno frequentato nel passato, con la relativa votazione finale in decimi. Frasi relative a tipi specifici di partecipanti Per i partecipanti che sono liberi professionisti, rappresentiamo l'area di interesse e, se lo possiedono, il titolo professionale. Per i partecipanti che sono dipendenti, rappresentiamo invece il loro livello e la posizione ricoperta. Frasi relative ai datori di lavoro Relativamente ai datori di lavoro presenti e passati dei partecipanti, rappresentiamo il nome, l'indirizzo e il numero di telefono Un esempio di progettazione concettuale Un esempio di progettazione concettuale (0,N) Impiego corrente (1,1) (0,N) (0,N) Datore Impiego passato Nome.. CF Frasi relative ai corsi Per i corsi (circa 200), rappresentiamo il titolo e il codice, le varie edizioni con date di inizio e fine e, per ogni edizione, rappresentiamo il numero di partecipanti e il giorno della settimana, le aule e le ore dove sono tenute le lezioni. Partecipante Codice.. Dipendente Professionista Livello Posizione Titolo prof. Area
36 Un esempio di progettazione concettuale Un esempio di progettazione concettuale Data inizio (1,1) Data fine Edizione corso N.Part. (1,N) Frasi relative ai docenti Per i docenti (circa 300), rappresentiamo il cognome, l'età, la città 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 della società di formazione o collaboratori esterni. Tipologia (0,N) Composizione (1,1) Telefono (1,N) Docente CF Cognome Corso Lezione Città nascita Età Titolo Codice Orario Aula Giorno Collaboratore Interno Un esempio di progettazione concettuale: Integrazione Un esempio di progettazione concettuale: Integrazione Corso (0,1) Docenza passata (0,N) Partecipazione Partecipante (0,N) partecipazione passata Docenza Docente (0,N) Data inizio Corso Edizione Tipologia (1,1) (0,N) Docenza (0,1) (0,1) (0,1) Docenza corrente (0,1) Docente (1,N) Partecipante (0,1) partecipazione (0,N) corrente Corso Corso (1,N) Abilitazione 143 Titolo Codice 144
37 Sommario Sistemi informativi e sistemi informatici Metodologie e modelli per il progetto Progettazione di una base di dati Un modello concettuale: Il Modello E-R (1976) Progettazione concettuale Un modello logico: Il modello relazionale DataWarehouse Processi aziendali e sistemi informativi OLTP e OLAP Data warehouse e data warehousing Architetture per il warehousing Analisi multidimensionale I modelli logici dei dati Tre modelli logici tradizionali Gerarchico Reticolare Relazionale Più recente (e poco diffuso) a Oggetti Caratteristiche utilizzano riferimenti espliciti (puntatori) fra record "è basato su valori anche i riferimenti fra dati in strutture (relazioni) diverse sono rappresentati per mezzo dei valori stessi Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati Struttura non posizionale A ciascun dominio si associa un nome (attributo), che ne descrive il "ruolo" Disponibile in DBMS reali nel 1981 (non è facile implementare l indipendenza con efficienza e affidabilità!) Si basa sul concetto matematico di relazione (con una variante) Le relazioni hanno naturale rappresentazione per mezzo di tabelle Casa Juve Lazio Juve Roma Fuori Lazio Milan Roma Milan RetiCasa RetiFuori
38 Tabelle e relazioni Una tabella rappresenta una relazione se i valori di ogni colonna sono fra loro omogenei le righe sono diverse fra loro le intestazioni delle colonne sono diverse tra loro In una tabella che rappresenta una relazione l ordinamento tra le righe è irrilevante l ordinamento tra le colonne è irrilevante Il modello è basato su valori i riferimenti fra dati in relazioni diverse sono rappresentati per mezzo di valori dei domini che compaiono nelle ennuple studenti esami Studente Matricola Cognome Nome Data di nascita 6554 Rossi Mario 05/12/ Neri Paolo 03/11/ Verdi Luisa 12/11/ Rossi Maria 01/02/1978 Voto Corso corsi Codice Titolo Docente 01 Analisi Mario 02 Chimica Bruni 04 Chimica Verdi Il modello basato su puntatori Vantaggi della struttura basata su valori studenti Matricola Cognome Nome Data di nascita 6554 Rossi Mario 05/12/ Neri Paolo 03/11/ Verdi Luisa 12/11/ Rossi Maria 01/02/1978 esami Studente Voto Corso corsi Codice Titolo Docente 01 Analisi Mario 02 Chimica Bruni 04 Chimica Verdi 151 indipendenza dalle strutture fisiche (si potrebbe avere anche con puntatori di alto livello) che possono cambiare dinamicamente si rappresenta solo ciò che è rilevante dal punto di vista dell applicazione l utente finale vede gli stessi dati dei programmatori i dati sono portabili piu' facilmente da un sistema ad un altro i puntatori sono direzionali 152
39 Definizioni Strutture nidificate Schema di relazione: un nome R con un insieme di attributi A 1,..., A n : R(A 1,..., A n ) Schema di base di dati: insieme di schemi di relazione: R = {R 1 (X 1 ),..., R k (X k )} Da Filippo Via Roma 2, Roma Ricevuta Fiscale 1235 del 12/10/ Coperti 3,00 2 Antipasti 6,20 3 Primi 12,00 2 Bistecche 18,00 Totale 39,20 Da Filippo Via Roma 2, Roma Ricevuta Fiscale 1240 del 13/10/ Coperti 2,00 2 Antipasti 7,00 2 Primi 8,00 2 Orate 20,00 2 Caffè 2,00 Totale 39, Relazioni che rappresentano strutture nidificate Strutture nidifcate, riflessione Ricevute Numero Data Totale /10/ , /10/ ,00 Abbiamo rappresentato veramente tutti gli aspetti delle ricevute? Dipende da che cosa ci interessa! Dettaglio Numero Qtà Descrizione Costo Coperti 3, Antipasti 6, Primi 12, Bistecche 18, Coperti 2,00 l'ordine delle righe e' rilevante? possono esistere linee ripetute in una ricevuta? Sono possibili rappresentazioni diverse
40 Rappresentazione alternativa per strutture nidificate Informazione incompleta Ricevute Numero Data Totale /10/ , /10/ ,00 ll modello relazionale impone ai dati una struttura rigida: le informazioni sono rappresentate per mezzo di ennuple solo alcuni formati di ennuple sono ammessi: quelli che corrispondono agli schemi di relazione Dettaglio Numero Riga Qtà Descrizione Costo Coperti 3, Antipasti 6, Primi 12, Bistecche 18, Coperti 2,00 I dati disponibili possono non corrispondere al formato previsto Informazione incompleta: motivazioni Informazione incompleta nel modello relazionale Nome Franklin Winston Charles Josip SecondoNome Delano Cognome Roosevelt Churchill De Gaulle Stalin non conviene (anche se spesso si fa) usare valori del dominio (0, stringa nulla, 99,...): potrebbero non esistere valori non utilizzati valori non utilizzati potrebbero diventare significativi in fase di utilizzo (nei programmi) sarebbe necessario ogni volta tener conto del significato di questi valori Si adotta una tecnica rudimentale ma efficace: valore nullo: denota l assenza di un valore del dominio (e non è un valore del dominio) t[a], per ogni attributo A, è un valore del dominio dom(a) oppure il valore nullo NULL Si possono (e debbono) imporre restrizioni sulla presenza di valori nulli
41 Troppi valori nulli Tipi di valore nullo studenti MatricolaCognome Nome Data di nascita 6554 Rossi Mario 05/12/ Verdi Luisa 12/11/1979 NULL Rossi Maria 01/02/1978 esami Studente Voto Corso NULL 30 NULL NULL (almeno) tre casi differenti valore sconosciuto valore inesistente valore senza informazione I DBMS non distinguono i tipi di valore nullo corsi Codice Titolo Docente 01 Analisi Mario 02 NULL NULL 04 Chimica Verdi Vincoli di integrità Esistono istanze di basi di dati che, pur sintatticamente corrette, non rappresentano informazioni possibili per l applicazione di interesse Vincolo di integrità Proprietà che deve essere soddisfatta dalle istanze che rappresentano informazioni corrette per l applicazione Esami Studente Voto Lode Corso e lode e lode Un vincolo è una funzione booleana (un predicato): associa ad ogni istanza il valore vero o falso Studenti Matricola Cognome Rossi Neri Bianchi Nome Mario Piero Luca
42 Vincolo di integrità, perchè? Tipi di vincoli descrizione più accurata della realtà vincoli intrarelazionali contributo alla qualità dei dati utili nella progettazione (vedremo) usati dai DBMS nella esecuzione delle interrogazioni vincoli su valori (o di dominio) vincoli di ennupla vincoli interrelazionali non tutte le proprietà di interesse sono rappresentabili per mezzo di vincoli formulabili in modo esplicito Tipi di vincoli Vincoli di ennupla Esami Studente Voto Lode Corso e lode e lode Esprimono condizioni sui valori di ciascuna ennupla,indipendentemente dalle altre ennuple Caso particolare: Vincoli di dominio: coinvolgono un solo attributo Studenti Matricola Cognome Rossi Neri Bianchi Nome Mario Piero Luca
43 Vincoli di ennupla: esempio Identificazione delle ennuple Stipendi Impiegato Rossi Neri Bruni Lordo Ritenute Netto Matricola Cognome Rossi Rossi Neri Neri Rossi Nome Mario Mario Piero Mario Piero Corso Ing Inf Ing Inf Ing Mecc Ing Inf Ing Mecc Nascita 5/12/78 3/11/76 10/7/79 3/11/76 5/12/78 Lordo = (Ritenute + Netto) non ci sono due ennuple con lo stesso valore sull attributo Matricola non ci sono due ennuple uguali su tutti e tre gli attributi Cognome, Nome e Data di Nascita Chiave Una chiave Insieme di attributi che identificano le ennuple di una relazione Formalmente: Un insieme K di attributi è superchiave per r se r non contiene due ennuple distinte t 1 e t 2 con t 1 [K] = t 2 [K] K è chiave per r se è una superchiave minimale per r (cioè non contiene un altra superchiave) Matricola Cognome Rossi Rossi Neri Neri Rossi Matricola è una chiave: Nome Mario Mario Piero Mario Piero Corso Ing Inf Ing Inf Ing Mecc Ing Inf Ing Mecc Nascita 5/12/78 3/11/76 10/7/79 3/11/76 5/12/78 è superchiave contiene un solo attributo e quindi è minimale
44 Un'altra chiave Un'altra chiave Matricola Cognome Rossi Rossi Neri Neri Rossi Nome Mario Mario Piero Mario Piero Corso Ing Inf Ing Inf Ing Mecc Ing Inf Ing Mecc Nascita 5/12/78 3/11/76 10/7/79 3/11/76 5/12/78 Matricola Cognome Rossi Rossi Neri Neri Rossi Nome Mario Mario Piero Mario Piero Corso Ing Inf Ing Inf Ing Mecc Ing Inf Ing Mecc Nascita 5/12/78 3/11/76 10/7/79 3/11/76 5/12/78 Cognome, Nome, Nascita è un altra chiave: è superchiave minimale Non ci sono ennuple uguali su Cognome e Corso: Cognome e Corso formano una chiave Ma è sempre vero? Vincoli, schemi e istanze i vincoli corrispondono a proprietà del mondo reale modellato dalla base di dati interessano a livello di schema (con riferimento cioè a tutte le istanze) Esistenza delle chiavi Una relazione non può contenere ennuple distinte ma uguali Ogni relazione ha come superchiave l insieme degli attributi su cui è definita ha (almeno) una chiave ad uno schema associamo un insieme di vincoli e consideriamo corrette (valide, ammissibili) le istanze che soddisfano tutti i vincoli un'istanza può soddisfare altri vincoli ( per caso )
45 Importanza delle chiavi Chiavi e valori nulli L esistenza delle chiavi garantisce l accessibilità a ciascun dato della base di dati Le chiavi permettono di correlare i dati in relazioni diverse: il modello relazionale è basato su valori In presenza di valori nulli, i valori della chiave non permettono di identificare le ennuple di realizzare facilmente i riferimenti da altre relazioni Chiavi e valori nulli Chiave primaria Matricola Cognome Nome Corso Nascita NULL NULL Mario Ing Inf 5/12/ Rossi Mario Ing Civile 3/11/ Neri Neri Piero Mario Ing Mecc Ing Inf 10/7/79 NULL NULL Neri Mario NULL 5/12/78 La presenza di valori nulli nelle chiavi deve essere limitata Chiave su cui non sono ammessi nulli Notazione: sottolineatura Matricola Cognome Nome Corso Nascita NULL Mario Ing Inf 5/12/ Rossi Neri Mario Piero Ing Civile 3/11/76 Ing Mecc 10/7/ Neri Mario Ing Inf NULL Neri Mario NULL 5/12/
46 Integrità referenziale Integrità referenziale: Esempio Informazioni in relazioni diverse sono correlate attraverso valori comuni In particolare, valori delle chiavi (primarie) Le correlazioni debbono essere "coerenti" Infrazioni Codice Data 1/2/95 4/3/95 5/4/96 5/2/98 Vigile Prov Numero MI 39548K TO E39548 PR PR Vigili Matricola Cognome Rossi Neri Neri Mori Nome Luca Piero Mario Gino Integrità referenziale: Esempio Infrazioni Codice Data 1/2/95 4/3/95 5/4/96 5/2/98 Vigile Prov Numero MI 39548K TO E39548 PR PR Vincolo di integrità referenziale Un vincolo di integrità referenziale ( foreign key ) fra gli attributi X di una relazione R 1 e un altra relazione R 2 impone ai valori su X in R 1 di comparire come valori della chiave primaria di R 2 Auto Prov NumeroCognome MI TO PR 39548K E Rossi Rossi Neri Nome Mario Mario Luca
Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico
Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle
DettagliPartite string string int int. Perché studiare il Modello Relazionale? Capitolo 2. Relazione: tre accezioni. Basi di dati relazionali: definizioni
Perché studiare il Modello Relazionale? Capitolo 2 Il modello relazionale È il modello più largamente usato Produttori: IBM, Informix, Microsoft, Oracle, Sybase, etc. Sistemi proprietari nei modelli più
DettagliInformatica 2 Basi di dati
Informatica 2 Basi di dati Prof. Giovanni Giuffrida e-mail: giovanni.giuffrida@dmi.unict.it DB - Introduzione 1 Recapiti Prof. Giuffrida Giovanni Email: giovanni.giuffrida@dmi.unict.it Info sul corso:
DettagliSistema di Gestione di Basi di Dati DataBase Management System DBMS
Base di dati (accezione generica) collezione di dati, utilizzati per rappresentare le informazioni di interesse per una o più applicazioni di una organizzazione (accezione specifica) collezione di dati
DettagliCorso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
DettagliModello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi
Modello Relazionale Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dell indipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliInformatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Introduzione alle Basi di Dati Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati
DettagliChe cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati
Che cos è un DBMS? Capitolo 1 Introduzione ai sistemi di basi di dati Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni
DettagliCardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni
e identificatori Codice (0,1) (1,1) Dirige Informatica Lezione 8 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Cognome
DettagliTelerilevamento e GIS Prof. Ing. Giuseppe Mussumeci
Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme
DettagliMODELLO RELAZIONALE. Introduzione
MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliBasi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati
Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza
DettagliModulo 2 Data Base 2
Modulo 2 Data Base 2 Università degli Studi di Salerno Corso di Laurea in Scienze della comunicazione Informatica generale Docente: Angela Peduto A.A. 2004/2005 Relazioni: riepilogo Relazione : concetto
DettagliModello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli
Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli gerarchico e reticolare sono più vicini alle strutture
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliBASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015
BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare
DettagliBasi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS
Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)
DettagliElena Baralis 2013 Politecnico di Torino 1
Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica
DettagliBASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA
BASE DI DATI: sicurezza Informatica febbraio 2015 5ASA Argomenti Privatezza o riservatezza Vincoli di integrità logica della base di dati intrarelazionali interrelazionali Principio generale sulla sicurezza
DettagliAlessandra Raffaetà. Basi di Dati
Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati
DettagliDatabase. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014
Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche
DettagliInformatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
DettagliBASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone
BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell
DettagliInformatica Industriale Modello funzionale: Informazione Progettazione concettuale
DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Progettazione concettuale Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/
DettagliInformatica Introduzione alle basi di dati
Informatica Introduzione alle basi di dati Prof. Giovanni Giuffrida e-mail: giovanni.giuffrida@dmi.unict.it 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 1 Materiale didattico Atzeni,Ceri,Paraboschi,Torlone,
DettagliDatabase: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro
Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe
DettagliVincoli di integrità
Vincoli di integrità Non tutte le istanze di basi di dati sintatticamente corrette rappresentano informazioni plausibili per l applicazione di interesse Studenti Matricola Nome Nascita 276545 Rossi 23-04-72?
DettagliBasi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007
Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE
DettagliFacoltà di Farmacia - Corso di Informatica
Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito
DettagliSistemi Informativi e Basi di Dati
Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli
Dettagli2.2b: RELAZIONI E BASI DI DATI. Atzeni, cap. 2.1.4
2.2b: RELAZIONI E BASI DI DATI Atzeni, cap. 2.1.4 Il modello è basato su valori Una Base di Dati è generalmente costituita da più di una Tabella Le corrispondenze fra dati presenti in tabelle diverse sono
DettagliLezione V. Aula Multimediale - sabato 29/03/2008
Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)
DettagliAssociazioni. Informatica. Associazioni. Associazioni. Associazioni. Attributi. Possono esistere associazioni diverse che coinvolgono le stesse entità
Informatica Possono esistere associazioni diverse che coinvolgono le stesse entità Lezione 7 Lavora a Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione
DettagliBasi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti
Basi di dati Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti Anno Accademico 2008/2009 Introduzione alle basi di dati Docente Pierangelo
DettagliDB - Modello relazionale dei dati. DB - Modello Relazionale 1
DB - Modello relazionale dei dati DB - Modello Relazionale 1 Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito
DettagliIdentificatori delle entità
Identificatori delle entità Permettono di identificare in maniera univoca le occorrenze delle entità Ogni entità deve averne (almeno) uno Targa Automobile Modello Colore Nome Persona Data di nascita Indirizzo
DettagliInformatica. Il modello relazionale: Relazioni e tabelle. Relazioni con attributi
Informatica Basi di dati parte 3 Basi di dati relazionali: relazioni, tabelle, chiavi, vincoli Lezione 9 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione
DettagliIL SISTEMA INFORMATIVO
IL SISTEMA INFORMATIVO In un organizzazione l informazione è una risorsa importante al pari di altri tipi di risorse: umane, materiali, finanziarie, (con il termine organizzazione intendiamo un insieme
DettagliProgettazione concettuale
Progettazione concettuale Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
DettagliIl database management system Access
Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio
DettagliIntroduzione al data base
Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli
DettagliPROGETTAZIONE CONCETTUALE
Fasi della progettazione di basi di dati PROGETTAZIONE CONCETTUALE Parte V Progettazione concettuale Input: specifiche utente Output: schema concettuale (astrazione della realtà) PROGETTAZIONE LOGICA Input:
DettagliIntroduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni
Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono
DettagliLo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.
Progettazione logica Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. La progettazione logica è basata su un particolare modello logico dei
DettagliBASI DI DATI - : I modelli di database
BASI DI DATI - : I modelli di database DAL 1960 ci si e' orientati verso 3 direzioni: 1 MODELLO GERARCHICO Se i dati si presentano naturalmente in una struttura ad albero (ES. File System) Limiti: rigidità
DettagliDalla progettazione concettuale alla modellazione di dominio
Luca Cabibbo A P S Analisi e Progettazione del Software Dalla progettazione concettuale alla modellazione di dominio Capitolo 91 marzo 2015 Se qualcuno vi avvicinasse in un vicolo buio dicendo psst, vuoi
DettagliDBMS (Data Base Management System)
Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire
DettagliBasi di dati. Le funzionalità del sistema non vanno però ignorate
Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)
DettagliLe Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
DettagliInformatica Documentale
Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,
DettagliBase di dati e sistemi informativi
Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per
DettagliProgramma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione
Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni
DettagliIntroduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei
Introduzione Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei. ESEMPI DI INSIEMI DI DATI DA ORGANIZZARE ED USARE IN MANIERA EFFICIENTE Introduzione Più utenti con
DettagliModello dei Dati ENTITÀ-RELAZIONE (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale
Modello dei Dati E-R ENTITÀ-RELAZIONE O (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale R.Gori - G.Leoni Modello dei Dati Entità-Relazione
Dettagli1. BASI DI DATI: GENERALITÀ
1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente
DettagliLa Progettazione Concettuale
La Progettazione Concettuale Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Anno Accademico 2006/2007 docente: ing. Corrado Aaron Visaggio
DettagliBasi di Dati Relazionali
Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 PROGETTAZIONE DI UNA BASE DI DATI Raccolta e Analisi dei requisiti Progettazione concettuale Schema concettuale Progettazione logica
DettagliIntroduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi
Metodologie e modelli per la progettazione di basi di dati Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti Progettare: definire la struttura,
DettagliBasi di dati 9 febbraio 2010 Compito A
Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli
DettagliData Base. Prof. Filippo TROTTA
Data Base Definizione di DataBase Un Database può essere definito come un insieme di informazioni strettamente correlate, memorizzate su un supporto di memoria di massa, costituenti un tutt uno, che possono
Dettaglidatabase: modello entityrelationship
Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8 database: modello entityrelationship Prof.Valle D.ssaFolgieri Lez7 25.10.07 Trattamento dati. Database: modello entity-relationship 1 Fasi
DettagliLa Metodologia adottata nel Corso
La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema
DettagliIl Modello Relazionale
Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliProva scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia
Prova scritta del corso di Basi di dati attive 17 Dicembre 1999 Si desidera automatizzare la gestione dei banchetti organizzati da un agenzia di pubbliche relazioni. Le specifiche del sistema informativo,
DettagliI Sistemi Informativi
I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e
DettagliDATABASE RELAZIONALI
1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.
DettagliBasi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,
DettagliI livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE
I DATABASE o basi di dati possono essere definiti come una collezione di dati gestita dai DBMS. Tali basi di dati devono possedere determinati requisiti, definiti come specifiche, necessarie per il processo
DettagliGli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.
Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano
DettagliLe Basi di dati: generalità. Unità di Apprendimento A1 1
Le Basi di dati: generalità Unità di Apprendimento A1 1 1 Cosa è una base di dati In ogni modello di organizzazione della vita dell uomo vengono trattate informazioni Una volta individuate e raccolte devono
DettagliOrganizzazione delle informazioni: Database
Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)
DettagliCorso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a. 2010-2011
Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a. 2010-2011 2011 Docente: Gigliola Vaglini Docente laboratorio: Alessandro Lori 1 Obiettivi del corso Imparare
DettagliBasi di Dati e Microsoft Access
Basi di Dati e Microsoft Access Lun: 16-18 e Mer: 14-17 Alessandro Padovani padoale@email.it Database: definizione Un database (DB) è una collezione di informazioni organizzata in gruppi, che consentono
DettagliCorso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati
Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente
DettagliProgettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1]
Progettazione di basi di dati Progettazione di basi di dati Requisiti progetto Base di dati Struttura Caratteristiche Contenuto Metodologia in 3 fasi Progettazione concettuale Progettazione logica Progettazione
DettagliLezione 2. Il modello entità relazione
Lezione 2 Il modello entità relazione Pag.1 Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste
DettagliIntroduzione alle basi di dati (prima parte)
Introduzione alle basi di dati (prima parte) Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2007/2008
DettagliBasi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER
Basi di Dati Progettazione del Modello ER Dai requisiti allo schema ER Entità, relazioni e attributi non sono fatti assoluti dipendono dal contesto applicativo Nella pratica si fa spesso uso di una strategia
DettagliUN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database
UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di
DettagliUniversità degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi
Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire
DettagliBasi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale
Basi di Dati e Sistemi Informativi Progettazione logica: Il modello relazionale Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione Basato sul lavoro di Codd (~1970) E attualmente
DettagliCorso di Basi di Dati. Linguaggi per basi di dati. Linguaggi per basi di dati. Linguaggi per basi di dati: Algebra Relazionale
Corso di Basi di Dati Linguaggi per basi di dati: lgebra Relazionale Donatella Gubiani Linguaggi per basi di dati Si possono distinguere diversi tipi di linguaggi per la gestione dei dati: Linguaggio di
DettagliDIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età
PROGETTAZIONE LOGICA 7í0 Progettazione logica Obiettivo: ëtradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed eæciente Input: Output: æ schema concettuale
DettagliAttributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota
Attributi e domini Assumiamo un universo infinito numerabile U = {A 0, A 1, A 2...} di attributi. Denotiamo gli attributi con A, B, C, B 1, C 1... e gli insiemi di attributi con X, Y, Z, X 1,... per brevità
DettagliTesti di riferimento. Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione)
2.1b: DB e DBMS Testi di riferimento Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione) Altri testi di consultazione e approfondimento
DettagliIntroduzione al corso
Introduzione al corso Sistemi Informativi L-B Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Versione elettronica: introduzione.pdf Sistemi Informativi L-B Docente Prof. Paolo Ciaccia
DettagliLABORATORIO. 2 Lezioni su Basi di Dati Contatti:
PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE Gennaro Cordasco e Rosario De Chiara {cordasco,dechiara}@dia.unisa.it Dipartimento di Informatica ed Applicazioni R.M. Capocelli Laboratorio
DettagliStrumenti di modellazione. Gabriella Trucco
Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell
DettagliMetodologie per la Progettazione Concettuale
Metodologie per la Progettazione Concettuale Raccolta e analisi dei requisiti Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare sinonimi
DettagliProgettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni
LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al
DettagliInformatica per le discipline umanistiche 2 lezione 10
Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione
DettagliDefinizione di domini
Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain
DettagliBasi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2
Basi di dati Concetti Introduttivi ESEMPIO Fisica, Analisi, Informatica Entità Relazioni Interrogazioni Database 2 Tabella (I) STUDENTE Attributi Data di Nascita Indirizzo Matricola Luca Neri 27/10/1980
DettagliMODELLO E/R. Modellazione dei dati
MODELLO E/R Maria Mirto Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi caratterizzanti e i legami intercorrenti
DettagliIl Modello Relazionale
Il Modello Relazionale Basi di dati 1 Il Modello Relazionale Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il Modello Relazionale Basi di dati 2 Introduzione Il modello
Dettagli