Semantic Model-driven Engineering

Similar documents
Semantic Model-driven Engineering

Model Driven Engineering with Ontology Technologies

TrOWL: Tractable OWL 2 Reasoning Infrastructure

OntoDSL: An Ontology-Based Framework for Domain-Specific Languages

Ontology-based Model Transformation

<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany

Meta-Modeling and Modeling Languages

IMCE MOF2 / OWL2 Integration

Model Driven Ontology: A New Methodology for Ontology Development

SEMANTIC WEB AND MODEL-DRIVEN ENGINEERING

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Towards Ontology-driven Requirements Engineering (ODRE)

Ontology-based Model Synchronisation

Evaluating OWL 2 Reasoners in the Context Of Checking Entity-Relationship Diagrams During Software Development

Transformational Design with

Towards using OWL DL as a metamodelling framework for ATL

Semantic Web Domain Knowledge Representation Using Software Engineering Modeling Technique

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Conceptual modeling using domain ontologies: Improving the domain-specific quality of conceptual schemas

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

BLU AGE 2009 Edition Agile Model Transformation

Modelling in Enterprise Architecture. MSc Business Information Systems

Description Logics and OWL

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING

Racer: An OWL Reasoning Agent for the Semantic Web

Ontologies and similarity

The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access

OWL extended with Meta-modelling

Parallel and Distributed Reasoning for RDF and OWL 2

Semantic Web. Ontology Engineering and Evaluation. Morteza Amini. Sharif University of Technology Fall 93-94

An Ontological Analysis of Metamodeling Languages

Christian Doppler Laboratory

OMG Specifications for Enterprise Interoperability

The Open Group SOA Ontology Technical Standard. Clive Hatton

Description Logics as Ontology Languages for Semantic Webs

!MDA$based*Teaching*and* Research*in*Software*Engineering*!

Model-Level Integration of the OCL Standard Library Using a Pivot Model with Generics Support

Presented By Aditya R Joshi Neha Purohit

Semantic Web. Ontology Engineering and Evaluation. Morteza Amini. Sharif University of Technology Fall 95-96

jcel: A Modular Rule-based Reasoner

Design and Prototypical Implementation of a Pivot Model as Exchange Format for Models and Metamodels in a QVT/OCL Development Environment

SeMFIS: A Tool for Managing Semantic Conceptual Models

Introduction to MDE and Model Transformation

Simplified Approach for Representing Part-Whole Relations in OWL-DL Ontologies

U2R2 The Ulm University Relational Reasoner: System Description

Overview of lectures today and Wednesday

OWL-DBC The Arrival of Scalable and Tractable OWL Reasoning for Enterprise Knowledge Bases

MDA Journal. BPMI and OMG: The BPM Merger A BPT COLUMN. David S. Frankel Lead Standards Architect - Model Driven Systems SAP Labs.

The Model-Driven Semantic Web Emerging Standards & Technologies

An Architecture for Semantic Enterprise Application Integration Standards

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

Experimenting with Multi-Level Models in a Two-Level Modeling Tool

An Introduction to MDE

Technische Universität Dresden Institut für Software- und Multimediatechnik

Unifying Software Reuse

MDA & Semantic Web Services Integrating SWSF & OWL with ODM

INF5120 Model-Based System Development

Lecture 1/2. Copyright 2007 STI - INNSBRUCK

Transforming models with ATL

DEVELOPMENT OF ONTOLOGY-BASED INTELLIGENT SYSTEM FOR SOFTWARE TESTING

Fausto Giunchiglia and Mattia Fumagalli

The Eclipse Modeling Framework and MDA Status and Opportunities

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

Rich Hilliard 20 February 2011

Construction of Complex UML Profiles

Models versus Ontologies - What's the Difference and where does it Matter?

Automated REA (AREA): a software toolset for a machinereadable resource-event-agent (REA) ontology specification

Event Metamodel and Profile (EMP) Proposed RFP Updated Sept, 2007

Semantic Web Technologies Trends and Research in Ontology-based Systems

Software Language Engineering of Architectural Viewpoints

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

Small is Beautiful Building a flexible software factory using small DSLs and Small Models

Requirements to models: goals and methods

Dresden OCL2 in MOFLON

OMG Workshop MDA. Tool Chains for MDA? Let's consider leaving our tool chains behind us.

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG

PROJECT PERIODIC REPORT

Designing MAS Organisation through an integrated MDA/Ontology Approach

Requirements Engineering for Enterprise Systems

Language engineering and Domain Specific Languages

Existing Model Metrics and Relations to Model Quality

Knowledge-based Integration of Industrial Plant Models

A Tool for Storing OWL Using Database Technology

On the Reduction of Dublin Core Metadata Application Profiles to Description Logics and OWL

RELATIONAL REPRESENTATION OF ALN KNOWLEDGE BASES

Software Architecture

An ontology for the Business Process Modelling Notation

Optimised Classification for Taxonomic Knowledge Bases

OCLLib, OCLUnit, OCLDoc: Pragmatic Extensions for the Object Constraint Language by Examples

model-driven development Separation of Concerns in Model-Driven Development

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Generic vs. Domain-specific Modeling Languages

Web Services Annotation and Reasoning

A UML 2 Profile for Variability Models and their Dependency to Business Processes

Extension and integration of i* models with ontologies

From Lexicon To Mammographic Ontology: Experiences and Lessons

Explaining Subsumption in ALEHF R + TBoxes

PROPOSAL OF AN HYBRID METHODOLOGY FOR ONTOLOGY DEVELOPMENT BY EXTENDING THE PROCESS MODELS OF SOFTWARE ENGINEERING

State of the Art and Future Directions in Model Management Research

A Comparative Study of Ontology Languages and Tools

Transcription:

Web Science & Technologies University of Koblenz Landau, Germany Semantic Model-driven Engineering Acknowledgements to students and colleagues@most project http://most-project.eu

New level in Software Engineering 2030 Ontology-Driven Software Development (ODSD) 2020 2010 Consistency-based development with ontology languages Guided development with advising languages 2000 Constraint-safe development with constraint languages 1990 1980 Type-safe development with typed languages 1970 1960 Development with untyped languages 1950 [ODSD] 2of 25 2

Marrying Ontologies and Software Technology Software Engineer Ontology Expert Software Modeling World (ModelWare) Ontology World (OntologyWare) EMOF MOF OWL RDF [ODSD] 3of 25

Marrying Ontologies and Software Technology Software Engineer Ontology Expert Terminologies with 10 3 to 10 6 entities Software Modeling World (ModelWare) EMOF MOF Ontology World (OntologyWare) OWL RDF Gene Ontology Snomed FMA [ODSD] 500+ terminologies in the B2B world 4of 25

Marrying Ontologies and Software Technology Software Engineer Ontology Expert Terminologies with 10 3 to 10 6 entities Software Modeling World (ModelWare) EMOF MOF Ontology World (OntologyWare) OWL RDF Gene Ontology Snomed FMA [ODSD] ontology technologies 500+ terminologies in the B2B world 5of 25

The MOST Project ODSD with Process Guidance Consistency Preservation In ODSD Foundational ODSD technology Basic technology [ODSD] 6of 25

The MOST Project Software Modeling World (ModelWare) Ontology World (OntologyWare) ODSD with Process Guidance Consistency Preservation In ODSD Foundational ODSD technology Traceability Integration of Metamodels and Ontologies Ontology-based configuration Basic technology MDSD Case Studies Ontologies [ODSD] 7of 25

The MOST Project Software Modeling World (ModelWare) Ontology World (OntologyWare) ODSD with Process Guidance Ontology- Integrated Modeling TwoUse: A Platform for ODSD Ontology- Guided Software Development Consistency Preservation In ODSD Consistency Checking for Structural Models Bridges Consistency Checking for Processes Foundational ODSD technology Traceability Integration of Metamodels and Ontologies Ontology-based configuration Basic technology MDSD Case Studies Ontologies [ODSD] 8of 25

ONTOLOGY BASED DOMAIN SPECIFIC LANGUAGES 9of 25

Stakeholders [MODELS09] Bridge Developer specifies Metamodeling Language uses DSL Designer specifies DSL Metamodel defined in Constraints uses based on DSL User builds Domain Model Guidance and services requires 10 of 25

Scenario at Comarch (PL) Modeling physical devices, e.g. Cisco network devices Cisco 7603: Domain Model: [MODELS09] Device Configuration Slot Slot Slot HotSwappableOSM SupervisorEngine Restrictions modeling a Cicso7603 device: Every Cisco7603 has at least 1 Configuration7603 Every Configuration has at least 1 Slot in which a SupervisorEngine card is plugged in A Configuration7603 has exactly 3 Slots in which either a HotSwappableOSM or SPAInterface card is plugged in. DSL Designer 11 of 25

DSL User interacting with PDDSL Domain Model: Device Configuration HotSwappableOSM (inconsistent) Error DSL User Requirements of DSL User: Consistency Checking Debugging of domain models [MODELS09] 12 of 25

DSL User interacting with PDDSL Domain Model: Device Configuration Slot Slot Slot (consistent) HotSwappableOSM DSL User Requirements of DSL User: Consistency Checking Debugging of domain models Validate incomplete models Guidance and explanations how to complete the model [MODELS09] 13 of 25

DSL User interacting with PDDSL Domain Model: Device Configuration Slot Slot Slot (inconsistent) DSL User HotSwappableOSM Explanation: SPAInterface Configuration hasslot some Error Slot and hascard some SupervisorEngine HotSwappableOSM Requirements of DSL User: Consistency Checking Debugging of domain models Validate incomplete models Guidance and explanations how to complete the model [MODELS09] 14 of 25

DSL User interacting with PDDSL Domain Model: Cisco7603 Device Configuration7603 Configuration Slot Slot Slot (consistent) HotSwappableOSM SupervisorEngine DSL User Requirements of DSL User: Consistency Checking Debugging of domain models Validate incomplete models Guidance and explanations how to complete the model Suggestions of suitable domain concepts Use of services without any extra effort [MODELS09] 15 of 25

Integrated Modeling Modeling PDDSL class Device { reference hasconfiguration [1-*]: Configuration; } DSL Designer class Cisco7603 extends Device {, equivalentwith restrictionon hasconfiguration with min 1 Configuration7603 { } class Configuration equivalentwith { IntersectionOf(restrictionOn hasslot with min 1 Slot, restrictionon hasslot some restrictionon hascard some SupervisorEngine) { reference hasslot : Slot; } Description Logics Subset of first order logics class Configuration7603 extends Configuration, { equivalentwith IntersectionOf(restrictionOn hasslot with exactly 3 Slot, Reasoning at two levels restrictionon hasslot with some Class level restrictionon hascard with some UnionOf(HotSwappableOSM, SPAInterface) { } Object Level Sound and complete reasoning Pragmatically efficient class Slot { reference hascard [1-*]: Card; } 16 of 25

Integration Bridge: Metamodelling PDDSL Bridge Developer Bridging Technology Integration Ontoware TS OWL2 Metamodel integration Integrated (Meta )Metamodel integration Modelware TS Ecore Metametamodel M3 Tools Querying Reasoning Technology Ontology TBox ABox projection projection Hybrid (Meta )model ontoware modelware Model projection projection DSL Metamodel Model Model Tools Validation Constraint Technology conformsto M2 conformsto M1 [DKE10] 17 of 25

Evaluation: Stakeholders and measures GQM methodology reused Actor Productivity Quality Bridge developer Not measured Not measured Productivity Compare development time under comparable conditions Quality Compare development time spent on bug fixing DSL designer manual, pure models vs manual, hybrid vs generalized, hybrid Productivity measure * bug ratio Assumption: development is continued until no errors exist Domain expert/ Customer expert Cisco 7600 with PDDSL vs. Without PDDSL Productivity measure * bug ratio [ECMFA10] Domain user Survey customers Survey customers 18 of 25

Evaluation DSL developer productivity & quality Implement consistency guidance services for DSL users/domain experts Instance validation Types validation Suggestions Includes abstract syntax integration Excludes concrete syntax integration Excludes requirements analysis Component/Approach Manual, pure models Manual, hybrid Generalized, hybrid Metamodel integration 0 6 h Re-use Projection to OWL 0 40 h (mostly) automated Services implementation 98 h 28 h Finished Apr 30 Testing& Bugfixing 34 h 18 h Finished Apr 30 Productivity improvement - 40 h = 30% Finished Apr 30 Quality improvement - 16 h = 47% Finished Apr 30 19 of 25

PROCESS REASONING 20 of 25

Supporting SAP Development of Processes From business developer to software developer BPMN at different levels of granularity 21 of 25

Transformation Bridge for Process Reasoning Bridging Technology Transformation Ontoware TS OWL2 Metamodel target metamodel Transformation Definition source metamodel Modelware TS Ecore Metametamodel M3 Tools Querying Reasoning Technology Ontology TBox ABox target model target model Transformation Engine source model source model DSL Metamodel Model Model Tools Validation Constraint Technology conformsto M2 conformsto M1 [DKE10] 22 of 25

Mapping Process Steps [DL 2009] 23 of 25

Transformation Bridge 1. Eliminating parallel gateways: Executions remain the same Exponential complexity (O(n!)) 2. Reduce execution sets to predecessor and successor sets: Predecessor sets: PS(b11) = {a11}; PS(a21) = {b11}, etc. Successor sets: SS(b11) = {a21,b22}; SS(a21) = {b21}, etc. Execution sets subsumption can be reduced to PS/SS sets subsumptions [DL2009] 24 of 25

Example for survey question without support 3 processes in a refinement hierarchy Model real-life business processes from Curran et al. (1999): SAP R/3 Business Blueprint: Understanding Enterprise Supply Chain Management Some models have multiple errors Multiple-choice: 2-4 answer options, multiple correct options possible Experiments performed by J. Lemcke & colleagues, SAP AG 25 of 25

Example for survey question with support 2 main surveys Survey 1 with no support to modeller Survey 2 with error highlights in the BPMN diagrams or guidance comments, respectively Experiments performed by J. Lemcke & colleagues, SAP AG 26 of 25

Results per case study Process refinement case study Quality: QI = 57%, sav q = 36% Productivity: PI = 192%, sav p = 66% Process guidance case study Quality: QI = 66%, sav q = 40% Productivity: PI = 254%, sav p = 72% Experiments performed by J. Lemcke & colleagues, SAP AG 27 of 25 27

Calculation & overall results Data gathered C S, C N correct answers with / without support W S, W N wrong answers with / without support t S, t N time for questions with / without support Measure: Quality improvement r q = = 1.6, QI = r q 100% = 60% Measure: Productivity improvement r p = = 3.12, PI = r p 100% = 212% Savings: sav = Quality: sav q = 38% Productivity: sav p = 68% 28 of 25

CONCLUSION 29 of 25

Bridge Classification Motivation Bridging Integration Bridging definition layer M3 layer Extended expressiveness of metamodeling language Additional Restrictions for M1 models M2 layer Leveraging models by ontologies Knowledge represented independently of modeling language Transformation Replacement of coexistence between metamodels (+ conforming models) and ontologies Enabling ontologybased querying Transformations of models to formal ontological representations Enabling formal semantics 30 of 25

Bridging Tools Tools Bridging Integration Transformation Bridging definition layer M3 layer OntoDSL: Metamodeling with Ecore and OWL class Configuration7603 extends Configuration, equivalentwith (hasslot with exactly 3 Slot) and (hasslot some (hascard some { }... (HotSwappableOSM or SPAInterface) OWLizer: Transformations of Ecore-based metamodels and models to ontologies M2 layer UML Profile for OWL: Modeling UML class diagrams with OWL-based stereotypes BPMN Refinement: Transformations of process models to ontologies 31 of 25

Marriage of Ontology and Software Technologies Original Contributions: Ontology Reasoning Defined for class diagrammes before [BCG05], but also Domain-specific languages Process languages Lessons Learned Marriage is nontrivial formalization not straightforward, but re-useable! terminological problems need to be reconciled between the two pillars: E.g. open/closed world vs. draft/deployed models Productivity gains 32 of 25

Ongoing Research and Outlook Knowledge by the User & for the User Domain models must be included, maintained and aligned with other models in the lifecycle Families of business processes [CAiSE 2011] Software product lines [submitted] Terminologies and Ontologies are undervalued re-useable artefacts in software development Knowledge not contained within one software project alone Semantic Web can span many projects! [TKB10;under development] Semantic technologies respond to these needs 33 of 25

Core publications for this talk http://west.uni-koblenz.de/projects/twouse Transforming and Weaving Ontologies and Uml for Software Engineering [DKE10] F. S. Parreiras, S. Staab. Using Ontologies with UML Class-based Modeling: The TwoUse Approach. In: Data & Knowledge Engineering, 69(11): 1194-1207, Elsevier. [CAiSE11] G. Gröner, C. Wende, M. Boskovic, F. S. Parreiras, T. Walter, F. Heidenreich, D. Gasevic, S. Staab. Validation of Families of Business Processes. In: Proc. of CAiSE - 23rd Int. Conf. Advanced Inf. Systems Engineering, Springer, 2011. [ECMFA10] T. Walter, F. S. Parreiras, S. Staab, J. Ebert. Joint Language and Domain Engineering. In: Proc. of ECMFA-2010 6th European Conference on Modelling Foundations and Applications, Springer, 2010. [MODELS09] T. Walter, F. Silva Parreiras, S. Staab. OntoDSL: An Ontology-based Development Environment for Domain-specific Languages. In: Models - ACM/IEEE 12th Int. Conf. on Model Driven Eng., Languages & Systems. Springer, 2009. [DL 2009] Y. Ren, G. Gröner, J. Lemcke, T. Rahmani, A. Friesen, Y. Zhao, J. Z. Pan, S. Staab. Validating Process Refinement with Ontologies. In: The 22nd International Workshop on Description Logics (DL2009). 27 to 30 July 2009, Oxford, UK. [ODSD] U. Assmann, J. Pan, S. Staab, Y. Zhao (eds.). Ontology-driven Software Development, Springer, to appear. 34 of 25

Further core publications for this area [BCG05] Berardi, D., Calvanese, D., Giacomo, G.D.: Reasoning on UML class diagrams. Artif. Intell. 168(1) (2005) 70-118. [GDD09] Gasevic, D., Djuric, D., Devedzic, V.: Model Driven Engineering and Ontology Development, 2nd Ed. Springer (2009) [TKB10] J. Tappolet, C. Kiefer, A. Bernstein. Semantic web enabled software analysis, Journal of Web Semantics: Science, Services and Agents on the World Wide Web 8, July 2010 [Par11] F. S. Parreiras. Marrying Model-Driven Engineering and Ontology Technologies: The TwoUse Approach, Wiley, to appear. 35 of 25

Web Science & Technologies University of Koblenz Landau, Germany Thank you for your attention! Your Questions?