Semantic Model-driven Engineeringstaab/Presentations/SemanticMD… · Semantic MDE 25 of 25 WeST...

Preview:

Citation preview

Web Science & TechnologiesUniversity of Koblenz ▪ Landau, Germany

Semantic Model-driven Engineering

Steffen Staab

Acknowledgements to students and colleagues@MOST projecthttp://most-project.eu

Steffen Staabstaab@uni-koblenz.de

Semantic MDE2 of 25

WeST

New level in Software Engineering

2

Development with untyped languages

Type-safe development with typed languages

Constraint-safe development with constraint languages

Guided developmentwith advising languages

Consistency-baseddevelopment with ontology

languages

1950

1960

1980

2010

1990

2000

2020

2030

1970

Ontology-Driven Software Development (ODSD)

[ODSD]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE3 of 25

WeST

OntologyWorld

(OntologyWare)

SoftwareModeling

World(ModelWare)

OntologyExpert

SoftwareEngineer

EMOF …

MOF

OWLRDF

Marrying Ontologies and Software Technology

[ODSD]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE4 of 25

WeST

OntologyWorld

(OntologyWare)

SoftwareModeling

World(ModelWare)

OntologyExpert

SoftwareEngineer

EMOF …

MOF

OWLRDF

Marrying Ontologies and Software Technology

[ODSD] 500+ terminologies in the B2B world

FMA

Snomed

GeneOntology

Terminologieswith 103 to106 entities

Steffen Staabstaab@uni-koblenz.de

Semantic MDE5 of 25

WeST

OntologyWorld

(OntologyWare)

SoftwareModeling

World(ModelWare)

OntologyExpert

SoftwareEngineer

EMOF …

MOF

OWLRDF

Marrying Ontologies and Software Technology

[ODSD] 500+ terminologies in the B2B world

ontologytechnologies

FMA

Snomed

GeneOntology

Terminologieswith 103 to106 entities

Steffen Staabstaab@uni-koblenz.de

Semantic MDE6 of 25

WeST

FoundationalODSD technology

Basic technology

ConsistencyPreservationIn ODSD

ODSD with ProcessGuidance

The MOST Project

[ODSD]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE7 of 25

WeST

FoundationalODSD technology

Ontology World(OntologyWare)

SoftwareModeling World

(ModelWare)

MDSD OntologiesBasic technology

TraceabilityOntology-based

configurationIntegration of Metamodels

and Ontologies

Case Studies

ConsistencyPreservationIn ODSD

ODSD with ProcessGuidance

The MOST Project

[ODSD]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE8 of 25

WeST

FoundationalODSD technology

Ontology World(OntologyWare)

SoftwareModeling World

(ModelWare)

MDSD OntologiesBasic technology

TraceabilityOntology-based

configurationIntegration of Metamodels

and Ontologies

Case Studies

ConsistencyPreservationIn ODSD

Consistency Checking for Processes

Bridges

Consistency Checking for

Structural Models

TwoUse:A Platform for

ODSD

Ontology-Guided

Software Development

ODSD with ProcessGuidance

Ontology-IntegratedModeling

The MOST Project

[ODSD]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE9 of 25

WeST

ONTOLOGY BASEDDOMAIN SPECIFIC LANGUAGES

Semantic MDE

Steffen Staabstaab@uni-koblenz.de

Semantic MDE10 of 25

WeST

Stakeholders

DSL User

DSL Designer DSLMetamodel

uses

specifies

Domain Modelbuilds

Metamodeling Language

uses

Bridge Developerspecifies

requires

Guidanceand services

Constraints

based on

defined in

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE11 of 25

WeST

Scenario at Comarch (PL)• Modeling physical devices, e.g. Cisco network devices

Cisco 7603:

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.

SupervisorEngine

HotSwappableOSMSlot

Slot

Slot

Configuration

Device

Domain Model:

DSL Designer

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE12 of 25

WeST

DSL User interacting with PDDSL

• Requirements of DSL User:• Consistency Checking

• Debugging of domain models

HotSwappableOSM

Configuration

Device

• Domain Model:DSL User

(inconsistent)

Error

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE13 of 25

WeST

HotSwappableOSM

DSL User interacting with PDDSL

Slot

Slot

Slot

Configuration

Device

• Domain Model:DSL User

(consistent)

• Requirements of DSL User:• Consistency Checking

• Debugging of domain models• Validate incomplete models

• Guidance and explanations how to complete the model

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE14 of 25

WeST

SPAInterface

HotSwappableOSM

HotSwappableOSM

DSL User interacting with PDDSL

Slot

Slot

Slot

Configuration

Device

• Domain Model:DSL User

(inconsistent)

• Requirements of DSL User:• Consistency Checking

• Debugging of domain models• Validate incomplete models

• Guidance and explanations how to complete the model

ErrorErrorErrorExplanation:Configuration hasSlot some Slot and hasCard some SupervisorEngine

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE15 of 25

WeST

SupervisorEngine

DSL User interacting with PDDSL

• 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

HotSwappableOSMSlot

Slot

Slot

Configuration

• Domain Model:DSL UserConfiguration7603

Device

Cisco7603

(consistent)

[MODELS09]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE16 of 25

WeST

Integrated Modeling – Modeling PDDSL

class Device {reference hasConfiguration [1-*]: Configuration;}

class Cisco7603 extends Device

}

class Configuration

reference hasSlot : Slot;}

class Configuration7603 extends Configuration

}

class Slot {reference hasCard [1-*]: Card;

}

, equivalentWith restrictionOn hasConfigurationwith min 1 Configuration7603 {

{

equivalentWithIntersectionOf(restrictionOn hasSlot with min 1 Slot,

restrictionOn hasSlot somerestrictionOn hasCard some SupervisorEngine) {

{

,equivalentWith IntersectionOf(restrictionOn hasSlot with exactly 3 Slot,

restrictionOn hasSlot with somerestrictionOn hasCard with some

UnionOf(HotSwappableOSM, SPAInterface) {

{

DSL Designer

Description Logics• Subset of first order logics• Reasoning at two levels

• Class level• Object Level

• Sound and complete reasoning• Pragmatically efficient

Steffen Staabstaab@uni-koblenz.de

Semantic MDE17 of 25

WeST

Ontoware TS Modelware TS

Bridging Technology‐ Integration ‐

Ecore Metametamodel

DSL Metamodel

Model Model

OntologyTBox

OWL2 Metamodel

ABox M1

M2

Hybrid (Meta‐)model

M3

ontoware

modelware

projectionprojection

Integrated (Meta‐)Metamodel

Modelprojection projection

integrationintegration

Querying Reasoning Technology

Validation ConstraintTechnology

Integration Bridge: Metamodelling PDDSL 

conformsTo

conformsTo

Tools

Tools

Bridge Developer

[DKE10]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE18 of 25

WeST

Evaluation: Stakeholders and measures

GQM methodology reused

ProductivityCompare development time under comparable conditions

QualityCompare development time spent on bug fixingAssumption: development is continued until no errors exist

Actor Productivity Quality

Bridge developer Not measured Not measured

DSL designer manual, pure modelsvs manual, hybrid vs generalized,hybrid

Productivitymeasure* bug ratio

Domain expert/ Customer expert

Cisco 7600 withPDDSL vs. WithoutPDDSL

Productivitymeasure* bug ratio

Domain user Survey customers Surveycustomers

[ECMFA10]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE19 of 25

WeST

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

Steffen Staabstaab@uni-koblenz.de

Semantic MDE20 of 25

WeST

PROCESS REASONINGSemantic MDE

Steffen Staabstaab@uni-koblenz.de

Semantic MDE21 of 25

WeST

Supporting SAP Development of Processes

From business developer to software developerBPMN at different levels of granularity

Steffen Staabstaab@uni-koblenz.de

Semantic MDE22 of 25

WeST

Ontoware TS Modelware TS

Bridging Technology‐ Transformation ‐

Ecore Metametamodel

DSL Metamodel

Model Model

OntologyTBox

OWL2 Metamodel

ABox M1

M2

M3

target model source 

model

Transformation Definition

target model

source model

sourcemetamodel

targetmetamodel

Querying Reasoning Technology

Validation ConstraintTechnology

Transformation Bridge for Process Reasoning

conformsTo

conformsTo

Tools

Tools

Transformation Engine

[DKE10]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE23 of 25

WeST

Mapping Process Steps

[DL 2009]

Steffen Staabstaab@uni-koblenz.de

Semantic MDE24 of 25

WeST

Transformation Bridge1. Eliminating parallel gateways: Executions remain the same

Predecessor sets:

PS(b11) = {a11};

PS(a21) = {b11}, etc.

Successor sets:

SS(b11) = {a21,b22};

SS(a21) = {b21}, etc.

Execution sets subsumptioncan be reduced to PS/SS sets subsumptions [DL2009]

Exponential complexity (O(n!))

2. Reduce execution sets to predecessor and successor sets:

Steffen Staabstaab@uni-koblenz.de

Semantic MDE25 of 25

WeST

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

Steffen Staabstaab@uni-koblenz.de

Semantic MDE26 of 25

WeST

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

Steffen Staabstaab@uni-koblenz.de

Semantic MDE27 of 25

WeST

Results per case study

Process refinement case study Quality: QI = 57%, savq = 36% Productivity: PI = 192%, savp = 66%

Process guidance case study Quality: QI = 66%, savq = 40% Productivity: PI = 254%, savp = 72%

27Experiments performed by J. Lemcke & colleagues, SAP AG

Steffen Staabstaab@uni-koblenz.de

Semantic MDE28 of 25

WeST

Calculation & overall results

Data gathered CS, CN – correct answers with / without support WS, WN – wrong answers with / without support tS, tN – time for questions with / without support

Measure: Quality improvement rq = = 1.6, QI = rq – 100% = 60%

Measure: Productivity improvement rp = = 3.12, PI = rp – 100% = 212%

Savings: sav = Quality: savq = 38% Productivity: savp = 68%

Steffen Staabstaab@uni-koblenz.de

Semantic MDE29 of 25

WeST

CONCLUSIONSemantic MDE

Steffen Staabstaab@uni-koblenz.de

Semantic MDE30 of 25

WeST

Bridge Classification

Motivation Bridging definition layerM3 layer M2 layer

Bridging Integration

Transformation

• Extended expressiveness of metamodeling language

• Additional Restrictions for M1 models

• Leveraging models by ontologies

• Knowledge represented independently of modeling language

• Replacement of coexistence between metamodels (+ conforming models) and ontologies

• Enabling ontology-based querying

• Transformations of models to formal ontological representations

• Enabling formal semantics

Steffen Staabstaab@uni-koblenz.de

Semantic MDE31 of 25

WeST

Bridging Tools

Tools Bridging definition layerM3 layer M2 layer

Bridging Integration

Transformation

OntoDSL: Metamodeling with

Ecore and OWL

UML Profile for OWL:Modeling UML class diagrams with OWL-based stereotypes

OWLizer:Transformations of

Ecore-based metamodels and

models to ontologies

BPMN Refinement:Transformations of process

models to ontologies

class Configuration7603 extends Configuration,equivalentWith (hasSlot with exactly 3 Slot)

and (hasSlot some (hasCard some(HotSwappableOSM or SPAInterface)

{

} ...

Steffen Staabstaab@uni-koblenz.de

Semantic MDE32 of 25

WeST

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

Steffen Staabstaab@uni-koblenz.de

Semantic MDE33 of 25

WeST

Ongoing Research and Outlook

Knowledge by the User & for the User Domain models must be included, maintained and aligned

with other models in the lifecycleFamilies of business processes [CAiSE 2011]Software product lines [submitted]

Terminologies and Ontologies are undervalued re-useableartefacts in software development

Knowledge not contained within one software project aloneSemantic Web can span many projects!

[TKB10;under development]

Semantic technologies respond to these needs

Steffen Staabstaab@uni-koblenz.de

Semantic MDE34 of 25

WeST

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

Steffen Staabstaab@uni-koblenz.de

Semantic MDE35 of 25

WeST

Further core publications for this area

[BCG05] Berardi, D., Calvanese, D., Giacomo, G.D.: Reasoning on UML classdiagrams. Artif. Intell. 168(1) (2005) 70-118.[GDD09] Gasevic, D., Djuric, D., Devedzic, V.: Model Driven Engineering andOntology Development, 2nd Ed. Springer (2009)[TKB10] J. Tappolet, C. Kiefer, A. Bernstein. Semantic web enabled softwareanalysis, 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 OntologyTechnologies: The TwoUse Approach, Wiley, to appear.

Web Science & TechnologiesUniversity of Koblenz ▪ Landau, Germany

Thank you for your attention!

Your Questions?

Recommended