Metodologia di Progettazione database .Metodologia di progettazione database relazionali I&T...

download Metodologia di Progettazione database .Metodologia di progettazione database relazionali I&T Informatica

of 37

  • date post

    21-Dec-2018
  • Category

    Documents

  • view

    212
  • download

    0

Embed Size (px)

Transcript of Metodologia di Progettazione database .Metodologia di progettazione database relazionali I&T...

Metodologiadi

Progettazione database relazionali

I&T Informatica e Telecomunicazioni S.p.AVia dei Castelli Romani, 900040 Pomezia (Roma) ItalyTel. +39-6-911611Fax +39-6-91601162http://www.iet.it

Marketing Operativo e InnovazioneHi Tech - Knowledge Technology

Relatore: Nino RUSSOa.russo@ietit.com

Informatica e Telecomunicazioni S.p.A.

Febbraio 1999

Metodologia di progettazione database relazionali

2I&T Informatica e Telecomunicazioni SpA

Indice

1 Introduzione alla progettazione 3

1.1 Ciclo di vita dei sistemi informativi 31.2 Metodologia e fasi di progettazione 4

1.2.1 Progetto concettuale del database 51.2.1.1 Livello vista 51.2.1.2 Schemi ed Istanze 6

1.2.2 Progetto logico del database 61.2.3 Progetto fisico del database 71.2.4 Indipendenza dei dati 7

1.3 Prodotti delle varie fasi della progettazione 7

2 Progettazione concettuale 10

2.1 Raccolta e analisi dei requisiti 102.2 Modello Entit-Relazione 122.3 Criteri generali di rappresentazione 142.4 Documentazione dei diagrammi Entit-Relazione 142.5 Utilit dei diagrammi Entit-Relazione 152.6 Strategie di progetto 16

2.6.1 Strategia top-down 162.6.2 Strategia bottom-up 172.6.3 Strategia inside-out 182.6.4 Stategia mista 18

2.7 Qualit di uno schema concettuale 182.8 Metodologia generale 19

3 Progettazione logica 22

3.1 Analisi delle prestazioni su schemi E-R 233.2 Ristrutturazione di schemi E-R 243.3 Modello dati logico 253.4 Modello dati relazionale 263.5 Traduzione verso il modello relazionale 263.6 Vincoli di integrit 27

3.6.1 Vincoli di chiave 273.6.2 Vincoli di integrit referenziale 27

3.7 Algebra relazionale 283.7.1 Operatori di base 283.7.2 Operatori derivati 29

3.8 Normalizzazione dei dati 303.8.1 Ridondanza e anomalie 303.8.2 Dipendenze 313.8.3 Scomposizioni 313.8.4 Prima forma normale 323.8.5 Seconda forma normale 333.8.6 Terza forma normale 333.8.7 Linee guida sulla normalizzazione 33

3.9 Implementazione dello schema logico 35

4 Progettazione fisica 36

Metodologia di progettazione database relazionali

3I&T Informatica e Telecomunicazioni SpA

1 Introduzione alla progettazione

Progettare una base di dati (o banca dati o database) significa definire struttura, caratteristiche econtenuto: si tratta di un processo nel quale bisogna prendere molte decisioni strategiche e luso diopportune metodologie fondamentale per la realizzazione di un prodotto di alta qualit.La metodologia cui fa riferimento la I&T articolata in tre fasi: la progettazione concettuale, laprogettazione logica e la progettazione fisica.

1.1 Ciclo di vita dei sistemi informativi

La progettazione di una base di dati costituisce solo una componente del processo di sviluppo,allinterno di una organizzazione, di un sistema informativo complesso e va quindi inquadrata in uncontesto pi ampio, quello del ciclo di vita dei sistemi informativi.Come illustrato in figura 1.1, il ciclo di vita di un sistema informativo comprende, generalmente, leseguenti attivit.

Studio di fattibilit. Serve a definire, in maniera per quanto possibile precisa, i costi delle variealternative possibili e a stabilire le priorit di realizzazione delle varie componenti del sistema.

Raccolta e analisi dei requisiti. Consiste nella individuazione e nello studio delle propriet edelle funzionalit che il sistema informativo dovr avere. Questa fase richiede una interazionecon gli utenti del sistema e produce una descrizione completa, ma generalmente informale, deidati coinvolti (anche in termini di previsione sulla loro frequenza). Vengono inoltre stabiliti irequisiti software e hardware del sistema informativo.

Studio difattibilit

Raccolta e analisidei requisiti

Progettazione

Implementazione

Validazione ecollaudo

Funzionamento

Fig. 1.1 Ciclo di vita di un sistema informativo

Metodologia di progettazione database relazionali

4I&T Informatica e Telecomunicazioni SpA

Progettazione. Si divide generalmente in progettazione dei dati e progettazione delleapplicazioni. Nella prima si individua la struttura e lorganizzazione che i dati dovranno avere,nellaltra si definiscono le caratteristiche dei programmi applicativi. Le due attivit sonocomplementari e possono procedere in parallelo o in cascata. Le descrizioni dei dati e deiprogrammi prodotte in questa fase sono formali e fanno riferimento a specifici modelli.

Implementazione. Consiste nella realizzazione del sistema informativo secondo la struttura e lecaratteristiche definite nella fase di progettazione. Viene costruita e popolata la base di dati eviene sviluppato il codice dei programmi.

Validazione e collaudo. Serve a verificare il corretto funzionamento e la qualit del sistemainformativo. La sperimentazione deve prevedere, per quanto possibile, tutte le condizionioperative.

Funzionamento. In questa fase il sistema informativo diventa operativo e richiede, a meno dimalfunzionamenti o revisioni delle funzionalit del sistema, solo operazioni di gestione emanutenzione.

Va detto che accanto alle attivit citate, viene oggi spesso effettuata anche unattivit diprototipizzazione, che consiste nelluso di specifici strumenti software per la realizzazione rapida diuna versione semplificata del sistema informativo, con la quale sperimentare le sue funzionalit. Laverifica del prototipo pu portare a una modifica dei requisiti e una eventuale revisione del progetto.Le basi di dati costituiscono in effetti solo una delle componenti di un sistema informativo chetipicamente include anche programmi applicativi, le interfacce con lutente e altri programmi diservizio. Comunque, il ruolo centrale che i dati hanno in un sistema informativo giustifica unostudio autonomo relativo alla progettazione delle basi di dati e che si individua nella terza fase delciclo di vita riportato in figura 1.1. Con questo approccio, in linea di principio, viene primaprogettata la base di dati e, successivamente, le applicazioni che la utilizzano.

1.2 Metodologia e fasi di progettazione

Una metodologia di progettazione una combinazione di una serie di passi e di propriet chepermettono di ottenere prodotti di alta qualit. In buona sostanza, una metodologia di progettazioneconsiste in:

una decomposizione in passi successivi indipendenti dellintera attivit di progetto, una serie di strategie da seguire nei vari passi e alcuni criteri per la scelta in caso di alternative, alcuni modelli di riferimento per descrivere i dati di ingresso e uscita delle varie fasi.

Le propriet che una metodologia deve garantire sono principalmente:

la generalit rispetto alle applicazioni e ai sistemi in gioco (e quindi la possibilit di utilizzoindipendente dal problema allo studio e dagli strumenti a disposizione),

la qualit del prodotto in termini di correttezza, completezza ed efficienza rispetto alle risorseimpiegate,

la facilt duso sia delle strategie che dei modelli di riferimento.

Nel corso degli anni, nellambito delle basi di dati, si consolidata una metodologia di progettoarticolate in tre fasi principali da effettuare in cascata. Essa si fonda su un principio molto semplice

Metodologia di progettazione database relazionali

5I&T Informatica e Telecomunicazioni SpA

ma efficace: quello di separare in maniera netta le decisioni relative a cosa rappresentare in unabase dati (prima fase), da quelle relative a come farlo (fasi successive).Ogni fase si riferisce a un livello di astrazione nella rappresentazione dei dati e delle relazioni traessi, e ha lo scopo di separare le attivit di risoluzione dei problemi e di garantire la possibilit dimodificare delle soluzioni adottate ai livelli inferiori senza dover riprogettare quanto definito neilivelli superiori.A ciascuna fase di progettazione corrispondono diversi modelli per la rappresentazione dei dati,ovvero tecniche per la rappresentazione degli aspetti rilevanti della realt da modellare, definite dastrumenti e vincoli specifici. La rappresentazione generata seguendo le regole del modello vienedefinita schema (vedi fig. 1.2).

Le fasi riconosciute fondamentali nella progettazione di un database sono le seguenti: progettoconcettuale, progetto logico e progetto fisico (vedi figura 1.3).

1.2.1 Progetto concettuale del database

Obiettivo della fase di progettazione concettuale la rappresentazione completa (formale) dellarealt di interesse (informale) ai fini informativi, in maniera indipendente da qualsiasi specificoDBMS (Database Management System) e quindi senza tenere conto degli aspetti implementativi.Tale rappresentazione, detta schema concettuale (che fa riferimento a un modello concettuale deidati), la rappresentazione pi astratta, ovvero pi vicina alla logica umana, nella definizione didati e relazioni.I modelli dei dati usati nella progettazione concettuale vengono definiti modelli semantici. Nelcorso degli anni sono stati definiti diversi modelli dei dati ad iniziare da quelli reticolari egerarchici seguiti da quello entit-relazione e infine quelli orientati agli oggetti e alla logica.

1.2.1.1 Livello vistaUna vista, sottoschema, o subschema, una parte del database concettuale o unastrazione di partedel database concettuale. In un certo senso, la costruzione delle viste linverso del processo diintegrazione di un database: per ogni collezione dei dati che hanno contribuito alla costruzione deldatabase concettuale globale, possiamo costruire una vista che contenga proprio quei dati. Le vistesono importanti anche per far valere la sicurezza in un sistema di database, permettendo solo agliutenti che ne hanno lautorizzazione di osservare i sottoinsiemi dei dati.Spesso