Cap1 2 3_intro_astrazioni

41
1 Corso sul tema: Concetti rilevanti nella modellazione concettuale dei dati al CSI Piemonte C. Batini Universita’ degli Studi di Milano Bicocca R. Grosso - CSI Piemonte

description

 

Transcript of Cap1 2 3_intro_astrazioni

Page 1: Cap1 2 3_intro_astrazioni

1

Corso sul tema:Concetti rilevanti

nella modellazione concettuale dei dati

al CSI Piemonte

C. BatiniUniversita’ degli Studi di Milano

BicoccaR. Grosso - CSI Piemonte

Page 2: Cap1 2 3_intro_astrazioni

2

Contenuti del corso – primo giorno

• 0. Dott. Bonello – Introduzione al progetto • 1. Introduzione e scopi del corso • 2. Le astrazioni utilizzate nella modellazione

concettuale– Classificazione– Generalizzazione– Aggregazione– Altre astrazioni– Potere espressivo delle astrazioni– I modelli concettuali– Le ontologie

• 3. Il modello Entita’ Relazione – Concetti rilevanti nel modello– Relazioni tra astrazioni e concetti nel modello ER – Vincoli di integrita’

Page 3: Cap1 2 3_intro_astrazioni

3

Contenuti del corso – primo giorno

• 4. Principi di progettazione concettuale – La progettazione top down– La progettazione bottom up– L’astrazione – L’integrazione – L’integrazione/astrazione– La documentazione di schemi: il repository

di schemi concettuali

• Esercizi e studi di caso semplici

Page 4: Cap1 2 3_intro_astrazioni

4

Contenuti del corso – secondo giorno

• 5. L’ attivita’ di ricostruzione del contenuto concettuale della PA Piemontese

• 5.1 La conoscenza disponibile – Gli schemi di base– Gli schemi astratti – Le gerarchie di concetti

• 5.2 La metodologia adottata– Costruzione degli schemi di entita’ – Aggiunta delle gerarchie di generalizzazione– Ricostruzione delle relazioni – Attivita’ di verifica

Page 5: Cap1 2 3_intro_astrazioni

5

Contenuti del corso – terzo giorno

• 6. Approfondimento sugli scopi della modellazione concettuale– Per comprendere la natura della informazione– Per confrontare il contenuto informativo di

diverse basi di dati – Per trovare ridondanze– Per trovare incoerenze – Per riconciliare le diverse rappresentazioni della

informazione– Per costruire una architettura federata della

informazione

Page 6: Cap1 2 3_intro_astrazioni

6

1. Introduzione e scopi del corso

Page 7: Cap1 2 3_intro_astrazioni

7

Scopi

• Utilizzare la progettazione concettuale come strumento per il proprio lavoro

• Comprendere I diversi possibili utilizzi della progettazione concettuale, specialmente nei sistemi informativi cooperativi, come quello in corso di creazione da parte del CSI Piemente per la PA Piemontese.

• Partecipare attivamente nel processo di generazione del Repository di schemi concettuali della PA Piemontese, a partire dal Repository della PA Centrale Italiana.

Page 8: Cap1 2 3_intro_astrazioni

8

• 2. Le astrazioni

Page 9: Cap1 2 3_intro_astrazioni

9

Dato, informazione, conoscenza

• Dato - Rappresentazione codificata di un frammento di realta’ osservata

• Es. 35• Informazione - Significato o intepretazione

associata al dato • Es 35 e’ l’ eta’ di Giovanni• Conoscenza – Informazione che si puo’

estrarre mediante ragionamento dai dati• Es Tutti gli uomini sono mortali, e Socrate e’

un uomo. • Quindi Socrate e’ mortale

Page 10: Cap1 2 3_intro_astrazioni

10

Conoscenza, informazione, dati, astrazioni(da una presentazione della societa’ Exeura)

Page 11: Cap1 2 3_intro_astrazioni

11

Perche’ iniziare con le astrazioni?

• Per abituarci a pensare che nella attivita’ di modellazione possiamo usare un vasto insieme di strumenti e linguaggi, e che non esistono solo le categorie di modellazione del proprio modello usuale.

• Per scegliere ogni volta le categorie di astrazione piu’ utili per un certo scopo.

• Per capire quali sono le relazioni trai vari modelli che utilizziamo.

Page 12: Cap1 2 3_intro_astrazioni

12

Contenuti

• Definizione di astrazione • Un esempio di astrazione• Un insieme di astrazioni• Le ontologie• Confronto tra modelli

Page 13: Cap1 2 3_intro_astrazioni

13

Le astrazioni

• Una astrazione e’ un procedimento concettuale per mezzo del quale creiamo un concetto piu’ generale (e in tel senso piu’ astratto) a partire da concetti piu’ elementari (e in tal senso piu’ concreti), rimuovendo dalla descrizione del concetto gli aspetti di dettaglio e particolari e mettendo in evidenza gli aspetti comuni e generali.

• I diversi modelli proposti per i dati a livello concettuale e logico utilizzando, talvolta implicitamente, un vasto insieme di astrazioni.

Page 14: Cap1 2 3_intro_astrazioni

14

Ad esempio

• La relationship nel modello Entita’ Relazione, come ad esempio Persona Vive in Citta’, e la relazione nel modello relazionale, come ad esempio,

• Vive (Codice Fiscale, Codice Citta’)

• Altro esempio di astrazione diffusamente utilizzata nei modelli e’ la associazione, che a partire da due concetti permette di crearne uno nuovo, e che esprime una connessione strutturale tra i due concetti di partenza.

• La relationship puo’ essere vista come caso particolare di associazione

Page 15: Cap1 2 3_intro_astrazioni

15

• Un insieme di astrazioni

Page 16: Cap1 2 3_intro_astrazioni

16

La classificazione

Studente

A partire da un insieme di oggetti della realta’ di interesse (ad esempiogli studenti di una universita’), crea una classe di cui gli oggetti sonotutte e sole le istanze

Istanza della Classe Studente

Page 17: Cap1 2 3_intro_astrazioni

17

La generalizzazione

Persona

A partire da un insieme di classi, crea una nuova classe le cui istanze sono l’unione delle istanze delle classi di partenza. Nell’ esempio, le istanze della Classe Persona sono la unione delle istanze delle classi Uomo e Donna

Uomo Donna

Page 18: Cap1 2 3_intro_astrazioni

18

La aggregazione

Data

A partire da un insieme di classi, crea una nuova classe di cui le classi di partenza sono parti componenti. Nell’esempio, la classe Data ha come parti componenti le classi Giorno, Mese, Anno

Giorno AnnoMese

Page 19: Cap1 2 3_intro_astrazioni

19

Materializzazione

• Materializzazione, mette in relazione una classe astratta di oggetti (es. Modelli di automobili) con un insieme di oggetti piu’ concreti (es. Singole Automobili); a ogni oggetto della classe astratta corrisponde un sottoinsieme di oggetti della classe piu’ concreta.

• Es la classe Fiat Panda con l’insieme di tutte le singole Panda che sono ancora in giro.

Page 20: Cap1 2 3_intro_astrazioni

20

Raggruppamento

• Mette in relazione una classe di oggetti elementari (es. Giocatori) e una classe di gruppi (di oggetti elementari) (es. Squadre).

• Es. Giocatori della serie A con Milan, Juventus, Inter.

• E’ differente rispetto alla materializzazione, nel senso che in questa si mettono in relazione oggetti a diverso livello di astrazione (classe verso oggetti), nel raggruppamento gli oggetti sono allo stesso livello di astrazione (classe verso classe).

Page 21: Cap1 2 3_intro_astrazioni

21

Raffinamento

• Mette in relazione una classe C1 con un insieme di classi CR1, .., Crn.

• La classe C1 e le classi CR1, .., Crn rappresentano la stessa realta’ di interesse, C1 in modo piu’ astratto, e CR1, .., Crn in modo piu’ concreto.

• Esempio i concetti Residente, Persona, Citta’, sono un raffinamento del concetto di Residenza.

• Si dice anche che Residenza e’ astrazione di Residente, Persona, Citta’.

Page 22: Cap1 2 3_intro_astrazioni

22

Ruolo

• Un Ruolo mette in relazione una classe di oggetti (es Persone) con una classe di loro collocazioni organizzative o procedurali (es. Impiegati), in modo da poter descrivere stati dinamici per la classe di oggetti.

• Es. Persona del CSI verso Impiegato o Dirigente o Tecnico, quando lavora,

• Padre o Madre o Single o altro quando e’ in famiglia.

Page 23: Cap1 2 3_intro_astrazioni

23

Metadati – Attributi dublin core - 1

• I metadati sono ‘tutti gli elementi necessari a descrivere una risorsa’,

• Noi siamo interessati alla risorsa dato o documento.

• Vari standard per i metadati, il piu’ importante e’ il Dublin core.

• Ogni elemento del Dublin Core è definito utilizzando un insieme di dieci attributi dello standard ISO/IEC 11179 [ISO11179] per la descrizione dei dati. Gli attributi sono:

• Nome – Etichetta assegnata al dato • Identificatore – Identificativo univoco assegnato al

dato • Versione – Versione del dato • Registrazione di autorità – Entità autorizzata a

registrare il dato

Page 24: Cap1 2 3_intro_astrazioni

24

Metadati – Attributi dublin core - 2

• Lingua – Lingua nella quale il dato è indicato

• Definizione – Indicazione che rappresenta chiaramente il concetto e la natura essenziale del dato.

• Obbligatorietà – Indica se il dato è richiesto sempre o solo in alcuni casi (contiene un valore)

• Tipo di dato – Indica la tipologia del dato che può essere rappresentato nel valore del dato stesso

• Occorrenza massima – Indica un limite alla ripetibilità del dato

• Commento – Un’osservazione che concerne l’applicazione del dato

• Essi si possono estendere con parole chiave.

Page 25: Cap1 2 3_intro_astrazioni

25

Elementi Dublin core - 1• Elemento: Titolo

– Nome: Titolo – Identificatore: Title – Definizione: Un nome dato alla risorsa – Commento: In particolare, un Title sarà un

nome con il quale la risorsa è formalmente conosciuta.

• Elemento: Creatore • Elemento: Soggetto• Elemento: Descrizione• Elemento: Editore

Page 26: Cap1 2 3_intro_astrazioni

26

Elementi Dublin core - 2

• Elemento: Autore di contributo subordinato• Elemento: Data • Elemento: Tipo • Elemento: Formato• Elemento: Identificatore• Elemento: Fonte • Elemento: Lingua• Elemento: Relazione• Elemento: Copertura• Elemento: Gestione dei diritti

Page 27: Cap1 2 3_intro_astrazioni

27

Le ontologie

• N. Guarino ‘An ontology refers to an engineering artifact, constituted by a specific vocabulary used to describe a certain reality, plus a set of explicit assumptions regarding the intended meaning of the vocabulary words'

Page 28: Cap1 2 3_intro_astrazioni

28

Tante definizioni di ontologie

• Ontologie = Modello ER con generalizzazioni + Thesuarus + funzioni + proposizioni logiche

• Un Thesaurus e’ un elenco di termini per ciascuno dei quali si definiscono sinonimi, omonimi, iponimi (cioe’ sottoinsiemi)

• Una funzione e’ una corrispondenza tra domini• Es Eta’ media e’ una funzione definita tra Eta’

e i numeri decimali, sommando le Eta’ e dividendo per il loro numero.

• Una proposizione logica e’ una proprieta’ espressa in un linguaggio logico

• Es. Ogni impiegato guadagna meno del suo capo

Page 29: Cap1 2 3_intro_astrazioni

29

Vantaggi delle ontologie

• Rappresentazione “veramente” formale• Possibilita’ di costruire ragionamenti, esempi:• L’ontologie e’ consistente, vi sono cioe’

proprieta’ contraddittorie definite sullo schema?• Esempio di proprieta’ contraddittorie:

– 1. Ogni impiegato guadagna meno del suo capo– 2. Esistono impegati che guadagnano piu’ dei loro

capi.

• Date due ontologie, quali sono i conflitti di rappresentazione dei concetti descritti in esse?

• Esempio: In una ontologia colore e’ attributo, nell’altra e’ entita’.

Page 30: Cap1 2 3_intro_astrazioni

30

Discussione introduttiva sulle ontologie Guarino - 1

• What kinds of ontologies do we need? This is still an open issue. In most practical applications, ontologies appear as simple taxonomic structures of primitive or composite terms together with associated definitions.

• These are the so-called lightweight ontologies, used to represent semantic relationships among terms in order to facilitate content-based access to the (Web) data produced by a given community.

• In this case, the intended meaning of primitive terms is more or less known in advance by the members of such community.

• Hence, in this case, the role of ontologies is more that of supporting terminological services (inferences based on relationships among terms – usually just taxonomic relationships) rather than explaining or defining their intended meaning.

• Es. Allegato verso Documento, o Agricoltore verso • Pastore

Page 31: Cap1 2 3_intro_astrazioni

31

Esempio di ontologia per la PA:l’ontologia dei servizi per le imprese

Esempio di alberatura

sottoinsiemi

Classi in gerarchia di generalizzazione

Page 32: Cap1 2 3_intro_astrazioni

32

Discussione introduttiva sulle ontologie Guarino - 2

• On the other hand, however, the need to establishing precise agreements as to the meaning of terms becomes crucial as soon as a community of users evolves, or multicultural and multilingual communities need to exchange data and services.

• Es. faccia il buono alla cassa• To capture (or at least approximate) such subtle

distinctions we need an explicit representation of the so-called ontological commitments about the meaning of terms, in order to remove terminological and conceptual ambiguities. A rigorous logical axiomatisation seems to be unavoidable in this case, as it accounts not only for the relationships between terms, but – most importantly – for the formal structure of the domain to be represented.

• This allows one to use axiomatic ontologies not only to facilitate meaning negotiation among agents, but also to clarify and model the negotiation process itself, and in general the structure of interaction.

Page 33: Cap1 2 3_intro_astrazioni

33

Modello

• Insieme di categorie di astrazione utili per determinati scopi

• Nelle basi di dati: descrivere, sviluppare applicazione, accedere ai dati

Page 34: Cap1 2 3_intro_astrazioni

34

Ontologie = Modello ER con gen. + Thesuarus + funzioni + proposizioni logiche

Modello Entita’ Relazione con generalizzazioni

Le ontologie e il modello ER

Modello Entita’ Relazione originario

Page 35: Cap1 2 3_intro_astrazioni

35

In un modello noi utilizziamo in genere diverse astrazioni

cognome

nome

data di nascitacodice fiscale

sesso

matricolastipendio

ufficio

Lavoratore dipendentepubblico

Lavoratore

Dipendente di uffici centrali

Dipendente di uffici periferici

Candidato Aspirante ad impiego

pubblico

Generalizzazione

Aggregazione

Citta’Risiede

Associazione

Nome

Regione

Classificazione

Page 36: Cap1 2 3_intro_astrazioni

36

Uno schema nel modello relazionale

NOME- CODICE NUMEROLIBRERIA LIBRO COPIEDISPONIBILITA'

TITOLO COGNOMESCRITTO

AUTORE CODICE NOME COGNOME NAZIONALITA' SESSO

LIBRO CODICE-L TITOLO EDITORE PAGINE

LIBRERIA PARTITA-IVA NOME INDIRIZZO CITTA'

Page 37: Cap1 2 3_intro_astrazioni

37

Un’ultima proposta

• Corpus based representation• Nasce dalla constatazione della pratica impossibilita’

di costruire schemi concettuali / ontologie integrate di grandi domini.

• Una corpus based representation e’ un insieme di frammenti di schemi/ontologie + un insieme di statistiche/ analisi su essi, in cui sono volutamente assenti schemi integrati globali o parziali.

• Es. Quale e’ la frequenza dei termini?• Persona o sottocategorie 500• Impresa o sottocategorie 300• Agricoltore 20• Spazzacamino 1

Page 38: Cap1 2 3_intro_astrazioni

38

Struttura di un corpus based system

Page 39: Cap1 2 3_intro_astrazioni

39

Confronto tra modelli

Comprensibilita’

Eseguibilita’ in un DBMS

Potenza espressiva

Modello ER con generalizzazioni

Modello relazionaleOntologie

OntologieModello ER con generalizzazioni

Modello relazionale

Modello relazionale

Modello ER con generalizzazioni

Ontologie

Basso Alto

Costo di Produzione

Modello ER con generalizzazioni

Modello relazionale

Ontologie

Page 40: Cap1 2 3_intro_astrazioni

40

Utilita’ per I nostri scopi

Comprensibilita’

- +

Eseguibilita’ in un DBMS

Potenza Espressiva

- +

Modello ER con generalizzazioni

Modello relazionaleOntologie

OntologieModello ER con generalizzazioni

Modello relazionale

Modello relazionale

Modello ER con generalizzazioni

Ontologie

Basso Alto

Costo di Produzione

+ - Modello ER con generalizzazioni

Modello relazionale

Ontologie

Page 41: Cap1 2 3_intro_astrazioni

41

Strategia complessiva di utilizzo di modelli al CSI

Conoscenza da modellare

Efficacia del modello

Ontologie

Modello ERcon genera-lizzazioni

Modello ERoriginale

Modellorelazionale

Dati e conoscenza core bussiness