INTEGRAZIONE DI SCHEMI E/R La principale difficoltà nell integrazione di schemi è quella di scoprire le differenze degli schemi che devono essere integrati. Le differenze sono dovute alle seguenti cause: Punti di vista In fase di progettazione i progettisti modellano lo stesso oggetto dal proprio punto di vista. Gli oggetti possono essere visti ad un diverso livello di astrazione o rappresentati usando concetti differenti. Equivalenze tra i costrutti del Modello I modelli concettuali hanno una vasta varietà di strutture di rappresentazione perciò permettono differenti rappresentazioni equivalenti per la stessa realtà. Specifiche di progetto incompatibili Errori commessi durante il progetto delle viste sui nomi, le strutture ed i vincoli di integrità possono produrre input errati per l'attività di integrazione. Durante l'integrazione questi errori dovrebbero essere rilevati e corretti. Ognuna di queste cause può creare dei conflitti, cioè differenti rappresentazioni dello stesso concetto. INTEGRAZIONE DI SCHEMI 1
INTEGRAZIONE di Schemi: esempio Punti di vista differenti La reazione tra IMPIEGATO e PROGETTO è percepita come associazione nel primo schema e come una combinazione di associazioni nel secondo SCHEMA 1 SCHEMA 2 IMPIEGATO IMPIEGATO PROGETTO DIPARTIM. PROGETTO Equivalenza tra costrutti La relazione tra libro ed editore è rappresentata da un associazione tra ed nel primo schema e come un attributo dell entità nel secondo. La partizione delle persone in maschi e femmine è rappresentata da una generalizzazione nel primo schema e da un attributo nel secondo. DONNA PERSONA UOMO PERSONA SESSO Specifiche incompatibili Il primo schema indica che ogni impiegato è sempre assegnato ad un unico progetto, mentre il secondo schema indica che ogni impiegato lavora su più progetti IMPIEGATO PROGETTO IMPIEGATO PROGETTO INTEGRAZIONE DI SCHEMI 2
INTEGRAZIONE DI SCHEMI: Un approccio Schema 1 Schema2 Analisi dei conflitti Vengono individuate le differenze nella rappresentazione della stessa realtà nei due schemi Schema 1 Schema2 Lista conflitti Risoluzione dei conflitti Uno o entrambi gli schemi sono modificati per risolvere o eliminare ogni conflitto Schema 1 Schema2 Proprietà Interschema Fusione degli schemi Gli schemi sono sovrapposti ed è ottenuto uno schema preliminare Schema Globale Integrato INTEGRAZIONE DI SCHEMI 3
ANALISI DEI CONFLITTI DI NOMI Analisi e confronto dei nomi dei concetti nei due schemi allo scopo di unificare la scelta dei nomi nello schema integrato I conflitti di nomi sono causati da: Sinonimi Lo stesso oggetto del dominio applicativo è rappresentato con differenti nomi nei due schemi Omonimi Oggetti differenti del dominio applicativo sono rappresentati con lo stesso nome nei due schemi Per scoprire sinonimi ed omonimi il progettista deve analizzare: Similarità di concetti (i concetti possono essere sinomini) concetti con differenti nomi hanno proprietà e vincoli comuni nei due schemi. Discordanza di concetti (i concetti possono essere omonimi) concetti con lo stesso nome hanno proprietà e vincoli differenti nei due schemi. Concetto Proprietà Vincoli Entità Attributi dell entità, associazioni adiacenti e gerarchie di generalizzazioni Associazione Attributi dell associazione, entità partecipanti Attributo Entità o associazioni alle quali gli attributi appartengono Cardinalità delle associazioni alle quali l entità partecipa; identificatori Cardinalità delle entità partecipanti Cardinalità, dominio, identificatori che includono l attributo INTEGRAZIONE DI SCHEMI 4
RISOLUZlONE DEl CONFLITTl Dl NOMI Dopo aver rilevato le similarità e le discordanze tra concetti possono essere effettuati vari tipi di modifica sugli schemi (scenari). Rinomina di concetti: i concetti sono rinominati se viene rilevato un sinonimo o un omonimo. Se due concetti Cl e C2 sono sinonimi, allora si seleziona uno di essi, ad esempio Cl, e si rinomina C2 come Cl. In caso di omonimia, si cambia il nome del concetto in uno dei due schemi qualora si verifichi una incompatibilità tra i due concetti o una relazione di generalizzazione. Si ottiene così l'unificazione dei nomi : due concetti con lo stesso nome rappresentano lo stesso oggetto del dominio applicativo. Proprietà interschema: esprimono eventuali vincoli mutui tra concetti di schemi differenti. Esempio Schema 1 Schema 2 Conflitto di nomi IMPIEGATO MATR. FUNZIONARIO MATR. Scenari I nomi sono considerati sinonimi e si cambia il nome in Schema 2 I nomi sono riferiti a concetti differenti, legati da una relazione di subset (proprietà interschema) in (a) e da una generalizzazione (proprietà interschema) in (b) IMPIEGATO MATR. IMPIEGATO MATR. FUNZIONARIO (a) IMPIEGATO MATR. DIPENDENTE IMPIEG. FUNZION. (b) INTEGRAZIONE DI SCHEMI 5
ANALISI E SOLUZIONE DEI CONFLITTI STRUTTURALI Con l'analisi dei conflitti strutturali i concetti con lo stesso nome negli schemi di input sono confrontati per vedere se essi possono essere integrati. Si distinguono le seguenti categorie di concetti.. Identici: hanno esattamente la stessa struttura e le stesse proprietà Compatibili: hanno differenti strutture o proprietà che non sono contraddittorie. Incompatibili: hanno proprietà che sono contraddittorie. Le sorgenti di incompatibilità devono essere eliminate prima dell'integrazione degli schemi. Alcune ìncompatibilità del modello ER sono le seguenti: 1. Cardinalità differenti per lo stesso attributo o entità 2. ldentificatori. differenti: un identificatore in uno schema non è un identificatore nell'altro schema. 3. Relazione di subset invertita: l entità A è un subset dell entità B in uno schema, mentre B è un subset di A nell'altro schema. Possibili soluzioni all incompatibilità includono: - la selezione di una rappresentazione - la costruzione di una rappresentazione comune in modo tale da esprimere entrambi i vincoli dei due schemi INTEGRAZIONE DI SCHEMI 6
ESEMPIO: Schema1 Struttura della libreria privata dei ricercatori INTERES. ARGOMENTO AUTORE SCRIVE COG RICHIESTA PUBBLICAZ. PAROLECHIAVE EMAIL RICERCATORE INTERES.P INTERES.L NUMERO PUBBLICA Descrizione di alcuni concetti AUTORE: autori di interesse per il ricercatore PUBBLICAZIONE: tenute dal ricercatore nel suo studio (tipicamente articoli ottenuti dagli autori) ARGOMENTO: area di ricerca degli autori RICHIESTA: richiesta di una certa pubblicazione, effettuta da un certo ricercatore all autore INTEGRAZIONE DI SCHEMI 7
ESEMPIO: Schema2 Struttura della libreria centrale di un dipartimento RICERCATORE CODICE ACQUISTO COG POSIZIONE ARGOMENTO CONCERNE PUBBLICAZ. DISPONIB. TRATTA (t,e) IN RIVISTA ATTI PUBBLICA (0,1) ARTICOLO (0,1) INCLUSO AUTORI AUTORI Descrizione di alcuni concetti ARTICOLO: lavori pubblicati in riviste o atti conservati nella biblioteca PUBBLICAZIONE: pubblicazioni presenti nella libreria ARGOMENTO: argomento delle pubblicazioni ACQUISTO: indica il ricercatore che ha comprato (con i propri fondi) la pubblicazione INTEGRAZIONE DI SCHEMI 8
ESEMPIO: ANALISI E SOLUZIONE DEI CONFLITTI DI NOMI Discordanza di concetti: 1. L'entità ARGOMENTO compare in entrambi gli schemi con differenti proprietà: in Schema 1 si riferisce alle aree di ricerca di interesse degli autori mentre nello Schema 2 si riferisce agli argomenti delle pubblicazioni. Si risolve questo caso di omonimia rinominando in Schema 1 ARGOMENTO come AREARICERCA. 2. L'entità PUBLICAZIONE in Schema 1 si riferisce ad un singolo articolo richiesto agli autori mentre in Schema 2 si riferisce ad una generica pubblicazione comprata da un ricercatore. Tale omonimia in Schema 1 si risolve rinominando PUBLICAZIONE come ARTICOLO. Similarità di concetti: 1. L'attributo PAROLECHIAVE dell'entità PUBBLICAZIONE in Schema 1 e l'associazione CONCERNE tra l'entità ARGOMENTO e PUBBLICAZIONE in Schema 2 hanno la stessa cardinalità. Tale sinonimia si risolve rinominando in Schema 1 PAROLECHIAVE come ARGOMENTO. INTEGRAZIONE DI SCHEMI 9
ESEMPIO: ANALISI E SOLUZIONE DEI CONFLITTI STRUTTURALI Compatibilità di concetti: 1. Il concetto RICERCATORE è una entità in entrambi gli schemi benché con differenti attributi e associazioni. Tale entità rappresenta lo stesso oggetto e non necessita attività di ristrutturazione. 2. Il concetto AUTORE è un attributo in Schema 2 ed una entità in Schema 1. Tale concetto dovrebbe essere trasformato in una entità in Schema 2. 3. Il concetto ARGOMENTO è un attributo in Schema 1 (infatti è l attributo PAROLECHIAVE di PUBBLICAZIONE) e una entità in Schema 2. Tale concetto dovrebbe essere trasformato in una entità in Schema 1. Nei casi 2 e 3 vengono introdotte anche opportune associazioni Incompatibilità di concetti: 1. La partecipazione dell entità nell associazione PUBBLICA è 1 in Schema 1 e 0 in Schema 2. Nello Schema 2 sono inclusi anche gli editori che non hanno pubblicato nessuno dei libri conservati nella libreria, mentre in Schema 1 tali compagnie sono escluse. Si seleziona la prima alternativa perché meno restrittiva. 2. Lo Schema 1 include un autore (tramite l entità AUTORE) se un ricercatore è interessato ad una sua pubblicazione. Nello Schema 2 AUTORE è descritto come attributo di pubblicazione (entità ARTICOLO) e quindi vengono riportati solo gli autori dei libri disponibili in libreria. Si seleziona la prima alternativa perché meno restrittiva. INTEGRAZIONE DI SCHEMI 10
ESEMPIO: SCHEMI DOPO LA SOLUZIONE DEI CONFLITTI Schema 1) INTERES. AREARICERCA COG EMAIL Schema 2) AUTORE RICHIESTA RICERCATORE SCRIVE INTERES.P INTERES.L ARTICOLO ART.ARG. NUMERO RICERCATORE ARGOMENTO PUBBLICA COG POSIZIONE ARGOMENTO CONCERNE ACQUISTO PUBBLICAZ. DISPONIB. TRATTA IN (0,1) ARTICOLO RIVISTA INCLUSO (0,1) (t,e) ATTI SCRITTO-L PUBBLICA SCRITTO-A AUTORE INTEGRAZIONE DI SCHEMI 11
FUSIONE DI VISTE La fusione delle viste agisce su due schemi di input e produce uno schema che include tutti i concetti rappresentati nei due schemi di input. A questo passo del progetto tutti i conflitti sono stati risolti: la fusione è una semplice sovrapposizione di concetti: 1. Le entità che hanno una piena corrispondenza, come ad esempio, sono sovrapposte direttamente. 2. Le entità che corrispondono allo stesso oggetto del mondo reale ma che hanno. differenti attributi, come ad esempio RICERCATORE, sono sovrapposte considerando l unione dei loro attributi e riportando tutti gli identificatori. 3. Se tra le proprietà interschema vi sono delle gerarchie di generalizzazione esse vengono inserite a questo punto. 4. Tutte le associazioni e le gerarchie di generalizzazione presenti nei due schemi di input sono riportate nello schema risultante. Le proprietà interschema possono anche portare ad una ristrutturazione, cancellazione o aggiunta di concetti nello schema risultante. Consideriamo ad esempio le entità ARGOMENTO e AREARICERCA. Nello Schema 2 le aree di ricerca possono essere suddivise in argomenti, che rappresentano una più fine suddivisione delle discipline. Poi si aggiunge un legame logico tra le entità ARGOMENTO e AREARICERCA introducendo un'associazione one-to-many tra di esse. INTEGRAZIONE DI SCHEMI 12
ESEMPIO: SCHEMA GLOBALE DOPO L INTEGRAZIONE INTERES.P EMAIL RICERCATORE CODICE ACQUISTO ARGOMENTO CONCERNE PUBBLICAZ. TRATTA (t,e) IN RIVISTA ATTI (0,1) ARTICOLO INCLUSO (0,1) SCRITTO-A AUTORE COG POSIZIONE INTERESSA_L DISPONIB. PUBBLICA SCRITTO-L RICHIESTA INTERES. INCLUDE AREARICERCA INTEGRAZIONE DI SCHEMI 13