Hans Vangheluwe 29 April 2012 CAMPaM workshop, Bellairs Research - - PowerPoint PPT Presentation

hans vangheluwe
SMART_READER_LITE
LIVE PREVIEW

Hans Vangheluwe 29 April 2012 CAMPaM workshop, Bellairs Research - - PowerPoint PPT Presentation

Model Everything! Compl. Causes Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Promises and Challenges of Model-Based Design Hans Vangheluwe 29 April 2012 CAMPaM workshop, Bellairs Research Institute, Barbados


slide-1
SLIDE 1

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Promises and Challenges of Model-Based Design

Hans Vangheluwe

29 April 2012 CAMPaM workshop, Bellairs Research Institute, Barbados

slide-2
SLIDE 2

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

slide-3
SLIDE 3

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity

slide-4
SLIDE 4

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly

slide-5
SLIDE 5

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science)

slide-6
SLIDE 6

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation

slide-7
SLIDE 7

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation Formal Verification of Properties (all models, all behaviours)

slide-8
SLIDE 8

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation Formal Verification of Properties (all models, all behaviours) Model Checking of Properties (one model, all behaviours)

slide-9
SLIDE 9

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation Formal Verification of Properties (all models, all behaviours) Model Checking of Properties (one model, all behaviours) Test Generation

slide-10
SLIDE 10

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation Formal Verification of Properties (all models, all behaviours) Model Checking of Properties (one model, all behaviours) Test Generation Simulation (one model, one behaviour) . . . calibration, optimization, . . .

slide-11
SLIDE 11

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity Model Everything . . . Explicitly for design (Engineering) and analysis (Science) The spectrum of uses of models Documentation Formal Verification of Properties (all models, all behaviours) Model Checking of Properties (one model, all behaviours) Test Generation Simulation (one model, one behaviour) . . . calibration, optimization, . . . Application Synthesis (mostly for models of software)

slide-12
SLIDE 12

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Requirements (“What?”) Detached or Semi-detached Style (classical, modern, . . . ) Number of Floors Number of rooms of different types (bedrooms, bathrooms, . . . ) Garage, Storage, . . . Cellar . . .

slide-13
SLIDE 13

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Requirements (“What?”) Detached or Semi-detached Style (classical, modern, . . . ) Number of Floors Number of rooms of different types (bedrooms, bathrooms, . . . ) Garage, Storage, . . . Cellar . . . Design (“How?”)

slide-14
SLIDE 14

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Requirements (“What?”) Detached or Semi-detached Style (classical, modern, . . . ) Number of Floors Number of rooms of different types (bedrooms, bathrooms, . . . ) Garage, Storage, . . . Cellar . . . Design (“How?”)

slide-15
SLIDE 15

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

slide-16
SLIDE 16

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

System Boundaries System to be built/studied Environment with which the system interacts

slide-17
SLIDE 17

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

System vs. “Plant”

www.mathworks.com/products/demos/simulink/PowerWindow/html/PowerWindow1.html

slide-18
SLIDE 18

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Number of Components – hierarchical (de-)composition

slide-19
SLIDE 19

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Crowds: diversity, interaction

www.3dm3.com

slide-20
SLIDE 20

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Diversity of Components: Power Window

slide-21
SLIDE 21

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Non-compositional/Emergent Behaviour

slide-22
SLIDE 22

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Uncertainty Often related to level of abstraction: for example continuous vs. discrete

www.engr.utexas.edu/trafficSims/

slide-23
SLIDE 23

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Question: is the deviation from the trend periodic?

slide-24
SLIDE 24

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Answer: transform to make the solution obvious

slide-25
SLIDE 25

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Guiding principle (∼ physics: principle of minimal action) minimize accidental complexity,

  • nly essential complexity remains

Fred P . Brooks. No Silver Bullet – Essence and Accident in Software Engineering. Proceedings of the IFIP Tenth World Computing Conference, pp. 1069–1076, 1986. http://www.lips.utexas.edu/ee382c-15005/Readings/Readings1/05-Broo87.pdf

slide-26
SLIDE 26

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Dealing with Complexity: some approaches multiple abstraction levels

  • ptimal formalism

multiple formalisms multiple views

slide-27
SLIDE 27

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Abstraction Levels

Different Abstraction Levels – properties preserved

slide-28
SLIDE 28

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Abstraction Levels

Levels of Abstraction/Views: Morphism

detailed (technical) level abstract (decision) level abstraction simulation M_d M_t trajectory model traj_t traj_d

slide-29
SLIDE 29

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Most Appropriate Formalism (Minimizing Accidental Complexity)

www.planeshift.it Massively Multiplayer Online Role Playing games need Non-Player Characters (NPCs)

slide-30
SLIDE 30

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions TankWars: high level

Sensors Analyzers Memorizers Strategical Deciders Tactical Deciders Executors Coordinators Actuators Tank Turret Radar FuelTank WeaponDetectionSystem InRangeDetector EnemyTracker FuelStationMap ObstacleMap RepairStationMap PilotStrategy AttackPlanner RefuelPlanner RepairPlanner ExplorePlanner EscapePlanner Pathfinder Steering TurretTankMovementCoordinator MotorControl TurretControl TurretSteering ObstacleDetector WaypointDetector

slide-31
SLIDE 31

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Strategic Deciders – High-level Goals

EnoughFuel NormalOperation

PilotStrategy

Attacking Repairing

damageHigh repaired

Fleeing

[repairTracker. repairPosKnown] [not repairTracker. repairPosKnown] [repairTracker. repairPosKnown]

Exploring

fuelLow

Refueling

fuelFull H* [in enemyTracker.enemyPosKnown && not fuelTank.lowFuel] BBBBBBBBBBBBBBBBBBBBBBB[not fuelTracker.fuelPosKnown] [fuelTracker.fuelPosKnown] Jörg Kienzle, Alexandre Denault, Hans Vangheluwe. Model-Based Design of Computer-Controlled Game Character

  • Behavior. MoDELS 2007: 650-665
slide-32
SLIDE 32

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Strategic Deciders – High-level Goals

EnoughFuel NormalOperation

PilotStrategy

Attacking Repairing

damageHigh repaired

Fleeing

[repairTracker. repairPosKnown] [not repairTracker. repairPosKnown] [repairTracker. repairPosKnown]

Exploring

fuelLow

Refueling

fuelFull H* [in enemyTracker.enemyPosKnown && not fuelTank.lowFuel] BBBBBBBBBBBBBBBBBBBBBBB[not fuelTracker.fuelPosKnown] [fuelTracker.fuelPosKnown] Jörg Kienzle, Alexandre Denault, Hans Vangheluwe. Model-Based Design of Computer-Controlled Game Character

  • Behavior. MoDELS 2007: 650-665

Could have used production rules instead of Statecharts

Eugene Syriani, Hans Vangheluwe: Programmed Graph Rewriting with DEVS. AGTIVE 2007: 136-151

slide-33
SLIDE 33

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

“Management Flight Simulator” using Forrester System Dynamics model

slide-34
SLIDE 34

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Causal Block Diagram model of Harmonic Oscillator

x0 0.0 y0 1.0

IC

x

IC

y −

I OUT

K 1.0 0.0 PLOT

slide-35
SLIDE 35

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Petri Net model of Producer – Consumer

P.Calculating 1 Wait4Cons Buffer Buffer−p 1 Wait4Prod 1 C.Calculating Produce Put in Buffer Rem.from buffer Consume

slide-36
SLIDE 36

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

GPSS model of Telephone Exchange

FN1 12 2 V2 V1 PH 1 LR PH1 V1 H 2 P2 NE P1 S PH1 LNKS R PH1 1 LR PH2 R PH1 LNKS 1 S PH2 FN1 120 Function: 1 LNKS 10

slide-37
SLIDE 37

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multi-Formalism

Multiple Formalisms: Power Window

slide-38
SLIDE 38

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multi-Formalism

Components in Different Formalisms

www.mathworks.com/products/demos/simulink/PowerWindow/html/PowerWindow1.html

slide-39
SLIDE 39

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multi-Formalism

Controller, using Statechart(StateFlow) formalism

slide-40
SLIDE 40

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multi-Formalism

Mechanics subsystem

slide-41
SLIDE 41

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Views/Concerns/Aspects

Multiple (consistent !) Views (in = Formalisms)

slide-42
SLIDE 42

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Views/Concerns/Aspects

View: Events Diagram

slide-43
SLIDE 43

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Views/Concerns/Aspects

View: Protocol Statechart

slide-44
SLIDE 44

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Multiple Views/Concerns/Aspects

No Free Lunch!

Solutions often introduce their own accidental complexity multiple abstraction levels (need morphism)

  • ptimal formalism (need precise meaning)

multiple formalisms (need relationship) multiple views (need consistency)

slide-45
SLIDE 45

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Multi-Paradigm Modelling ( model everything, minimize accidental complexity ) at the most appropriate level of abstraction using the most appropriate formalism(s) Class Diagrams, Differential Algebraic Equations, Petri Nets, Bond Graphs, Statecharts, CSP , Queueing Networks, Sequence Diagrams, Lustre/Esterel, . . . with transformations as first-class models

Pieter J. Mosterman and Hans Vangheluwe. Computer Automated Multi-Paradigm Modeling: An Introduction. Simulation 80(9):433–450, September 2004. Special Issue: Grand Challenges for Modeling and Simulation.

slide-46
SLIDE 46

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions How to deal with Complexity? The Need for Transformations

Waste Water Treatment Plants (WWTPs) NATO’s Sarajevo WWTP www.nato.int/sfor/cimic/env-pro/waterpla.htm

slide-47
SLIDE 47

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions How to deal with Complexity? The Need for Transformations

What does this WWTP model mean?

influent mixer aeration_tank settler effluent f_influent f_mixed f_processed f_out f_bacteria

slide-48
SLIDE 48

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions How to deal with Complexity? The Need for Transformations

Transformation from WWTP to . . .

influent f_influent f_influent C_influent 0.0

OUT

mixer f_influent f_bacteria f_mixed f_bacteria f_influent f_mixed

I OUT

C_aeration 0.9 aeration_tank f_mixed aeration_fraction f_processed f_processed f_mixed

TRANSFORM TRANSFORM TRANSFORM

slide-49
SLIDE 49

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions How to deal with Complexity? The Need for Transformations

. . . its meaning (steady-state abstraction): Causal Block Diagram (CBD)

C_influent 10.0

OUT

C_settling 0.6

I OUT I OUT

− 1.0

OUT

effluent

I OUT

f_influent f_bacteria f_mixed settling_fraction

  • ne

negated dump_fraction f_out C_aeration 0.9 aeration_fraction f_processed

slide-50
SLIDE 50

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions How to deal with Complexity? The Need for Transformations

Meaning of the CBD        

C_influent 10.0 OUT C_bacteria 1.0 C_settling 0.6 I OUT I OUT − 1.0 OUT effluent dump I OUT f_influent f_bacteria f_mixed settling_fraction
  • ne
negated dump_fraction f_dump f_out C_aeration 0.9 aeration_fraction f_processed

        =             

f_influent = C_influent f_bacteria = C_bacteria f_mixed = f_influent + f_bacteria aeration_fraction = C_aeration f_processed = aeration_fraction ∗ f_mixed settling_fraction = C_settling negated = −settling_fraction

  • ne

= 1 dump_fraction =

  • ne + negated

f_dump = f_processed ∗ dump_fraction f_out = settling_fraction ∗ f_processed

slide-51
SLIDE 51

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

WWTP Domain-Specific Modelling Environment www.hemmis.com/products/west/

Henk Vanhooren, Jurgen Meirlaen, Youri Amerlinck, Filip Claeys, Hans Vangheluwe, and Peter A. Vanrolleghem. WEST: Modelling biological wastewater treatment. Journal of Hydroinformatics, 5(1):27-50, 2003.

slide-52
SLIDE 52

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Multi-formalism coupled model: multi-formalism modelling

Msub_1 Msub_2 CoupledModel CouplingGraph Msub_3

slide-53
SLIDE 53

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Formalism Transformation Graph

DEVS

Process Interaction Discrete Event state trajectory data (observation frame) Petri Nets Statecharts scheduling-hybrid-DAE Bond Graph a-causal Bond Graph causal DAE non-causal set DAE causal set PDE Transfer Function Difference Equations System Dynamics KTG Cellular Automata Event Scheduling Discrete Event 3 Phase Approach Discrete Event DAE causal sequence (sorted) DEVS&DESS Activity Scanning Discrete Event Timed Automata Causal Block Diagram

slide-54
SLIDE 54

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

DS(V)M example application, the PhoneApps Domain-Specific model

slide-55
SLIDE 55

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

DS(V)M example application: conference registration (Google Android)

slide-56
SLIDE 56

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Transformation: extract behaviour (Statechart)

slide-57
SLIDE 57

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Transformation: extract presentation

slide-58
SLIDE 58

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Only transform . . .

ConferenceRegistrationApps StateCharts AndroidAppScreens AndroidAppFiles Actual files (AndroidManifest.xml, PhoneApp.java, PhoneAppStateChart.java, screen_*.xml) PhoneApps 1 2 3 4 5 6 Raphael Mannadiar and Hans Vangheluwe. Modular synthesis of mobile device applications from domain-specific

  • models. Proceedings of the seventh International Workshop on Model-Based Methodologies for Pervasive and

Embedded Software (MoMPES). 2010.

slide-59
SLIDE 59

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Why DS(V)M ? (as opposed to General Purpose modelling) match the user’s mental model of the problem domain maximally constrain the user (to the problem at hand) ⇒ easier to learn ⇒ avoid errors separate domain-expert’s work from analysis/transformation expert’s work re-use transformation knowledge (such as in variations of a Domain-Specific formalism) Anecdotal evidence of 5 to 10 times speedup

Steven Kelly and Juha-Pekka Tolvanen. Domain-Specific Modeling: Enabling Full Code Generation. Wiley 2008.

slide-60
SLIDE 60

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

slide-61
SLIDE 61

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

slide-62
SLIDE 62

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Model-Based Development: Modify the Model

model model’ app’ app transformation transformation small modification

slide-63
SLIDE 63

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Model-Based Development: Modify the Transformation

model model app’ app transformation small modification transformation’

slide-64
SLIDE 64

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Language Engineering

A Production System Model

slide-65
SLIDE 65

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Language Engineering

Modelling Languages as Sets of Models

slide-66
SLIDE 66

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Modelling Languages

Meta-Modelling . . . and more

slide-67
SLIDE 67

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Modelling Languages

Modelling Abstract Syntax: Meta-Model

not shown: attributes, local and global contraints

slide-68
SLIDE 68

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Modelling Languages

Modelling Concrete Syntax (and UI Behaviour)

slide-69
SLIDE 69

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Modelling Modelling Languages

Meta-Modelling Challenges scalability of (meta-)models model differencing and meaningful model version control

Antonio Cicchetti, Davide Di Ruscio, Alfonso Pierantonio. A Metamodel Independent Approach to Difference

  • Representation. Journal of Object Technology 6(9): 165-185 (2007)

(meta-)model evolution

Bart Meyers and Hans Vangheluwe. A framework for evolution of modelling languages. Science of Computer Programming, 2011. http://dx.doi.org/10.1016/j.scico.2011.01.002.

deal with concrete syntax (mix textual/visual) in a unified manner

Francisco Pérez Andrés, Juan de Lara, Esther Guerra. Domain Specific Languages with Graphical and Textual Views. AGTIVE 2007: 82-97

debugging

Raphael Mannadiar and Hans Vangheluwe. Debugging in Domain-Specific Modelling. In The third International Conference on Software Language Engineering - SLE, volume 6563 of Lecture Notes in Computer Science (LNCS), pages 276 - 285. Springer, 2011. Eindhoven, The Netherlands.

slide-70
SLIDE 70

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Modelling Operational Semantics in the form of Rules Note the use of concrete syntax !

slide-71
SLIDE 71

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Denotational Semantics

slide-72
SLIDE 72

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Modelling Denotational Semantics

slide-73
SLIDE 73

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

How: Transformation Triple-Rules (bi-directional!)

Juan de Lara, Hans Vangheluwe. Automating the transformation-based analysis of visual languages. Formal Aspects of Compututing 22(3-4):297-326 (2010)

slide-74
SLIDE 74

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Model Transformation Challenges precise modelling of transformation languages (including higher-order transformations)

Thomas Kühne, Gergely Mezei, Eugene Syriani, Hans Vangheluwe, and Manuel Wimmer. Systematic transformation development. Electronic Communications of the EASST, 21: Multi-Paradigm Modeling, 2009. http://eceasst.cs.tu-berlin.de/index.php/eceasst/issue/view/30.

families of transformation languages Eugene Syriani and Hans Vangheluwe.

De-/re-constructing model transformation languages. Electronic Communications of the EASST, 29: Graph Transformation and Visual Modeling Techniques (GT-VMT), 2010. http://eceasst.cs.tu-berlin.de/index.php/eceasst/issue/view/39.

standardization/interoperability scalability (expressiveness and performance)

slide-75
SLIDE 75

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Model Transformation Challenges ctd. analysis of (properties of) model transformations (and of properties of transformed models)

Levi Lucio, Bruno Barroca, Vasco Amaral. A Technique for Automatic Validation of Model Transformations. MoDELS 2010: 136-150

automated testing of model transformations (and of transformed models) debugging

Raphael Mannadiar and Hans Vangheluwe. Debugging in Domain-Specific Modelling. In The third International Conference on Software Language Engineering - SLE, volume 6563 of Lecture Notes in Computer Science (LNCS), pages 276 - 285. Springer, 2011. Eindhoven, The Netherlands.

trace-ability (backward links) from transformations to relationships (consistency)

slide-76
SLIDE 76

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation

Eat Your Own Dogfood!

slide-77
SLIDE 77

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Model Transformation Juan de Lara and Hans Vangheluwe. AToM3: A tool for multi-formalism and meta-modelling. FASE, LNCS 2306, pages 174 - 188. 2002.

slide-78
SLIDE 78

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Design-space Exploration

slide-79
SLIDE 79

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Design-space Exploration

slide-80
SLIDE 80

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Design-space Exploration Sagar Sen and Hans Vangheluwe. Multi-domain physical system modeling and control based on meta-modeling and graph rewriting. In Computer Aided Control Systems Design (CACSD), pages 69 - 75, Munich, Germany, October 2006. IEEE.

slide-81
SLIDE 81

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Design-space Exploration

Exploring the Design Space

slide-82
SLIDE 82

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Deployment-space Exploration

Deployment Space: Platform-Based Design (Alberto Sangiovanni-Vincentelli)

slide-83
SLIDE 83

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Deployment-space Exploration

slide-84
SLIDE 84

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions Deployment-space Exploration Joachim Denil, Hans Vangheluwe, Pieter Ramaekers, Paul De Meulenaere, Serge Demeyer. DEVS for AUTOSAR platform modeling. Symposium On Theory of Modeling and Simulation. Boston, MA. 2011.

slide-85
SLIDE 85

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions A disaster waiting to happen . . .

Co-evolution starting point

Bart Meyers and Hans Vangheluwe. A framework for evolution of modelling languages. Science of Computer

  • Programming. 2011. (in press)
slide-86
SLIDE 86

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions A disaster waiting to happen . . .

Model (instance) evolution

slide-87
SLIDE 87

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions A disaster waiting to happen . . .

Image evolution

slide-88
SLIDE 88

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions A disaster waiting to happen . . .

Domain evolution

slide-89
SLIDE 89

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions A disaster waiting to happen . . .

Transformation evolution

slide-90
SLIDE 90

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Conclusions

model everything !

⇒ ability to manipulate knowledge

slide-91
SLIDE 91

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Conclusions

model everything !

⇒ ability to manipulate knowledge Causes of Complexity Dealing with Complexity Multi-Paradigm Modelling Domain-Specific Modelling Language Engineering Language Evolution Design-space Exploration Deployment-space Exploration

slide-92
SLIDE 92

Model Everything!

  • Compl. Causes

Dealing with Compl. MPM DSM Language Eng. Language Evolution Conclusions

Questions ?