Using Ontologies in the Domain Analysis of Domain-Specific Languages

38
Using Ontologies in the Domain Analysis of Domain-Specific Languages Robert Taíras, Marjan Mernik, Jeff Gray presentation by Túlio Caraciolo phD Candidate @ cin.ufpe.br

description

Using Ontologies in the Domain Analysis of Domain-Specific Languages. Robert Taíras , Marjan Mernik , Jeff Gray presentation by Túlio Caraciolo phD Candidate @ cin.ufpe.br. Using Ontologies in the Domain Analysis of Domain-Specific Languages. today‘s talk. what - PowerPoint PPT Presentation

Transcript of Using Ontologies in the Domain Analysis of Domain-Specific Languages

Page 1: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Using Ontologies in the Domain Analysis of Domain-Specific Languages

Robert Taíras, Marjan Mernik, Jeff Graypresentation byTúlio Caraciolo

phD Candidate @ cin.ufpe.br

Page 2: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Title Models in Software Engineering table of contents

Editor Michel R. Chaudron faculty of Mathematics and Natural Sciences, Leiden Institute of Advanced Computer Science, University of Leiden, Leiden, The Netherlands 2300 RA

Pages 332 - 342Publisher Springer-Verlag Berlin, Heidelberg

©2009ISBN: 978-3-642-01647-9 doi>10.1007/978-3-642-01648-6_35

Using Ontologies in the Domain Analysis of Domain-Specific Languages

Page 3: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

today‘s talk

• what– ontologies as a doming analysis technique for DSL

creation• why– more systematic approach, might be formalized

• how– air traffic control case study

Page 4: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

WHATontologies as a doming analysis technique for DSL creation

Page 5: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Projetando uma DSL

• Etapas sugeridas:

–Análise– Implementação– Utilização

Page 6: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Projetando uma DSL :: Análise

Objetivo: construir um entendimento do domínio

Passos:1. Identificar o domínio do problema2. Obter o conhecimento relevante sobre esse

domínio3. Juntar nesse conhecimento noções semânticas e

operadores nessas noções - combinadores4. Projetar a DSL que descreve concisamente

aplicações no domínio

Page 7: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

“Why would someone want to develop an ontology? Some of the reasons are: share common understanding of the structure of information, enable reuse of domain knowledge, make domain assumptions explicit, separate domain knowledge from the operational knowledge and analyze domain knowledge”

Ontology Development 101 from W3C

Page 8: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

WHYmore systematic approach, might be formalized

Page 9: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

…observations suggest that ontology assists in the initial phase of doming understanding and can be combined with further formal domain analysis methods during the development of domain-specific language.

… formal approaches have shown to result in good language design, …

… the insertion of ontology development in the early stages of DSL development can potentially provide a structured mechanism in the part of DSL development that is still lacking attention.

Page 10: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 11: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 12: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

HOWair traffic control case study

Page 13: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

Page 14: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

Page 15: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

One of the ways to determine the scope of the ontology is to sketch a list of questions that a knowledge base based on the ontoloy should be able to answer, competency questions.

Page 16: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

Page 17: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

Page 18: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 19: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

A simple Knowledge-Engineering Methodology (a.k.a. 7 steps for your ontology)

1. Determine the domain and scope2. Consider reusing existing ontologies3. Enumerate important terms4. Define the classes and the class hierarchy5. Define the properties of classes6. Define the facets of the slots7. Create Intances

Page 20: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Create Ontology

Page 21: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

ontology

uml class diagram

Page 22: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 23: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 24: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 25: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 26: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 27: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

ontology

uml class diagram

Page 28: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

uml class diagram

CFG

Page 29: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 30: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 31: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 32: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 33: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 34: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 35: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 36: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages
Page 37: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

step by step

• create the ontology– Follow the 7 steps from the 101

• tranform to uml– conceptual class diagram

• transform to CFG– following a collection of transformation rules

• refactor– might be necessary for proper human reading

• validation– create some possible scenarios and see how it goes

Page 38: Using  Ontologies  in the Domain Analysis of Domain-Specific Languages

Using Ontologies in the Domain Analysis of Domain-Specific Languages

Robert Taíras, Marjan Mernik, Jeff Graypresentation byTúlio Caraciolo

phD Candidate @ cin.ufpe.br