semantic model-driven engineering
DESCRIPTION
Invited Talk on "Semantic Model-driven Engineering" at the Microsoft Research Software Summit 2011, Paris, France, April 13-15, 2011; View video at http://research.microsoft.com/apps/video/default.aspx?id=150058TRANSCRIPT
Web Science & TechnologiesUniversity of Koblenz ▪ Landau, Germany
Semantic Model-driven Engineering
Steffen Staab
Acknowledgements to students and colleagues@MOST projecthttp://most-project.eu
Steffen [email protected]
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 [email protected]
Semantic MDE3 of 25
WeST
OntologyWorld
(OntologyWare)
SoftwareModeling
World(ModelWare)
OntologyExpert
SoftwareEngineer
EMOF …
MOF
OWLRDF
Marrying Ontologies and Software Technology
[ODSD]
Steffen [email protected]
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 [email protected]
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 [email protected]
Semantic MDE6 of 25
WeST
FoundationalODSD technology
Basic technology
ConsistencyPreservationIn ODSD
ODSD with ProcessGuidance
The MOST Project
[ODSD]
Steffen [email protected]
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 [email protected]
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 [email protected]
Semantic MDE9 of 25
WeST
ONTOLOGY BASEDDOMAIN SPECIFIC LANGUAGES
Semantic MDE
Steffen [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
Semantic MDE21 of 25
WeST
Supporting SAP Development of Processes
From business developer to software developerBPMN at different levels of granularity
Steffen [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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 [email protected]
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?