using ontologies in the domain analysis of domain-specific languages
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 PresentationTRANSCRIPT
![Page 1: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/4.jpg)
WHATontologies as a doming analysis technique for DSL creation
![Page 5: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/5.jpg)
Projetando uma DSL
• Etapas sugeridas:
–Análise– Implementação– Utilização
![Page 6: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/7.jpg)
“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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/8.jpg)
WHYmore systematic approach, might be formalized
![Page 9: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/9.jpg)
…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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/10.jpg)
![Page 11: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/11.jpg)
![Page 12: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/12.jpg)
HOWair traffic control case study
![Page 13: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/18.jpg)
![Page 19: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/20.jpg)
Create Ontology
![Page 21: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/21.jpg)
ontology
uml class diagram
![Page 22: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/22.jpg)
![Page 23: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/23.jpg)
![Page 24: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/24.jpg)
![Page 25: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/25.jpg)
![Page 26: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/26.jpg)
![Page 27: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/27.jpg)
ontology
uml class diagram
![Page 28: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/28.jpg)
uml class diagram
CFG
![Page 29: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/29.jpg)
![Page 30: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/30.jpg)
![Page 31: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/31.jpg)
![Page 32: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/32.jpg)
![Page 33: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/33.jpg)
![Page 34: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/34.jpg)
![Page 35: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/35.jpg)
![Page 36: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/36.jpg)
![Page 37: Using Ontologies in the Domain Analysis of Domain-Specific Languages](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/37.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062501/568166b6550346895ddabc47/html5/thumbnails/38.jpg)
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