G. Mecca – – Università della Basilicata Basi di Dati Progettazione di Basi di Dati: Introduzione versione 2.0 Questo lavoro è concesso.

Slides:



Advertisements
Presentazioni simili
Informatica II – Basi di Dati (08/09) – Parte 1
Advertisements

Algoritmi e Strutture Dati
Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
Tecnologie di Sviluppo per il Web
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
Metodologie di Programmazione = decomposizione basata su astrazioni
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web Valutazione della Qualità del Codice HTML versione 2.0 Questo.
G. Mecca – – Università della Basilicata Basi di Dati Sistemi per Basi di Dati Relazionali: Modello Logico Concetti Fondamentali versione.
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web Cascading Style Sheets (CSS): Introduzione versione 2.0 Questo.
G. Mecca – – Università della Basilicata Basi di Dati Sistemi per BD Relazionali: Modello Fisico Concetti Fondamentali versione 2.0 Questo.
Modello Concettuale dei Dati: Concetti Fondamentali
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web Cascading Style Sheets (CSS): Dettagli e Approfondimenti versione.
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web XHTML Principali Moduli versione 2.0 Questo lavoro è concesso.
Tecnologie di Sviluppo per il Web
Modello Concettuale Dettagli e Approfondimenti
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web Cascading Style Sheets (CSS): Concetti Fondamentali versione.
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web XML: Dettagli e Approfondimenti versione 2.0 Questo lavoro è
Progettazione e Forme Normali
G. Mecca – – Università della Basilicata Basi di Dati Sistemi per BD Relazionali: Modello Fisico Dettagli e Approfondimenti versione 2.0.
G. Mecca – – Università della Basilicata Basi di Dati Tecnologia di un DBMS: Concorrenza e Affidabilità Concetti Avanzati versione 2.0.
Sistemi per BD Relazionali: Modello Fisico Concetti Avanzati
G. Mecca – – Università della Basilicata Basi di Dati Progettazione Fisica e Tuning: Concetti Avanzati versione 2.0 Questo lavoro è concesso.
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Programmazione Procedurale in Linguaggio C++
La Normalizzazione. 27 January, slide 2 Le nuove tecnologie Software Tabelle, unicità e chiavi Ciascuna riga di una tabella deve esere unica Ci.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
1 © Alberto Montresor Algoritmi e Strutture Dati Capitolo 7 - Tabelle hash Alberto Montresor Università di Trento This work is licensed under the Creative.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
FONDAMENTI DI INFORMATICA III A2A2-1 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO Argomento 2 Approfondimento 2 CARATTERISTICHE E MODELLIZZAZIONE.
Qualità - 1 / 26 Lezione 1 La qualità del prodotto.
G. Mecca – – Università della Basilicata Basi di Dati Sistemi per Basi di Dati Relazionali: Modello Logico Dettagli e Approfondimenti versione.
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.
Modello E-R Generalizzazioni
Metodologia sviluppo KBS Fabio Sartori 12 ottobre 2005.
La progettazione di un sistema informatico
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
UN SEMPLICE PIANO DI MARKETING
RICERCA DI MERCATO PER NON ADDETTI
Note di comunicazione business to business A cura di Bonucchi & Associati srl Questo documento è di supporto a una presentazione verbale. I contenuti potrebbero.
Corso di Basi di Dati Progettazione di Basi di Dati
Sistemi di Elaborazione delle Informazioni Mod.I.
Riconfigurare il diritto dautore. Lipertesto, una necessità di riconfigurazione. Secondo G. P. Landow, lavvento dellipertesto implica la necessità di.
Basi di Dati e Sistemi Informativi
La Normalizzazione. 2 May, slide 2 Le nuove tecnologie Software Normalizzazione Normalizzazione è il processo di semplificazione di un data base.
Lanalisi di settore a cura di Bonucchi & Associati srl Questo documento è di supporto a una presentazione verbale. I contenuti potrebbero non essere correttamente.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Le opportunità di marketing per le PMI offerte dal web 2.0 a cura di Bonucchi e associati Srl Questo documento è di supporto a una presentazione verbale.
Esempi di posizionamento prodotti
Programmazione ad oggetti
Algoritmi e Strutture Dati
Programmazione Procedurale in Linguaggio C++
Informatica Introduzione alle basi di dati Lezione 2 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Master MATITCiclo di vita del Sistema Informativo1 CICLO DI VITA DEL SISTEMA INFORMATIVO.
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.
Standard e strumenti per lo sviluppo del software Marco Carezzano Andrea Andrenacci (ZEROPIU, Business Partner di Telecom Italia) Milano, 2 febbraio 2005.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
Transcript della presentazione:

G. Mecca – – Università della Basilicata Basi di Dati Progettazione di Basi di Dati: Introduzione versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

2 G. Mecca - - Basi di Dati Sommario m Introduzione m Il Processo di Sviluppo dellApplicazione Analisi Modello Concettuale Progettazione m Il Processo di Sviluppo della Base di Dati Qualità della Base di Dati Progettazione della Base di Dati >> Sommario

3 G. Mecca - - Basi di Dati Introduzione m Scopo di questo ciclo di lezioni studiare lanalisi e la progettazione di basi di dati una delle attività fondamentali del progetto di applicazioni su basi di dati m Approccio usato utilizzeremo UML e non il modello entità-relazione tradizionale Progettazione della Base di Dati >> Introduzione

4 G. Mecca - - Basi di Dati Introduzione m Attenzione tradizionalmente: il progetto dei dati è stato considerato unattività separata dal progetto dellapplicazione questo approccio non è coerente con la filosofia della programmazione ad oggetti m Di conseguenza il progetto della base di dati deve essere visto nellambito del prog. dellapplicazione Progettazione della Base di Dati >> Introduzione

5 G. Mecca - - Basi di Dati Processo di Sviluppo dellApplicazione m Applicazioni di complessità medio-alta è necessario un processo di sviluppo sistematico insieme di fasi e modelli m Il punto di partenza i requisiti iniziali (tipicamente incompleti) m Il punto di arrivo il sistema installato e funzionante (da manutenere) Progettazione della Base di Dati >> Il Processo di Sviluppo

6 G. Mecca - - Basi di Dati Il Processo di Sviluppo: Le Attività m Studio di Fattibilità m Analisi dei Requisiti m Progettazione m Sviluppo m Test m Installazione ed Uso m Manutenzione Progettazione della Base di Dati >> Il Processo di Sviluppo

7 G. Mecca - - Basi di Dati Il Processo di Sviluppo m Tradizionalmente metodologie pesanti (molto rigide e prescrittive) processo in cascata: prima di cominciare la fase successiva è necessario completare la precedente processo monolitico è dimostrata linefficacia di questo approccio nello sviluppo del software moderno Progettazione della Base di Dati >> Il Processo di Sviluppo

8 G. Mecca - - Basi di Dati Il Processo di Sviluppo m Recentemente metodologie agili (più flessibili e libere) cicli brevi di progetto e sviluppo in ogni ciclo si svolgono molte delle attività elencate es: Xtreme Programming ( es: RUP (Rational Unified Process) Progettazione della Base di Dati >> Il Processo di Sviluppo

9 G. Mecca - - Basi di Dati Studio di Fattibilità m Fase preliminare non rientra nel ciclo di progetto e sviluppo m Obiettivi valutazione dei costi e dei benefici normalmente richiede unanalisi dei requisiti preliminare è necessario valutare aspetti organizzativi (impatto del sistema inf. sullorganizzazione) si sceglie la piattaforma tecnologica Progettazione della Base di Dati >> Il Processo di Sviluppo

10 G. Mecca - - Basi di Dati Analisi dei Requisiti m Obiettivo capire come funziona la realtà di interesse capire come deve funzionare lapplicazione studiare le funzioni dellapplicazione studiare i dati dellapplicazione m Unutile strumento per cominciare i Casi dUso di UML (Use Cases) carte CRC (Class-Responsiblity-Collabor.) Progettazione della Base di Dati >> Analisi dei Requisiti

11 G. Mecca - - Basi di Dati Modello Concettuale m Descrizione dei dati dellapplicazione diagramma delle classi alto livello di astrazione (ancora indipendente dallimplementazione) m Vari scopi analizzare le relazioni tra i dati (il modello) guidare la progettazione delle classi e dei componenti dellapplicazione guidare la progettazione della base di dati Progettazione della Base di Dati >> Analisi dei Requisiti

12 G. Mecca - - Basi di Dati Progettazione m Obiettivo definire larchitettura dellapplicazione in termini di componenti definire la struttura della base di dati (tabelle, attributi, vincoli) definire la struttura delle classi (proprietà, metodi, visibilità) m Dovrebbe guidare la fase di sviluppo Progettazione della Base di Dati >> Progettazione

13 G. Mecca - - Basi di Dati Il Processo di Sviluppo m In questo corso ci concentriamo esclusivamente sulle attività collegate alla progettazione dei dati visione molto parziale del processo la visione sarà ampliata nellambito del corso di ingegneria del software, in cui le attività descritte qui sono inserite in un processo più ampio (es: RUP) Progettazione della Base di Dati >> Progettazione

14 G. Mecca - - Basi di Dati Il Processo di Sviluppo della BD m Punto di partenza definizione del modello concettuale dei dati m Progettazione Logica dallo schema concettuale viene derivato uno schema logico standard e i necessari schemi esterni m Progettazione Fisica lo schema logico viene sottoposto a verifica e viene ottimizzato m Sviluppo e Manutenzione Progettazione della BD >> Il Processo di Sviluppo della BD

15 G. Mecca - - Basi di Dati Il Processo di Sviluppo della BD m Progettazione logica viene condotta sulla base di un semplice algoritmo sistematico m Progettazione fisica attività mista: progettazione e tuning richiede di valutare le prestazioni difficilmente sistematizzabile conta molto lesperienza Progettazione della BD >> Il Processo di Sviluppo della BD

16 G. Mecca - - Basi di Dati Qualità della Base di Dati m Obiettivo della progettazione della bd produrre una base di dati di qualità m Qualità della base di dati normalizzazione (progettazione logica): garantisce che la base di dati non presenta anomalie efficienza delle operazioni (progettazione fisica) Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità

17 G. Mecca - - Basi di Dati Qualità della Base di Dati m Una tabella non normalizzata Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità studenteannoCorsocorsovotodocente Pinco Palla1Programmazione27F. Totti Pinco Pietro2Programmazione24F. Totti Bruno Pasquale1Basi di Dati30C. Vieri Rossi Paolo2Basi di Dati25C. Vieri Pinco Palla1Tecnologie Web30A. Del Piero Bruno Pasquale1Programmazione21F. Totti NOTA: supponiamo che nella base di dati non ci siano altre tabelle per studenti, corsi ed esami

18 G. Mecca - - Basi di Dati Qualità della Base di Dati m Anomalie di aggiornamento se lanno di corso di uno studente varia, è necessario modificare il valore in diverse ennuple m Anomalie di inserimento se uno studente non ha ancora sostenuto esami non è possibile inserirlo nella base di dati m Anomalie di cancellazione se ad uno studente vengono annullati gli esami sostenuti, dobbiamo cancellarlo Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità

19 G. Mecca - - Basi di Dati Qualità della Base di Dati m Intuitivamente il problema è legato al fatto che la relazione descrive dati relativi a concetti diversi m In particolare gli studenti ed il loro anno di corso i corsi ed il loro docente gli esami sostenuti dagli studenti per i corsi ed il voto riportato Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità

20 G. Mecca - - Basi di Dati Qualità della Base di Dati m Per questa ragione, si dice che la tabella non è normalizzata m Per ottenere una bd normalizzata sarebbe stato necessario progettare le tabelle in modo che ciascuna descriva un concetto ovvero normalizzare per decomposizione la tabella originale Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità

21 G. Mecca - - Basi di Dati Qualità della Base di Dati Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità studenteannoCorsocorsovotodocente Pinco Palla1Programmazione27F. Totti Pinco Pietro2Programmazione24F. Totti Bruno Pasquale1Basi di Dati30C. Vieri Rossi Paolo2Basi di Dati25C. Vieri Pinco Palla1Tecnologie Web30A. Del Piero Bruno Pasquale1Programmazione21F. Totti studenteannoCorso Pinco Palla1 Pinco Pietro2 Bruno Pasquale1 Rossi Paolo2 corsodocente ProgrammazioneF. Totti Basi di DatiC. Vieri Tecnologie WebA. Del Piero studentecorsovoto Pinco PallaProgrammazione27 Pinco PietroProgrammazione24 Bruno PasqualeBasi di Dati30 Rossi PaoloBasi di Dati25 Pinco PallaTecnologie Web30 Bruno PasqualeProgrammazione21

22 G. Mecca - - Basi di Dati Qualità della Base di Dati m Il nostro approccio non ci porremo il problema della normalizzazione descriveremo un algoritmo di progettazione che garantisce di produrre basi di dati normalizzate purché si parta da uno schema concettuale di qualità (corretto e non ridondante) effettueremo verifiche continue di qualità Progettazione della BD >> Il Processo di Sviluppo della BD >> Qualità

23 G. Mecca - - Basi di Dati Sommario m Introduzione m Il Processo di Sviluppo dellApplicazione Analisi Modello Concettuale Progettazione m Il Processo di Sviluppo della Base di Dati Qualità della Base di Dati Progettazione della Base di Dati >> Sommario

24 G. Mecca - - Basi di Dati Termini della Licenza m This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. m Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copia della licenza, è possibile visitare oppure inviare una lettera allindirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.