A Software Architecture for Multi-paradigm Modelling Hans - - PowerPoint PPT Presentation

▶
a software architecture for multi paradigm modelling
SMART_READER_LITE
LIVE PREVIEW

A Software Architecture for Multi-paradigm Modelling Hans - - PowerPoint PPT Presentation

MESM 2002 Sharjah, United Arab Emirates 29 September, 2002 A Software Architecture for Multi-paradigm Modelling Hans Vangheluwe School of Computer Science, McGill University, Montr eal, Canada Juan de Lara E.T.S. de Inform atica,


slide-1
SLIDE 1

MESM 2002 Sharjah, United Arab Emirates 29 September, 2002

A Software Architecture for Multi-paradigm Modelling

Hans Vangheluwe

School of Computer Science, McGill University, Montr´ eal, Canada

Juan de Lara

E.T.S. de Inform´ atica, Universidad Auton´

  • ma de Madrid, Madrid, Spain

Ghislain Vansteenkiste

BIOMATH department, Ghent University, Ghent, Belgium

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 1/55

slide-2
SLIDE 2

Presentation Overview

  • Complex systems
  • Multi-paradigm Modelling and Simulation
  • 1. Levels of abstraction
  • 2. Multi-formalism Modelling and Simulation
  • 3. Meta-modelling formalism syntax and semantics
  • The AToM3 environment

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 2/55

slide-3
SLIDE 3

M,S M,S M,S M,S

Q

M,S

Q

M,S M,S M,S M,S

PaperPulp mill Waste Water Treatment Plant Fish Farm

Effluent Recycle (return) flow Clarifier (DESS) Activated sludge unit (DESS) Mixing Aeration Sedimentation Influent Stormwater tank 1 Stormwater tank 2

  • verflow

Switch

WWTP (DESS) System of WWTP and Stormwater tanks (DEVS)

Input/Output function Input function Output function

algae fish

GE RRA X

CFA

+

CFF

EDRF

+

GF

X X

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 3/55

slide-4
SLIDE 4

Complexity (system/model) due to . . .

  • 1. Number of interacting (coupled, concurrent) components (+ feedback)
  • 2. Variety of views at different levels of abstraction
  • 3. Variety of components (software/hardware, continuous/discrete)
  • 4. Uncertainty
✁ ✂

focus on 1 and 3

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 4/55

slide-5
SLIDE 5

Proposed solution: multi-paradigm modelling and simulation

  • 1. Different levels of abstraction
  • 2. Mixing different formalisms
  • 3. Modelling syntax and semantics of classes of models (formalisms):

meta-modelling All are closely related to model transformation

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 5/55

slide-6
SLIDE 6

Multi-paradigm dimensions

Abstraction Level Meta Level Formalism

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 6/55

slide-7
SLIDE 7

System under study: T

✄

l controlled liquid

is_full is_empty heat

  • ff

cool is_cold is_hot

fill empty closed

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 7/55

slide-8
SLIDE 8

Detailed (continuous) view, ALG + ODE formalism

Inputs (discontinuous

☎

hybrid model):

✆

Emptying, filling flow rate φ

✆

Rate of adding/removing heat W Parameters:

✆

Cross-section surface of vessel A

✆

Specific heat of liquid c

✆

Density of liquid ρ

✆

Temperature of influent Tin State variables:

✆

Temperature T

✆

Level of liquid l Outputs (sensors):

✆

is low

✝

is high

✝

is cold

✝

is hot

✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✡

dT dt

☛

1 l

☞

W cρA

✁

φ

✌

T

✁

Tin

✍ ✎

dl dt

☛

φ is low

☛ ✌

l

✏

llow

✍

is high

☛ ✌

l

✑

lhigh

✍

is cold

☛ ✌

T

✏

Tcold

✍

is hot

☛ ✌

T

✑

Thot

✍

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 8/55

slide-9
SLIDE 9

High-level (discrete) view, FSA formalism

level temperature cold T_in_between hot full l_in_between empty (cold,empty) empty fill empty fill cool heat cool heat (hot,full) (hot,empty) (cold,full) (cold,l_ib) (T_ib,l_ib) (hot,l_ib) (T_ib,full) (T_ib,empty)

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 9/55

slide-10
SLIDE 10

Levels of abstraction/views: trajectories

level temperature cold T_in_between hot

  • n
  • ff
  • ff
  • ff
  • f
  • n

is_cold sensor is_hot sensor full l_in_between empty

  • n off
  • ff off
  • ff on

is_full sensor is_empty sensor

Continuous State Trajectory Discrete State Trajectory

fill fill heat heat

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 10/55

slide-11
SLIDE 11

Multi-paradigm dimensions: abstraction/formalism

Abstraction Level Meta Level Formalism Formalism ODE meta-model model low high Formalism FSA

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 11/55

slide-12
SLIDE 12

Multi-paradigm dimension: abstraction

Abstraction Level Meta Level Formalism Formalism ODE meta-model model linearize low high

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 12/55

slide-13
SLIDE 13

Levels of abstraction/views: morphism

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

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 13/55

slide-14
SLIDE 14

Multi-paradigm dimensions: formalisms

Abstraction Level Meta Level Formalism

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 14/55

slide-15
SLIDE 15

Forrester System Dynamics model of Predator-Prey

Predator Prey Grazing_efficiency uptake_predator loss_prey predator_surplus_DR prey_surplus_BR

2−species predator−prey system MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 15/55

slide-16
SLIDE 16

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

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 16/55

slide-17
SLIDE 17

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

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 17/55

slide-18
SLIDE 18

Statechart model of Producer Consumer

Empty Full Producing Wait4Prod Wait4Cons Computing

Buff Producer Consumer

buffer++ buffer−− Produce / buffer++ [in Buff.Empty] / buffer−− [in Buff.Full] Consume

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 18/55

slide-19
SLIDE 19

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

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 19/55

slide-20
SLIDE 20

Event Scheduling DAE model of a Train

Train_at_rest AcceleratingODE

x v v k * ( v − v_init + 5 )

FrictionODE

x v v − k * ( v − 20 )

BrakingODE

x v v − k * ( v + 3 )

START EVENT

x = x_0 v = v_0 passengers = 0

Initialize_Model

passengers = passengers

Passenger_arrive

print "Train is leaving i

Train_is_full

print "Train is leaving a

Train_starts Stop_Accelerating Start_Accelerating Start_Braking

print "Train arrived at t

DepartureStart

passengers = passengers −

Departure_Event

monitoring fct.: v_max − v +−

testmax

monitoring fct.: v − v_min +−

testmin

monitoring fct.: stopping_x − x +−

test_arrival

monitoring fct.: v +−

Test_zerospeed IF 1 AFTER IF passengers < 10 AFTER random.uniform ( 1 , 10 ) IF 1 AFTER 5 IF passengers >= 10 AFTER IF 1 AFTER IF passengers > 0 AFTER 5

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 20/55

slide-21
SLIDE 21

Multi-paradigm dimensions: meta

Abstraction Level Meta Level Formalism

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 21/55

slide-22
SLIDE 22

What is Meta-modelling ?

  • A meta-model is a model of a modelling formalism
  • A meta-model is itself a model. Its syntax and semantics are

governed by the formalism it is described in. That formalism can be modelled in a meta-meta-model.

  • As a meta-model is a model, we can reason about it, manipulate it,

. . . In particular, properties of (all models in) a formalism can be formally proven.

  • Formalism-specific modelling and simulation tools can automatically

be generated from a meta-model (AToM3 A Tool for Multi-formalism Meta-Modelling).

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 22/55

slide-23
SLIDE 23
  • Formalisms can be tailored to specific needs by modifying the

meta-model (possibly through inheritance if specializing).

✒

Building domain/applicatin specific, possibly graphical modelling and simulation environments becomes affordable.

  • Semantics of new formalisms through extension or transformation

(multi-formalism).

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 23/55

slide-24
SLIDE 24

FSA model of Even Binary Number recognizer

Init End_1 End_0 1 1 1

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 24/55

slide-25
SLIDE 25

ER model of the FSA formalism syntax (meta-model)

Name type=String init.val isInitial type=Boolean in isFinal type=Boolean init FSAState current FSATransition points_to

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 25/55

slide-26
SLIDE 26

ER formalism + constraints (OCL/Python)

# check for unique input labels (FSA) for transition1 in state.out_connections: for transition2 in state.out_connections: if transition1 != transition2: if transition1.in == transition2.in: return("Non-determinism: input "+transition1.in)

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 26/55

slide-27
SLIDE 27

ER model of the ER formalism (meta-meta-model)

name type=String init.val attributes type=List init ERentity ERrelationship

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 27/55

slide-28
SLIDE 28

Meta-meta-. . .

meta-meta model meta-model processor meta-model user input a model of a class of models (the formalism MF) semantics within formalism MMF describes: structure and constraints a model in formalism MF

  • create
  • delete
  • verify (local, global)

meta-model processor model user input a model of a class of models (the formalism F) semantics within formalism MF describes: structure and constraints a model in formalism F

  • create
  • delete
  • verify (local, global)

MMF MF F (ER) (ER) (FSA) MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 28/55

slide-29
SLIDE 29

Causal Block Diagram Semantics ?

x0 0.0 y0 1.0

IC

x

IC

y −

I OUT

K 1.0 0.0 PLOT

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 29/55

slide-30
SLIDE 30

Causal Block Diagram Denotational Semantics

✞ ✟ ✟ ✠ ✟ ✟ ✡

dx dt

☛

y x

✌ ✍ ☛

dy dt

☛ ✁

Kx y

✌ ✍ ☛

1 K

☛

1

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 30/55

slide-31
SLIDE 31

FSA model Operational Semantics ?

Init End_1 End_0 1 1 1

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 31/55

slide-32
SLIDE 32

Simulation steps

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 32/55

slide-33
SLIDE 33

Init End_1 End_0 1 1 1 Current State Init End_1 End_0 1 1 1 Current State Init End_1 End_0 1 1 1 Current State Init End_1 End_0 1 1 1 Current State

Rule 1 Rule 2 Rule 2 Rule 2 Final Action

"Accept Input"

input 0 input 1 input 0 end of input

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 33/55

slide-34
SLIDE 34

Graph Grammar model of FSA OpSem

/ <ANY> <ANY> <ANY> Current State 2 4 3 1 / <COPIED> <COPIED> <COPIED> Current State 2 4 3 1 <ANY> 1 / <ANY> <ANY> <ANY> <ANY> Current State 2 4 3 5 1

/ <COPIED> <COPIED> <COPIED> <COPIED> Current State 2 4 3 5 1

::= ::= ::=

Rule 1 (priority 3) Rule 2 (priority 1) Rule 3 (priority 2) Locate Initial Current State State Transition Local State Transition condition: matched(4).input == input[0] action: remove(input[0]) condition: matched(4).input == input[0] action: remove(input[0])

<COPIED> Current State 3 1 2

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 34/55

slide-35
SLIDE 35

Model Transformation meta-specification

meta-model a model in formalism ER meta-model processor model user input a model of a class of models (the formalism NFA) semantics within formalism ER a model in formalism NFA

  • create
  • delete
  • verify (local, global)

MF F (ER) (NFA) meta-model a model in formalism MF meta-model processor model user input a model of a class of models (the formalism F) semantics within formalism MF describes: structure and constraints a model in formalism FSA

  • create
  • delete
  • verify (local, global)

MF F (ER) (FSA) (multi-formalism) model transformer = meta-model processor transformation meta-model MF (GGR)

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 35/55

slide-36
SLIDE 36

Timed Automata model of a Traffic Light + codegen

show(R) R show(O) O show(G) G show(O) CO PCR show(OFF) OFF after 60 after 10 pi pi pi after 50 pi pcr pcr after 10

  • ff
  • ff
  • ff
  • ff
  • ff

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 36/55

slide-37
SLIDE 37

Generated Application

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 37/55

slide-38
SLIDE 38

Model Transformation Uses (1)

  • Code generation
  • Operational Semantics (reference simulator)
  • Denotational Semantics

May model transformation as Graph Grammar

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 38/55

slide-39
SLIDE 39

FSD Denotational Semantics ?

Predator Prey Grazing_efficiency uptake_predator loss_prey predator_surplus_DR prey_surplus_BR

2−species predator−prey system MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 39/55

slide-40
SLIDE 40

FSD denotational semantics in terms of DAE

  • Semantics of “level” block:

d level dt

☛

BR

✁

DR

✓
  • Semantics of “algebraic” block: algebraic relationship between block’s

I/O signals

  • Semantics of the full model: set of components’ semantics equations.

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 40/55

slide-41
SLIDE 41

Formalism Transformation

state trajectory data (observation frame) DAE a-causal set DAE causal set DAE causal sequence (sorted) Difference Equations System Dynamics Transfer Function Causal Block Diagram

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 41/55

slide-42
SLIDE 42

Formalism transformation uses (2)

  • Add new formalisms without much effort (only ∆).
  • Re-use lower level modelling/simulation environment.
  • Answer questions at “optimal” level.
  • 1. System Dynamics: influences, domain-knowledge.
  • 2. DAE: algebraic dependency cycles.
  • 3. ALG + ODE: linear ?
  • 4. Trajectory, given initial conditions.
  • Optimization possible at every level.
  • Semantics of coupled multi-formalism models.

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 42/55

slide-43
SLIDE 43

Compositional Modelling: Coupled Model (network)

Msub_1 Msub_2 CoupledModel CouplingGraph Msub_3

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 43/55

slide-44
SLIDE 44

Closure under Coupling/Composition: Block Diagram

A B x y A B x y non-causal causal

Non-Causal:

A

✓

y

☛

B

✓

x

Causal:

B

✓

x :

☛

A

✓

y

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 44/55

slide-45
SLIDE 45

Closure under Coupling/Composition: non-causal Bond Graph

A B p p

A

✓

p

✓

ef fort

☛

B

✓

p

✓

ef fort A

✓

p

✓

flow

☛

B

✓

p

✓

flow

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 45/55

slide-46
SLIDE 46

Closure under Coupling/Composition: Discrete Event

A1 A2 B y y x DEP DEP ARR

  • schedule ARRivals
  • resolve collisions

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 46/55

slide-47
SLIDE 47

Closure under Coupling/Composition: Petri Net

A B ty tx p

  • Transitions A
✓

ty

✔

B

✓

tx are used as ports

  • Coupling between ports by means of a place p

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 47/55

slide-48
SLIDE 48

Complex System: Coupling Different Formalisms

M,S M,S M,S M,S

Q

M,S

Q

M,S M,S M,S M,S

PaperPulp mill Waste Water Treatment Plant Fish Farm

Effluent Recycle (return) flow Clarifier (DESS) Activated sludge unit (DESS) Mixing Aeration Sedimentation Influent Stormwater tank 1 Stormwater tank 2

  • verflow

Switch

WWTP (DESS) System of WWTP and Stormwater tanks (DEVS)

Input/Output function Input function Output function

algae fish

GE RRA X

CFA

+

CFF

EDRF

+

GF

X X

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 48/55

slide-49
SLIDE 49

Semantics of Coupled Models

  • 1. Super-formalism subsumes all formalisms
  • 2. Co-simulation (coupling resolved at trajectory level)
  • 3. Transform to common formalism

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 49/55

slide-50
SLIDE 50

Multi-formalism coupled model: co-simulation

Msub_1 Msub_2 CoupledModel CouplingGraph Msub_3

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 50/55

slide-51
SLIDE 51

Co-simulation of multi-formalism coupled models

  • Sub-models simulated with formalism-specific simulators.
  • Interaction due to coupling is resolved at trajectory level.
✂

Loss of information.

✂

Questions can only be answered at trajectory level.

✂

Speed and numerical accuracy problems for continuous formalisms.

✂

Meaningful for discrete-event formalisms (but beware of legitimacy !). Basis of the DoD High Level Architecture (HLA) for simulator interoperability.

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 51/55

slide-52
SLIDE 52

Multi-formalism coupled model: multi-formalism modelling

Msub_1 Msub_2 CoupledModel CouplingGraph Msub_3

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 52/55

slide-53
SLIDE 53

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

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 53/55

slide-54
SLIDE 54

Multi-formalism modelling

✕

co-simulation

  • 1. Start from a coupled multi-formalism model. Check consistency of this

model (e.g., whether causalites and types of connected ports match).

  • 2. Cluster all formalisms described in the same formalism.
  • 3. For each cluster, implement closure under coupling.
  • 4. Look for the best common formalism in the Formalism Transformation

Graph all the remaining different formalisms can be transformed to. Worst case: trajectory level (fallback to co-simulation).

  • 5. Transform all the sub-models to the common formalism.
  • 6. Implement closure under coupling of the common formalism.

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 54/55

slide-55
SLIDE 55

The Future . . .

  • Formalism Transformation (FTG)
  • Graph Grammars models for all Transformations
  • Simulator Meta-specification (reference implementation)
  • Model exchange (DTD from meta-model, XML from model)
  • Variations (flavours) of formalisms (syntax and semantics)
  • Automatic equivalence proofs (bi-simulation)
  • Meta-modelling Environment (ATOM3)

MESM 2002, 29 September, Sharjah U.A.E hv@cs.mcgill.ca A Software Architecture for Multi-Paradigm Modelling 55/55