Semantic Model-driven Engineering
Upcoming SlideShare
Loading in...5
×
 

Semantic Model-driven Engineering

on

  • 1,026 views

Invited Talk on "Semantic Model-driven Engineering" at the Microsoft Research Software Summit 2011, Paris, France, April 13-15, 2011; View video at ...

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=150058

Statistics

Views

Total Views
1,026
Views on SlideShare
1,026
Embed Views
0

Actions

Likes
0
Downloads
24
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Semantic Model-driven Engineering Semantic Model-driven Engineering Presentation Transcript

    • Web Science & Technologies University of Koblenz ▪ Landau, Germany Semantic Model-driven Engineering Steffen StaabAcknowledgements to students and colleagues@MOST project http://most-project.eu
    • New level in Software Engineering Ontology-Driven Software Development (ODSD) 2030 Consistency-based 2020 Guided development development with ontology with advising languages languages 2010 2000 Constraint-safe development with constraint languages 1990 1980 Type-safe development with typed languages 1970 1960 Development with untyped languages 1950[ODSD]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 2 of 25 2
    • Marrying Ontologies and Software Technology Software Ontology Engineer Expert Software Ontology Modeling World World (OntologyWare) (ModelWare) EMOF OWL … RDF MOF[ODSD]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 3 of 25
    • Marrying Ontologies and Software Technology Software Ontology Engineer Expert Terminologies with 103 to 106 entities Software Ontology Modeling Gene World World Ontology (OntologyWare) (ModelWare) Snomed EMOF OWL … RDF FMA MOF 500+ terminologies in[ODSD] the B2B worldWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 4 of 25
    • Marrying Ontologies and Software Technology Software Ontology Engineer Expert Terminologies with 103 to 106 entities Software Ontology Modeling Gene World World Ontology (OntologyWare) (ModelWare) Snomed EMOF OWL … RDF FMA MOF ontology 500+ terminologies in[ODSD] technologies the B2B worldWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 5 of 25
    • The MOST ProjectODSD with ProcessGuidanceConsistencyPreservationIn ODSDFoundationalODSD technologyBasic technology[ODSD]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 6 of 25
    • The MOST Project Software Modeling World Ontology World (ModelWare) (OntologyWare)ODSD with ProcessGuidanceConsistencyPreservationIn ODSDFoundational Integration of Ontology-basedODSD technology Traceability Metamodels configuration and OntologiesBasic technology MDSD Case Studies Ontologies[ODSD]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 7 of 25
    • The MOST Project Software Modeling World Ontology World (ModelWare) (OntologyWare)ODSD with Process Ontology- Ontology- TwoUse: GuidedGuidance Integrated A Platform for Software Modeling ODSD Development ConsistencyConsistency Consistency Checking forPreservation Bridges Checking for Structural ProcessesIn ODSD ModelsFoundational Integration of Ontology-basedODSD technology Traceability Metamodels configuration and OntologiesBasic technology MDSD Case Studies Ontologies[ODSD]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 8 of 25
    • Semantic MDE ONTOLOGY BASED DOMAIN SPECIFIC LANGUAGESWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 9 of 25
    • Stakeholders [MODELS09] Metamodeling Bridge Developer specifies Language uses DSL DSL Designer specifies defined in Constraints Metamodel based on uses Guidance DSL User Domain Model builds and services requiresWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 10 of 25
    • Scenario at Comarch (PL)• Modeling physical devices, e.g. Cisco network devices [MODELS09]Cisco 7603: Domain Model: Configuration Slot HotSwappableOSM Device Slot SupervisorEngine SlotRestrictions 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 DSL Designer • A Configuration7603 has exactly 3 Slots in which either a HotSwappableOSM or SPAInterface card is plugged in.WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 11 of 25
    • DSL User interacting with PDDSL• Domain Model: (inconsistent) DSL User Configuration HotSwappableOSM Device Error• Requirements of DSL User: • Consistency Checking • Debugging of domain models [MODELS09]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 12 of 25
    • DSL User interacting with PDDSL• Domain Model: (consistent) DSL User Configuration Slot HotSwappableOSM Device Slot Slot• Requirements of DSL User: • Consistency Checking • Debugging of domain models • Validate incomplete models • Guidance and explanations how to complete the model [MODELS09]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 13 of 25
    • DSL User interacting with PDDSL• Domain Model: (inconsistent) DSL User Configuration Slot HotSwappableOSM Device Explanation: Slot Configuration hasSlot someError and SPAInterface Slot hasCard some SupervisorEngine Slot HotSwappableOSM• Requirements of DSL User: • Consistency Checking • Debugging of domain models • Validate incomplete models • Guidance and explanations how to complete the model [MODELS09]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 14 of 25
    • DSL User interacting with PDDSL• Domain Model: (consistent) DSL User Configuration7603 Configuration Slot Cisco7603 HotSwappableOSM Device Slot SupervisorEngine Slot• 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]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 15 of 25
    • Integrated Modeling – Modeling PDDSLclass Device { reference hasConfiguration [1-*]: Configuration;} DSL Designerclass 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 logicsclass Configuration7603 extends Configuration , { • Reasoning atrestrictionOn hasSlot with some two levels equivalentWith IntersectionOf(restrictionOn hasSlot with exactly 3 Slot, • Class level restrictionOn hasCard with some UnionOf(HotSwappableOSM, SPAInterface) {} • Object Levelclass Slot { • Sound and complete reasoning} • Pragmatically efficient reference hasCard [1-*]: Card;WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 16 of 25
    • Integration Bridge: Metamodelling PDDSL  Bridge Developer Bridging Technology ‐ Integration ‐ Ontoware TS Modelware TS OWL2  integration Integrated  integration Ecore  (Meta‐)Metamodel Metametamodel M3 Metamodel conformsTo Tools Ontology Hybrid (Meta‐)model projection ontoware Tools TBox projection DSL Metamodel M2 Querying  modelware Validation  Reasoning  Constraint conformsTo Technology Technology projection projection ABox Model Model Model M1 [DKE10]WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 17 of 25
    • Evaluation: Stakeholders and measures Actor Productivity QualityGQM methodology reused Bridge developer Not measured Not measuredProductivityCompare development timeunder comparable conditions DSL designer manual, pure models Productivity vs manual, hybrid measureQuality vs generalized, * bug ratioCompare development time hybridspent on bug fixingAssumption: development iscontinued until no errors exist Domain expert/ Cisco 7600 with Productivity Customer expert PDDSL vs. Without measure PDDSL * bug ratio [ECMFA10] Domain user Survey customers Survey customersWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 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 analysisComponent/Approach Manual, pure Manual, hybrid Generalized, models hybridMetamodel integration 0 6h Re-useProjection to OWL 0 40 h (mostly) automatedServices implementation 98 h 28 h Finished Apr 30Testing& Bugfixing 34 h 18 h Finished Apr 30Productivity improvement - 40 h = 30% Finished Apr 30Quality improvement - 16 h = 47% Finished Apr 30WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 19 of 25
    • Semantic MDE PROCESS REASONINGWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 20 of 25
    • Supporting SAP Development of ProcessesFrom business developer to software developerBPMN at different levels of granularityWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 21 of 25
    • Transformation Bridge for Process Reasoning Bridging Technology ‐ Transformation ‐ Ontoware TS Modelware TS OWL2  target Transformation  source Ecore  metamodel Definition metamodel Metametamodel M3 Metamodel conformsTo Tools Ontology Transformation  target  Engine Tools TBox model source  DSL Metamodel M2 model Validation  Querying  Reasoning  Constraint conformsTo Technology Technology target  source  ABox model model Model Model M1 [DKE10] WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 22 of 25
    • Mapping Process Steps [DL 2009] WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 23 of 25
    • Transformation Bridge1. Eliminating parallel gateways:Executions remain the same Exponential complexity (O(n!))2. Reduce execution sets topredecessor and successor sets: 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 setssubsumptions [DL2009] WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 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 possibleExperiments performed by J. Lemcke & colleagues, SAP AGWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 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, respectivelyExperiments performed by J. Lemcke & colleagues, SAP AGWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 26 of 25
    • 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%Experiments performed by J. Lemcke & colleagues, SAP AGWeST Steffen Staab Semantic MDE 27 staab@uni-koblenz.de 27 of 25
    • 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%WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 28 of 25
    • Semantic MDE CONCLUSIONWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 29 of 25
    • Bridge Classification Motivation Bridging definition layer M3 layer M2 layer Bridging Integration • Extended • Leveraging models by expressiveness of ontologies metamodeling • Knowledge language represented • Additional Restrictions independently of for M1 models modeling language Transformation • Replacement of • Transformations of coexistence between models to formal metamodels (+ ontological conforming models) representations and ontologies • Enabling formal • Enabling ontology- semantics based queryingWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 30 of 25
    • Bridging Tools Tools Bridging definition layer M3 layer M2 layer Bridging Integration OntoDSL: UML Profile for OWL: Metamodeling with Modeling UML class diagramsclass Configuration7603 extends Configuration, Ecore and OWL with OWL-based stereotypes equivalentWith (hasSlot with exactly 3 Slot) and (hasSlot some (hasCard some (HotSwappableOSMOWLizer: Transformation or SPAInterface) BPMN Refinement:{ Transformations of Transformations of process} Ecore-based models to ontologies... metamodels and models to ontologies WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 31 of 25
    • Marriage of Ontology and Software TechnologiesOriginal Contributions: Ontology Reasoning Defined for class diagrammes „before“ [BCG05], but also  Domain-specific languages  Process languagesLessons 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 WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 32 of 25
    • Ongoing Research and OutlookKnowledge 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 needsWeST Steffen Staab Semantic MDE staab@uni-koblenz.de 33 of 25
    • Core publications for this talkhttp://west.uni-koblenz.de/Projects/twouseTransforming 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 andDomain Engineering. In: Proc. of ECMFA-2010 – 6th European Conference onModelling 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/IEEE12th 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 InternationalWorkshop on Description Logics (DL2009). 27 to 30 July 2009, Oxford, UK.[ODSD] U. Assmann, J. Pan, S. Staab, Y. Zhao (eds.). Ontology-driven SoftwareDevelopment, Springer, to appear.WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 34 of 25
    • 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 WorldWide Web 8, July 2010[Par11] F. S. Parreiras. Marrying Model-Driven Engineering and OntologyTechnologies: The TwoUse Approach, Wiley, to appear.WeST Steffen Staab Semantic MDE staab@uni-koblenz.de 35 of 25
    • Web Science & Technologies University of Koblenz ▪ Landau, GermanyThank you for your attention! Your Questions?