Introduction Context Copying Subgraphs MDE Extending GT within Model Repositories Case Study Example Models Consistency Constraint Plain SDM Trfo Pieter van Gorp, Story Diagrams Control Flow Hans Schippers, Primitives for Model Dirk Janssens Primitives for Class Primitives for Attribute Conclusion Proposed Solution April 2, 2006 CM2RM Copy Operator Ext. to UML Profile WFRs Wrapping Up Related Work Conclusion 1 / 37
Contents ⊲ Introduction Context MDE Extending GT Context Case Study MDE Example Models Extending GT Consistency Constraint Case Study Languages Plain SDM Trfo Example Models Story Diagrams Consistency Constraint Control Flow Plain SDM Trfo Primitives for Model Story Diagrams Primitives for Class Control Flow Primitives for Attribute Primitives for Model Primitives for Class Conclusion Primitives for Attribute Proposed Solution Conclusion CM2RM Copy Operator Proposed Solution Ext. to UML Profile CM2RM Copy Operator WFRs Ext. to UML Profile WFRs Wrapping Up Wrapping Up Related Work Related Work Conclusion Conclusion 2 / 37
Outline Introduction ⊲ Context MDE Extending GT Context Case Study MDE Example Models Extending GT Consistency Constraint Case Study Languages Plain SDM Trfo Example Models Story Diagrams Consistency Constraint Control Flow Plain SDM Trfo Primitives for Model Story Diagrams Primitives for Class Control Flow Primitives for Attribute Primitives for Model Primitives for Class Conclusion Primitives for Attribute Proposed Solution Conclusion CM2RM Copy Operator Proposed Solution Ext. to UML Profile CM2RM Copy Operator WFRs Ext. to UML Profile WFRs Wrapping Up Wrapping Up Related Work Related Work Conclusion Conclusion 3 / 37
Context: Model Driven Software Engineering Introduction Context ⊲ MDE Extending GT Case Study Model A simplified representation of a part of Example Models the world, named the system [Sei03] Consistency Constraint Plain SDM Trfo Repositories Databases: Story Diagrams ◮ serializing into standard formats (like Control Flow Primitives for Model XMI), Primitives for Class ◮ exposing a query and transformation Primitives for Attribute Conclusion API (like OCL and JMI). Proposed Solution Challenge Manage consistency between and within CM2RM Copy Operator Ext. to UML Profile models: check and transform WFRs Platforms Matter Generative (more complex than Wrapping Up Related Work interpretative, cfr. ToolNet pres. ) Conclusion 4 / 37
Context: Extending Graph Transformation Introduction Context MDE ⊲ Extending GT Case Study Why Graph Transformation? Ability to model a model Example Models transformation Consistency Constraint Plain SDM Trfo Research Goal Extend graph transformation: Story Diagrams ◮ model transformations can be Control Flow Primitives for Model programmed at a high level of Primitives for Class abstraction, while Primitives for Attribute Conclusion ◮ the low-level APIs of mainstream Proposed Solution model repositories are interfaced by CM2RM Copy Operator means of compilers. Ext. to UML Profile WFRs ◮ not “just” interpreting the rules, Wrapping Up execute them on a COTS modeling Related Work tool. Conclusion 5 / 37
Outline Introduction Context MDE Extending GT Context ⊲ Case Study MDE Example Models Extending GT Consistency Constraint Case Study Languages Plain SDM Trfo Example Models Story Diagrams Consistency Constraint Control Flow Plain SDM Trfo Primitives for Model Story Diagrams Primitives for Class Control Flow Primitives for Attribute Primitives for Model Primitives for Class Conclusion Primitives for Attribute Proposed Solution Conclusion CM2RM Copy Operator Proposed Solution Ext. to UML Profile CM2RM Copy Operator WFRs Ext. to UML Profile WFRs Wrapping Up Wrapping Up Related Work Related Work Conclusion Conclusion 6 / 37
Conceptual and Robustness Model Introduction Context Schedule 1..* Attendee Person MDE 0..* +participation 1 +type : Schedule Type [1] +user 0..* 0..* Extending GT +acceptableLimit : int +excludedBy +preferredBy +cancelLimit : int Case Study Flexibility +level : int ⊲ Example Models 0..* 0..* +exclusion +preference Consistency Constraint Time Interval Plain SDM Trfo 0..* 0..* Story Diagrams Control Flow +from +to Moment Primitives for Model 1 1 Primitives for Class Primitives for Attribute <<Entity>> Initiator Login Form Account Service Conclusion Person Proposed Solution Main Screen CM2RM Copy Operator Ext. to UML Profile <<Entity>> WFRs Confirm Meeting Status Service Schedule Wrapping Up Related Work Attendee Mail <<Entity>> Meeting Location Conclusion 7 / 37
Graphs? = ⇒ Abstract Syntax Introduction Context MDE Node n1. Extending GT Type: Model Attribute values: Node n2. name= "Data" Case Study Type: UmlPackage ... Attribute values: Links: name= "Examples" ⊲ Example Models l1 (to n2, label "ownedElement") Links: l2 (to n3, label "ownedElement" ) Consistency Constraint l1 (to n1, label "namespace") Node n3. Plain SDM Trfo Type: UmlPackage Node n4. Attribute values: Story Diagrams name= "Meeting Scheduler" Type: Model Attribute values: Links: Control Flow l3 (to n4, label "ownedElement") name= "CM" ... visibility= Public Primitives for Model Links: l4 (to n7, label "stereotype") Primitives for Class Node n5. Type: Stereotype Primitives for Attribute Attribute values: name= "Foreign Key" Conclusion baseClass= "Classifier" ... Proposed Solution Node n6. Type: UmlPackage CM2RM Copy Operator Attributes values: name= "Robustness Modeling" Ext. to UML Profile Links: l5 (to n7, label WFRs "ownedElement") Wrapping Up Node n7. Related Work Type: Stereotype Attributes values: Conclusion name= "Conceptual Model" Links: l4 (to n4, label "extendedElement") l5 (to n6, label "namespace") 8 / 37
Case Study: Consistency Constraint Introduction Context MDE Extending GT Case Study Each class in the conceptual model should correspond Example Models ⊲ Consistency to an entity in the robustness model. Constraint Plain SDM Trfo Constraint Violation Scenario only conceptual model Story Diagrams has been developed, no robustness Control Flow Primitives for Model model yet Primitives for Class Repairing Transformation generate robustness model Primitives for Attribute Conclusion from the conceptual model Proposed Solution ◮ duplicate classes with their attributes CM2RM Copy Operator Ext. to UML Profile as entities WFRs ◮ no services, no screens Wrapping Up Related Work Conclusion 9 / 37
Outline Introduction Context MDE Extending GT Context Case Study MDE Example Models Extending GT Consistency Constraint Case Study Languages ⊲ Plain SDM Trfo Example Models Story Diagrams Consistency Constraint Control Flow Plain SDM Trfo Primitives for Model Story Diagrams Primitives for Class Control Flow Primitives for Attribute Primitives for Model Primitives for Class Conclusion Primitives for Attribute Proposed Solution Conclusion CM2RM Copy Operator Proposed Solution Ext. to UML Profile CM2RM Copy Operator WFRs Ext. to UML Profile WFRs Wrapping Up Wrapping Up Related Work Related Work Conclusion Conclusion 10 / 37
Trfo Language: Story Diagrams Introduction Context MDE Extending GT Case Study ◮ Node instances are typed by classes (attributes, Example Models Consistency Constraint associations, inheritance) Plain SDM Trfo ◮ Primitive Operations: Create/Delete a Node/Edge, ⊲ Story Diagrams Control Flow Update attribute values Primitives for Model ◮ Control Structure: Primitives for Class Primitives for Attribute ◮ Sequence of rewrite rules: introduces Conclusion ≪ bound ≫ nodes, Proposed Solution ◮ loop, branch, method call CM2RM Copy Operator Ext. to UML Profile ◮ UML-alike syntax: Fujaba (large community) WFRs ◮ Standard UML syntax: UML Profile for SDM Wrapping Up Related Work (MoTMoT) Conclusion 11 / 37
Iterative copying cheaper than recursive copying Allocation in copying
Copying Garbage Collection Guido Tack 14. November 2001 tack@ps.uni-sb.de 1
Planar Induced Subgraphs of Sparse Graphs Glencora Borradaile, David Eppstein ,
24/03/2015 Formal terms 1 Object-learning Social imitation Emulation
CS 2112 Lab: Inheritance September 24 / 26, 2018 Inheritance Overview
Incremental Copying Collection with Pinning (Progress Report) Daniel
ResourceSync for Seman/c Web Data Copying and Synchroniza/on Simeon
Not every generational GC is a copying generational GC. Knowing when to
Pattern Avoidance and Non-Crossing Subgraphs of Polygons M. Tannock C. Bean,
On the Size and the Approximability of Minimum Temporally Connected Subgraphs
should future variability modeling languages express constraints in ocl? Don
Simplified data-flow analysis with Datalog. by Franois Gauthier It all began
KSU STUDENT KSU STUDENT PORTAL PORTAL MSE Project Presentation 2.0 Javier
Validation of Constraints Among Configuration Parameters Using (Search-Based)
Requirements Checking for Object-Oriented Software Design with difgerent
Class Diagram with Constraints Philippe Nguyen McGill University COMP-762
State of the Art and Future Directions in Model Management Research
Vegetated Filter Strip Design w w w. t r a n s p o r t a t i o n . o h i o .
Open Data Detector - Status & Release A. Salzburger (CERN) From this
Strip detector with active edge: charge collection simulations J. Segal, July
On-farm Experiment (OFE) with Focus on Large Strip Trials Suman Rakshit SAGI
Company Presentation October 23, 2018 Forward Looking Statements This