Glossario metodologico per la progettazione concettuale della base di dati.
Presentiamo oggi alcuni criteri per tradurre un’informazione in un elemento del modello Entità- Relazione illustrato nell’articolo precedente (leggi qui il Capitolo 1).
Un piccolo riassunto del Capitolo 1:
- Se il concetto è significativo o descrive classi di oggetti per il contesto applicativo in una base di dati si chiama entità;
- Se il concetto è descrivibile tramite un dato elementare, non ha nessuna struttura complessa o non è interessante nessun’altra sua proprietà si chiama attributo (di un altro concetto);
- Se il concetto è in grado di associare due o più entità sarà una relazione;
- Se uno o più concetti sono casi particolari di un altro allora ci troviamo davanti a una
Strategie di approccio al progetto
Lo schema concettuale viene progressivamente raffinato e arricchito attraverso una serie di trasformazioni ed eventuali correzioni. Ci sono quattro tipi di strategie per lo sviluppo di uno schema concettuale entità-relazione:
- Strategia top-down
- Si parte da uno schema iniziale che descrive tutte le specifiche con pochi concetti molto astratti e si procede attraverso una serie di raffinamenti successivi, ovvero attraverso delle trasformazioni che aumentano il dettaglio dei vari concetti.
- Si procede proprio costruendo diversi piani di raffinamento del processo, ognuno di questi piani contiene le stesse informazioni ma strutturate in maniera più complessa, perché più dettagliate.
- Le trasformazioni possono essere di vario tipo, così come rappresentate in figura sottostante.
La strategia top-down ha vantaggi e svantaggi applicativi.
- Vantaggio: si possono descrivere inizialmente tutte le specifiche dei dati trascurandone i dettagli, per poi entrare nel merito di un concetto alla volta.
- Svantaggio: è possibile solo quando si possiede già una visione globale e astratta di tutte le componenti del sistema.
- Strategia bottom-up
- Si progetta dal particolare al generale.
- Si parte dal descrivere le singole componenti del sistema attraverso la suddivisione e descrizione in componenti sempre più piccoli.
- Si formeranno così degli schemi concettuali, rappresentativi delle componenti, più o meno articolati.
- I vari schemi così ottenuti vengono poi fusi fino a giungere attraverso l’integrazione di tutte le componenti allo schema concettuale finale.
- Anche qui si procede compiendo delle trasformazioni:
– quando si individua nelle specifiche una classe di oggetti con proprietà comuni si genera un’Entità.- quando si individua un legame tra due Entità si genera una Relazione, e così via come rappresentato in tabella.
Anche la strategia bottom-up ha vantaggi e svantaggi applicativi, vediamoli nel dettaglio:
- Vantaggi: si adatta a una decomposizione del problema in componenti più semplici. Il fatto di costruire schemi concettuali diversi agevola la suddivisione del lavoro tra progettisti diversi.
- Svantaggi: si perde un po’ la visione d’insieme del progetto; richiede operazioni di integrazione di schemi concettuali diversi; è difficile da gestire in situazioni articolate (si perde molto tempo).
- Strategia inside-out
- È un caso particolare della strategia bottom-up.
- Si individuano inizialmente solo alcuni concetti importanti.
- Poi si rappresentano i concetti che sono in diretta relazione con i concetti importanti rilevati in precedenza.
- Si procede via via allontanandosi attraverso una navigazione tra specifiche (g. Primo step: si scegli l’entità da analizzare: IMPIEGATO + suoi attributi. Secondo step: si indaga la PARTECIPAZIONE – relazione – di IMPIEGATO al PROGETTO. Terzo step: si indaga la correlazione tra IMPIEGATO e DIPARTIMENTO – con i suoi attributi -, quindi la DIREZIONE e l’AFFERENZA – che è ancora una relazione. Quarto step: partendo dall’entità DIPARTIMENTO si rappresentano le sedi dell’azienda – entità SEDE e i suoi attributi – e l’appartenenza dei dipartimenti alle sedi – relazione COMPOSIZIONE). La figura sottostante chiarisce visivamente il processo e le sue correlazioni logiche.
Vantaggi e svantaggi della strategia insiede-out:
- Vantaggi: non richiede passi di integrazione.
- Svantaggi: bisogna esaminare tutte le volte le specifiche per individuare concetti non ancora rappresentati e descrivere i nuovi concetti nel dettaglio.
- Strategia mista
- Cerca di combinare i vantaggi della strategia top-down e bottom-up.
- Permette di dividere un problema complesso in sottoproblemi e poi procedere per raffinamenti successivi.
- Si costruisce uno schema semplice a livello astratto (concetti principali attraverso una semplice ispezione), il quale permette di avere una visione unitaria dell’intero progetto e di favorire la fase di integrazione degli schemi sviluppati invece separatamente.
Primo step: si elabora lo schema base.
Secondo step: si considera lo schema del primo step e si procede per raffinamenti (strategia top-down) oppure si amplia lo schema aggiungendo concetti non ancora rappresentati (strategia bottom-up).
La strategia mista per la progettazione concettuale di una base di dati appare essere quella più funzionale perché in assoluto la più flessibile e adattabile ai vari contesti. Unisce infatti la possibilità di scomporre in sotto problemi e poi procedere per raffinamenti; è utile quando non si ha la possibilità di avere tutti i dati o se ne ha una conoscenza a livelli di dettaglio non omogenei.