Formal Ontologies in Model-based Software Development



Similar documents
COCOVILA Compiler-Compiler for Visual Languages

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

Winery A Modeling Tool for TOSCA-based Cloud Applications

Evaluation of Adaptive Course Construction Toolkit (ACCT)

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Ontologies for Software Engineering and Software Technology

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?

DC Proposal: Automation of Service Lifecycle on the Cloud by Using Semantic Technologies

A Service Modeling Approach with Business-Level Reusability and Extensibility

APPLICATION OF KNOWLEDGE MANAGEMENT AND SEMANTIC TECHNOLOGIES IN IT SERVICE MANAGEMENT

Ontological Representations of Software Patterns

EXPLOITING FOLKSONOMIES AND ONTOLOGIES IN AN E-BUSINESS APPLICATION

Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms

Integration of Application Business Logic and Business Rules with DSL and AOP

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor

CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

A Methodology for the Development of New Telecommunications Services

Tool chain (BRIDE) delivered as BRICS software distribution

Semantic Variability Modeling for Multi-staged Service Composition

Ontological Identification of Patterns for Choreographing Business Workflow

Ontology for Home Energy Management Domain

Knowledge-based Software Test Generation

Overview of major concepts in the service oriented extended OeBTO

Monalessa Perini Barcellos 1,2, Ana Regina C. da Rocha (advisor) 1, Ricardo de A. Falbo (advisor) 2

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS

An Integrated Quality Assurance Framework for Specifying Business Information Systems

Amit Sheth & Ajith Ranabahu, Presented by Mohammad Hossein Danesh

Implementing reusable software components for SNOMED CT diagram and expression concept representations

Creating visualizations through ontology mapping

Information Services for Smart Grids

Designing a Semantic Repository

A Pattern-based Approach to Business Process Modeling and Implementation in Web Services

Application of ontologies for the integration of network monitoring platforms

Development of an Ontology for the Document Management Systems for Construction

Requirements Ontology and Multi representation Strategy for Database Schema Evolution 1

Federated, Generic Configuration Management for Engineering Data

MERGING ONTOLOGIES AND OBJECT-ORIENTED TECHNOLOGIES FOR SOFTWARE DEVELOPMENT

AN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY

Ontology-Based Semantic Modeling of Safety Management Knowledge

Comparative Analysis of SOA and Cloud Computing Architectures Using Fact Based Modeling

Design Specification for IEEE Std 1471 Recommended Practice for Architectural Description IEEE Architecture Working Group 0 Motivation

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

Combining Security Risk Assessment and Security Testing based on Standards

Database Scheme Configuration for a Product Line of MPC-TOOLS

A Variability Viewpoint for Enterprise Software Systems

A Meta-model of Business Interaction for Assisting Intelligent Workflow Systems

MULTI-POLE MODELING AND INTELLIGENT SIMULATION OF A HYDRAULIC DRIVE WITH THREE-DIRECTIONAL FLOW REGULATING VALVE

ONTODESIGN; A DOMAIN ONTOLOGY FOR BUILDING AND EXPLOITING PROJECT MEMORIES IN PRODUCT DESIGN PROJECTS

ONTOLOGY-BASED APPROACH TO DEVELOPMENT OF ADJUSTABLE KNOWLEDGE INTERNET PORTAL FOR SUPPORT OF RESEARCH ACTIVITIY

Semantic Concept Based Retrieval of Software Bug Report with Feedback

Revel8or: Model Driven Capacity Planning Tool Suite

Fabrice Mogo Nem. Engineering Networks Holistic approach for multidiscipiinary Product Lifecycle Management. Band 9

JOURNAL OF OBJECT TECHNOLOGY

Clinician-Led Development of Electronic Health Records Systems

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object

Improving Engineering Change Management with Information Demand Patterns

Model Based Software Development: Issues & Challenges

Generating Aspect Code from UML Models

Modeling the User Interface of Web Applications with UML

Semantic Business Process Modeling Benefits and Capability

From Business World to Software World: Deriving Class Diagrams from Business Process Models

Semantic Transformation of Web Services

Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools

Managing unknown IoT entities by uncovering and aligning their semantics

Intelligent Manage for the Operating System Services

Emanuele Storti Scientific curriculum

Use of OWL and SWRL for Semantic Relational Database Translation

Transcription:

Formal Ontologies in Model-based Software Development Hele-Mai Haav, Andres Ojamaa, Vahur Kotkas, Pavel Grigorenko, Jaan Penjam Institute of Cybernetics at TUT

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. 2

Introducing ontologies into software development process supported by CoCoViLa Domain ontology development phases DSL development phases Acquisition of domain knowledge Domain analysis (inc. requirements) Specification (goal, scope, requirements, etc) Conceptualization Formalization of conceptualization and implementation (RDF/OWL) Testing 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 DSL metamodel ontology 3

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 4

The concept of DSL meta-model ontology 5

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. 6

Automated generation of concept specification templates from domain ontology Automatically generated according to the given set of transformation rules [2] Templates for the OWL class Rectangle and its super-classes. 7

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]. 8

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. 9

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 metamodel ontology ( meta ). 2. Some individuals and links are created automatically. 3. Create additional individuals and their relationships Imported Autom. created?? 10

The architecture of the CoCoViLa extension 11

Implementation details Contact Andres! 12

Benefits 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 system. 13

Limitations 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 14

Conclusion 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 extension to the CoCoViLa DSL modelling tool. 15

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. 16

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 5 th International Conference on Model & Data Engineering (MEDI 2015), LNCS, vol. 9344, pp. 1-12, Springer (2015) (to appear) 17

Thank you! 18