• No results found

Formal Ontologies in Model-based Software Development

N/A
N/A
Protected

Academic year: 2021

Share "Formal Ontologies in Model-based Software Development"

Copied!
18
0
0

Loading.... (view fulltext now)

Full text

(1)

Formal Ontologies in Model-based

Software Development

Hele-Mai Haav, Andres Ojamaa, Vahur Kotkas, Pavel Grigorenko, Jaan Penjam Institute of Cybernetics at TUT

(2)

About

In general, ontologies as formal models are used in MBSD for formal representation of

 domain knowledge ( i.e. domain models) and  requirements of a system.

In our approach, in addition to the above

 the system ontology of a MBSD tool (i.e. CoCoViLa)  and links to external software artefacts available on the

web or made available by other MBSD tools are used.

Laulasmaa, 21.09.2015 2

(3)

Introducing ontologies into software

development process supported by CoCoViLa

Domain ontology development

phases DSL development phases

Domain analysis (inc. requirements)

Design (the DSL meta-model ontology and other related concepts)

Implementation (the DSL design templates, links to meta-model ontology, Java classes, etc)

Deployment (using the DSL for application development)

Testing and maintenance

Acquisition of domain knowledge Specification (goal, scope, requirements, etc) Conceptualization Formalization of conceptualization and implementation (RDF/OWL) Testing Laulasmaa, 21.09.2015 3 DSL meta-model ontology

(4)

The DSL meta-model ontology

 The DSL meta-model ontology is a formal ontology that

links together the system ontology and one or more

domain ontologies as well as may include links to external software artefacts on the Web.

 The system ontology defines a set of system-specific

concepts of the MBSD system (or tool) and relationships among them.

 The domain ontology provides a specification of a

conceptualization of a domain

Laulasmaa, 21.09.2015 4

(5)

The concept of DSL meta-model ontology

Laulasmaa, 21.09.2015 5

(6)

A fragment of the CoCoViLa system ontology

The current version of this ontology includes OWL descriptions of 40 classes, 21 object properties and 16 data properties.

Laulasmaa, 21.09.2015 6

(7)

Automated generation of concept specification

templates from domain ontology

Templates for the OWL class

Rectangle and its super-classes.

Automatically generated according to the given set of transformation rules [2]

Laulasmaa, 21.09.2015 7

(8)

Mapping domain ontology to the CoCoViLa

language

OWL constructs for object property characteristics, property restrictions and complex classes cannot be mapped to the CoCoViLa modelling language [2].

Laulasmaa, 21.09.2015 8

(9)

Mapping …

 For each (or selected) domain ontology class in the DSL

meta-model ontology a corresponding instance of the

ConceptSpecificationTemplate class (from the system ontology) is created and linked to it via the

isGeneratedFrom object property value.

 This object property value indicates from what domain

ontology class the template is automatically generated.

 All this can be automated.

Laulasmaa, 21.09.2015 9

(10)

An Example:the Geometry DSL Meta-model

Ontology (a fragment)

For DSL designer: 1. Import system ontology („sys“) and domain ontology („geo“) to the DSL meta-model ontology („meta“). 2. Some individuals and links are created automatically. 3. Create additional individuals and their relationships Autom. created Imported Laulasmaa, 21.09.2015 10 ? ?

(11)

The architecture of the CoCoViLa extension

Laulasmaa, 21.09.2015 11

(12)

Implementation details

 Contact Andres!

Laulasmaa, 21.09.2015 12

(13)

Benefits

Laulasmaa, 21.09.2015 13

 It is easy to incorporate the domain terminology into the DSL at the early

development stages due to formalization of domain ontology.

 Separation of different kinds of knowledge about the system, domain and a

DSL into modular OWL ontologies makes the knowledge more reusable.

 Automatic generation of design templates of the DSL meta-model.

 Linking the DSL meta-model ontology components with external resources

over the Web.

 Capturing the evolution of a domain in the DSL via automated

transformations [2].

 Using the DSL meta-model ontology makes it possible to automatically

check its consistency using DL reasoning facilities used for debugging DSL meta-models.

 The system ontology is always related to the running version of the system.

Creation of the system documentation on the basis of the system ontology guarantees that documentation is up-to-date and consistent with the

(14)

Limitations

Laulasmaa, 21.09.2015 14

 Problems of creation of formal domain ontologies as ontology engineering techniques do not constitute a part of existing

traditional software development methodologies. This may create initial complexity

 For semantic integration of artefacts from external tools and models, the approach requires the commitment to a common system ontology or availability of system ontologies of these tools

(15)

Conclusion

Laulasmaa, 21.09.2015 15

 Representing domain models and the system model as

OWL ontologies and linking them together to form a unified DSL meta-model ontology makes it possible to effectively integrate software artefacts that constitute a DSL meta-model as well as link it with external resources over the Web.

 This facilitates dynamic loading (instantiation) of software

artefacts of DSL meta-models to a DSL development tool.

 We have prototypically implemented our approach as an

(16)

Acknowledgements.

This research was supported by Estonian Research Council institutional research grant no. IUT33-13, and by the ERDF through the ICT project MBJSDT and Estonian national

CoE project EXCS.

Laulasmaa, 21.09.2015 16

(17)

References

1. H.-M. Haav, A. Ojamaa, P. Grigorenko, V. Kotkas.

Ontology-based integration of software artefacts for DSL development. In R. Meersman, H. Panetto, I. Ciuciu et al., (eds) Proceedings of OTM Workshops 2015.

(INBAST 2015), LNCS, Springer (2015), (to appear)

2. Ojamaa, A., Haav H-M., Penjam J.: Semi-automated

Generation of DSL Meta Models from Formal Domain Ontologies, In: Manolopoulos, Y., Bellatreche, L. (eds)

Proceedings of the 5th International Conference on

Model & Data Engineering (MEDI 2015), LNCS, vol. 9344, pp. 1-12, Springer (2015) (to appear)

Laulasmaa, 21.09.2015 17

(18)

Thank you!

Laulasmaa, 21.09.2015 18

References

Related documents

Domain, Application, Level of Abstraction, Language, Syntax, Semantics, Model, Meta-Model, Ontology, Domain-Specific Modeling, and Domain-Specific Language3. The following

In this paper a methodology is proposed using a formal B-method approach, which supports formal stepwise development with refinement to model component-based systems

It is a top-down approach were at first, common elements of the target platform are detected and formalized in a meta-model and then it is used to generate software artefacts

An AST (Abstract Syntax Tree) is used to model Java source code; ontology techniques are used to model Java program specification and SWRL to model bug patterns; and OWL

model-based quality assurance, with an emphasis on automotive / embedded software.... The Problem

Design of business model requires a clear specification of the issues: the dominant value creation drivers, the activities to be performed, the linking and sequencing of

Our ontology-based user model (OBUM) is devised as an overlay over the domain ontology. Using ontologies as the basis of the user profile allows the initial user behavior to be

Starting from a meta model of an object oriented data model and a simple service model this paper shows how to describe and integrate access control needs in common