analisi-disegno.com


Livelli modellazione dati - concettuale, logico, fisico

I livelli

Quando si parla di modelli dati, si fa spesso riferimento a termini quali "concettuale", "logico" e "fisico". E spesso ci si confonde, in quanto questi termini significano cose diverse per persone diverse. O in strumenti diversi. Puntualizziamo:

Per la progettazione del livello fisico è essenziale una competenza specialistica, tipica di un progettista DB. Per la definizione dei modelli concettuale e logico iniziale, invece, è sufficiente la conoscenza di tecniche di modellazione basilari, che si basano sull'analisi del significato dei dati (Entity-Relationship, normalizzazione).

La tabella seguente sintetizza le differenze tra i livelli:

Livello Concettuale Logico Fisico
Conoscenza primaria necessaria Significato dei dati Significato dei dati Caratteristiche DBMS
Ruolo del modello nei progetti Preliminare Intermedio Prodotto finale
Ottimizzazioni (per performance, contenimento spazio ecc.) Nessuna Il modello logico iniziale è pienamente normalizzato, cioè privo di ridondanze. Può essere successivamente ottimizzato sulla base delle esigenze funzionali. Quelle opportune per le esigenze funzionali
Legame con tecnologia DBMS Nessuno Medio Elevato
Tecniche di progettazione primarie Entity-Relationship Entity-Relationship, normalizzazione Ad hoc, mirate all'ottimizzazione degli accessi e degli spazi

Precisione del modello dati logico

Il modello logico è l'input per la progettazione fisica dei Data Base, ed è opportuno che raggiunga il massimo livello di precisione possibile. (Naturalmente, il massimo livello di precisione possibile viene raggiunto progressivamente, nell'ambito di un progetto.) Un modello logico preciso comprende:

Il modello logico deve, cioè, contenere tutte le informazioni necessarie che non sono legate a competenze di natura tecnica, ma che derivano invece dalla conoscenza approfondita dell'ambito applicativo, e quindi del significato dei dati.


Creazione del modello dati concettuale

Il modello dati può essere costruito in modo "top-down" o "bottom up". Il risultato può essere identico, ma le modalità per arrivarci sono diverse.

Un modello è costruito in modo "top-down" se nasce in modo unitario, prescindendo da analisi preventive di porzioni del sistema ("subject area").

È invece costruito in modo "bottom up" se il modello finale è il frutto dell'aggregazione di più modelli settoriali.

Ad esempio, in un progetto che utilizza i casi d'uso per la specifica dei requisiti, il modello dei dati può essere costruito in due modi alternativi:

  1. Prima di avere definito in dettaglio i casi d'uso, in modo unitario, viene creata una versione iniziale del modello. Successivamente, man mano che i singoli casi d'uso vengono dettagliati, il modello unitario viene arricchito e completato con nuovi attributi ed associazioni.
  2. Per ogni caso d'uso già dettagliato, viene definito un modello dei dati parziale, o "vista locale". Il modello unitario verrà derivato passo passo, attraverso l'integrazione progressiva delle viste locali create per ogni caso d'uso.

analisi-disegno.com , servizi e materiali per lo sviluppo dei sistemi software, a cura di Adriano Comai.