Toward understandable co-simulations in model driven engineering

Size: px
Start display at page:

Download "Toward understandable co-simulations in model driven engineering"

Transcription

1 Toward understandable co-simulations in model driven engineering University of Nice, I3S CNRS INRIA Aoste

2 Embedded cyber-physical systems Application Concurrent application State machine region Data flow process network... Heterogeneous Control flow Data flow Time driven Event driven 2

3 Embedded cyber-physical systems Application 10ms Concurrent Heterogeneous Constraints < 3ms safety-critical hard real-time Extra functional low power Cost Cyber-Physical related 3

4 Embedded cyber-physical systems Application 10ms Concurrent Heterogeneous Constraints safety-critical hard real-time Extra functional low power Cost Cyber-Physical related 4

5 Embedded cyber-physical systems Application 10ms Concurrent Heterogeneous Constraints < 3ms safety-critical hard real-time Extra functional low power Cost Cyber-Physical related Need for V&V 5

6 Embedded cyber-physical systems Application Execution Platform Parallel execution Heterogeneous Distributed... 6

7 Embedded cyber-physical systems Application deployment Execution Platform 7

8 Embedded cyber-physical systems Application deployment Execution Platform Constraints safety-critical hard real-time Extra functional Cyber-Physical related 8

9 Embedded cyber-physical systems Application deployment Different languages are used to address these different concerns Execution Platform Constraints safety-critical hard real-time Extra functional Cyber-Physical related 9

10 Embedded cyber-physical systems Application deployment Different languages are used to address these different concerns Execution Platform Need for V&V Constraints safety-critical hard real-time Extra functional of the global system despite the use of different languages Cyber-Physical related system ok? 10

11 Embedded cyber-physical systems Application deployment Different languages are used to address these different concerns Execution Platform Need for V&V Constraints safety-critical hard real-time Extra functional of the global system despite the use of different languages...all along the development cycle Cyber-Physical related system ok? 11

12 How to deal with that? Formal models MDE 12

13 Model-Driven Engineering MDE Pros Design in the large or in the small Domain Specific Languages (For a specific goal, the adequate concepts are reified) Multi-view modeling Formal definition of concepts and relations 13

14 Model-Driven Engineering MDE Pros Design in the large or in the small Domain Specific Languages (For a specific goal, the adequate concepts are reified) Multi-view modeling Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning 14

15 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations 15

16 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations A B 16

17 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations Producer Consumer 17

18 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations Client Server 18

19 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations Lack of precise explicit behavioral semantics Model 1 Behaviorally Behaviorally Equivalent Equivalent?????? Refines Refines?????? Model 2 19

20 Model-Driven Engineering MDE Pros Formal definition of concepts and relations Tools take benefits of this: automatic generation of advanced editors, static checkers, automatic reasoning Cons Discrepancies in interpretations Lack of precise behavioral semantics Tools suffer from this No automatic generation of simulators, debuggers, animators, explorer, etc. 20

21 Formal models Models Models of of Computation Computation and and Communications Communications (MoCCs) (MoCCs) 21

22 Formal models Models Models of of Concurrency Concurrency and and Communications Communications (MoCCs) (MoCCs) 22

23 Formal Models (MoCC) Formal models Pros Mathematical semantics (i.e. no ambiguity) Tools benefit from that! 23

24 Formal Models (MoCC) Formal models Pros Mathematical semantics (i.e. no ambiguity) Tools benefit from that! Powerful analysis and algorithmic methods Optimization / verification Guaranteed equivalence between code and model Basis for well-founded transformations Model 1 equivalence equivalence refinement refinement Model 2 24

25 Formal Models (MoCC) Formal models Pros Mathematical semantics (i.e. no ambiguity) Tools benefit from that! Powerful analysis and algorithmic methods, Optimization / verification, Guaranteed equivalence between code and model, Basis for well-founded transformations Cons Distance from current mainstream engineering practice Exotic formalisms for designers Possibly far from a designer domain Not necessarily adapted for all the models in a system 25

26 Where are we going? Model Driven Engineering Formal models Tools, standards, engineering world effective environment for executable DSMLs Verification / validation effective mathematical mean to address a problem 26

27 So? Formal models MDE Transformations are often used from a world to another one... 27

28 So? MDE Transformations can distort models due to the abstraction gap between a DSL and a formal model Difficulty to understand the resulting behavioral semantics given by both the transformation and the semantics of the targeted language No direct way to play with the behavioral semantics 28

29 The finality? Formal MDE 29

30 The finality! Formal MDE 30

31 Formal Models (MoCC) Formal models Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' 31

32 Formal Models (MoCC) Formal models Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 2 executions of A causes 1 of B 22 initial initial 'data' 'data' 32

33 Formal Models (MoCC) Formal models Synchronous Data Flow Logical Time Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' 2 executions of A causes 1 of B A B 33

34 Formal Models (MoCC) Formal models Synchronous Data Flow Logical Time Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' 2 executions of A causes 1 of B schedules schedules A B 34

35 Formal Models (MoCC) Formal models Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' Logical Time Schedule of A Schedule of B Schedule of C 35

36 Formal Models (MoCC) Formal models Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' Logical Time Schedule of A 5 Schedule ofofab 4 Schedule Schedule ofofab 3 Schedule 2 Schedule ofofaof Schedule C Schedule B Schedule ofofaof 1 Schedule C Schedule B Schedule of C Schedule ScheduleofofBC Schedule of C 36

37 Formal Models (MoCC) Formal models Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' Logical Time Schedule of A 5 Schedule ofofab 4 Schedule Schedule ofofab 3 Schedule 2 Schedule ofofaof Schedule C Schedule B Schedule ofofaof 1 Schedule C Schedule B Schedule of C Schedule ScheduleofofBC Schedule of C Analysis Analysis 37

38 Formal Models (MoCC) Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' Execution Execution of of AA require require 22 'data' 'data' 22 initial initial 'data' 'data' Formal models Logical Time Schedule of A 5 Schedule ofofab 4 Schedule Schedule ofofab 3 Schedule 2 Schedule ofofaof Schedule C Schedule B Schedule ofofaof 1 Schedule C Schedule B Schedule of C Schedule ScheduleofofBC Schedule of C Analysis Analysis Still... (they are languages where) the semantics is either (mathematically) given on paper or encoded in tools and algorithms... 38

39 Formal Models (MoCC) Synchronous Data Flow Execution Execution of ofaa provide provide 11 'data' 'data' 22 initial initial 'data' 'data' Formal models Logical Time Schedule of A 5 Schedule ofofab 4 Execution Schedule Execution of of AA Schedule ofofab 3 Schedule require 2 'data' require 2 'data' 2 Schedule ofofaof Schedule C Schedule B Schedule ofofaof 1 Schedule C Schedule B So what is the essence of Schedule of C Schedule ScheduleofofBC what they wanted to Schedule specifyof?c Analysis Analysis Still... these are languages where the semantics is either (mathematically) given on paper or encoded in tools and algorithms... 39

40 Design Time Formal MDE Expliciting the MoCC within an MDE environment Adding explicit activation conditions Adding relations between these activation conditions formal semantics explicit within the model (not hidden in the simulator / any transformation) 40

41 Design Time Formal MDE Expliciting the MoCC within an MDE environment Adding explicit activation conditions Adding relations between these activation conditions formal semantics explicit within the model (not hidden in a simulator or a transformation) The MARTE time model and CCSL were a first step toward that 41

42 Design Time Formal MDE MDE is good for the structural concern Logical Time is good for the dynamic concern Adding explicit activation conditions Adding relations between these activation conditions 42

43 Design Time Formal MDE MDE is good for the structural concern Logical Time is good for the dynamic concern Adding explicit activation conditions Adding relations between these activation conditions User User Model Model MDE 43

44 Design Time Formal MDE MDE is good for the structural concern Logical Time MoCC is good for the dynamic concern Adding explicit activation conditions Adding relations between these activation conditions User User Model Model MDE MoCC 44

45 Design Time Formal MDE MDE is good for the structural concern Logical Time is good for the dynamic concern Adding explicit activation conditions Adding relations between these activation conditions User User Model Model Events Events MDE MDE MoCC 45

46 Design Time Formal MDE MDE is good for the structural concern Logical Time is good for the dynamic concern Adding explicit activation conditions Adding relations between these activation conditions User User Model Model Events Events MDE MDE Constraints Constraints MoCC Formal MDE 46

47 Design Time Formal MDE Sketchy example of its use User model Producer c1 Consumer 47

48 Design Time Formal MDE Sketchy example of its use User model Producer c1 sendevent Consumer receiveevent 48

49 Design Time Formal MDE Sketchy example of its use User model Producer c1 on Send : Event Consumer on Receive : Event CCSL model 49

50 Design Time Formal MDE Sketchy example of its use User model Producer c1 on Consumer on c1.sendevent Event c1.receiveevent: Event CCSL model left right R1 : Precedes 53

51 Design Time Formal MDE Sketchy example of its use User model Producer c1 on Consumer on c1.sendevent Event c1.receiveevent: Event CCSL model this is a symbolic left representation of all the acceptable schedules for the user model right R1 : Precedes 54

52 Implementation in TimeSquare 55

53 Implementation in TimeSquare 56

54 Implementation in TimeSquare, Frédéric Mallet, Charles André. On the Formal Execution of UML and DSL Models. [Short paper]. WIP of the 4th International School on Model-Driven Development for Distributed, Realtime, Embedded Systems, Apr 2009, Aussois, France Frédéric Mallet, Charles André,. Executing AADL models with UML/Marte. Int. Conf. Engineering of Complex Computer Systems - ICECCS'09, Jun 2009, Potsdam, Germany. pp < Frédéric Mallet,, Charles André, Robert De Simone. The Clock Constraint Specification Language for building timed causality models. Innovations in Systems and Software Engineering, Springer London, 2010, 6 (1-2), pp < 57

55 Implementation in TimeSquare Marie-Agnès Peraldi-Frati,. Scheduling Multi Clock Real Time Systems: From Requirements to Implementation. International Symposium on Object/Component/Service-oriented Real-time Distributed Computing, Mar 2011, Newport Beach, United States. IEEE computer society, IEEE international Symposium on Object/Component/service Oriented Real-Time Distributed Computing, pp. 50; 57. < Frédéric Mallet, Charles André. On the Formal Execution of UML and DSL Models. [Short paper]. WIP of the 4th International School on Model-Driven Development for Distributed, Realtime, Embedded Systems, Apr 2009, Aussois, France Frédéric Mallet, Charles André,. Executing AADL models with UML/Marte. Int. Conf. Engineering of Complex Computer Systems - ICECCS'09, Jun 2009, Potsdam, Germany. pp < Frédéric Mallet,, Charles André, Robert De Simone. The Clock Constraint Specification Language for building timed causality models. Innovations in Systems and Software Engineering, Springer London, 2010, 6 (1-2), pp < 58

56 Implementation in TimeSquare Calin Glitia,, Frédéric Mallet, Jean-Vivien Millo, Pierre Boulet, Abdoulaye Gamatié. Progressive and explicit refinement of scheduling for multidimensional data-flow applications using uml marte. Design Automation for Embedded Systems, Springer Science+Business Media, LLC 2012, 2012, 16 (2), pp < < Calin Glitia,, Frédéric Mallet. Logical Work: Capturing Data Dependencies and Platform Constraints. Kaźmierski, Tom J. J. and Morawiec, Adam. System Specification and Design Languages, 106, Springer New York, pp , 2012, Lecture Notes in Electrical Engineering, < Marie-Agnès Peraldi-Frati,. Scheduling Multi Clock Real Time Systems: From Requirements to Implementation. International Symposium on Object/Component/Service-oriented Real-time Distributed Computing, Mar 2011, Newport Beach, United States. IEEE computer society, IEEE international Symposium on Object/Component/service Oriented Real-Time Distributed Computing, pp. 50; 57. < Frédéric Mallet, Charles André. On the Formal Execution of UML and DSL Models. [Short paper]. WIP of the 4th International School on Model-Driven Development for Distributed, Realtime, Embedded Systems, Apr 2009, Aussois, France Frédéric Mallet, Charles André,. Executing AADL models with UML/Marte. Int. Conf. Engineering of Complex Computer Systems - ICECCS'09, Jun 2009, Potsdam, Germany. pp < Frédéric Mallet,, Charles André, Robert De Simone. The Clock Constraint Specification Language for building timed causality models. Innovations in Systems and Software Engineering, Springer London, 2010, 6 (1-2), pp < 59

57 Implementation in TimeSquare Kelly Garcés,, Frédéric Mallet. A Model-Based Approach for Reconciliation of Polychronous Execution Traces. SEAA th EUROMICRO Conference on Software Engineering and Advanced Applications, Aug 2011, Oulu, Finland. IEEE. < Calin Glitia,, Frédéric Mallet, Jean-Vivien Millo, Pierre Boulet, Abdoulaye Gamatié. Progressive and explicit refinement of scheduling for multidimensional data-flow applications using uml marte. Design Automation for Embedded Systems, Springer Science+Business Media, LLC 2012, 2012, 16 (2), pp < < Calin Glitia,, Frédéric Mallet. Logical Work: Capturing Data Dependencies and Platform Constraints. Kaźmierski, Tom J. J. and Morawiec, Adam. System Specification and Design Languages, 106, Springer New York, pp , 2012, Lecture Notes in Electrical Engineering, < Marie-Agnès Peraldi-Frati,. Scheduling Multi Clock Real Time Systems: From Requirements to Implementation. International Symposium on Object/Component/Service-oriented Real-time Distributed Computing, Mar 2011, Newport Beach, United States. IEEE computer society, IEEE international Symposium on Object/Component/service Oriented Real-Time Distributed Computing, pp. 50; 57. < Frédéric Mallet, Charles André. On the Formal Execution of UML and DSL Models. [Short paper]. WIP of the 4th International School on Model-Driven Development for Distributed, Realtime, Embedded Systems, Apr 2009, Aussois, France Frédéric Mallet, Charles André,. Executing AADL models with UML/Marte. Int. Conf. Engineering of Complex Computer Systems - ICECCS'09, Jun 2009, Potsdam, Germany. pp < Frédéric Mallet,, Charles André, Robert De Simone. The Clock Constraint Specification Language for building timed causality models. Innovations in Systems and Software Engineering, Springer London, 2010, 6 (1-2), pp < 60

58 Implementation in TimeSquare Kelly Garcés,, Frédéric Mallet. A Model-Based Approach for Reconciliation of Polychronous Execution Traces. SEAA th EUROMICRO Conference on Software Engineering and Advanced Applications, Aug 2011, Oulu, Finland. IEEE. < Calin Glitia,, Frédéric Mallet, Jean-Vivien Millo, Pierre Boulet, Abdoulaye Gamatié. Progressive and explicit refinement of scheduling for multidimensional data-flow applications using uml marte. Design Automation for Embedded Systems, Springer Science+Business Media, LLC 2012, 2012, 16 (2), pp < < Calin Glitia,, Frédéric Mallet. Logical Work: Capturing Data Dependencies and Platform Constraints. Kaźmierski, Tom J. J. and Morawiec, Adam. System Specification and Design Languages, 106, Springer New York, pp , 2012, Lecture Notes in Electrical Engineering, < We were able to reason on the scheduling state space of a model Marie-Agnès Peraldi-Frati,. Scheduling Multi Clock Real Time Systems: From Requirements to Implementation. International Symposium on Object/Component/Service-oriented Real-time Distributed Computing, 2011, Newport Beach, United States. IEEE computer society, IEEE at different places inmarthe development cycle international Symposium on Object/Component/service Oriented Real-Time Distributed Computing, pp. 50; 57. < Frédéric Mallet, Charles André. On the Formal Execution of UML and DSL Models. [Short paper]. WIP of the 4th International School on Model-Driven Development for Distributed, Realtime, Embedded Systems, Apr 2009, Aussois, France Frédéric Mallet, Charles André,. Executing AADL models with UML/Marte. Int. Conf. Engineering of Complex Computer Systems - ICECCS'09, Jun 2009, Potsdam, Germany. pp < Frédéric Mallet,, Charles André, Robert De Simone. The Clock Constraint Specification Language for building timed causality models. Innovations in Systems and Software Engineering, Springer London, 2010, 6 (1-2), pp < 61

59 TimeSquare in one slide Formal MDE Consumer c1 on on c1.sendevent Event c1.receiveevent: Event CCSL model left right R1 : Precedes TimeSquare TimeSquare User model Producer Simulation Model animation Timing Diagram Code execution State space exploration maxdiff: Integer, Frédéric Mallet. TimeSquare: Treat your Models with Logical Time. Carlo A. Furia, Sebastian Nanz. TOOLS - 50th International Conference on Objects, Models, Components, Patterns , May 2012, Prague, Czech Republic. Springer, Objects, Models, Components, Patterns, 7304, pp , Lecture Notes in Computer Science - LNCS. < 62

60 TimeSquare in one slide Formal MDE Consumer c1 on on c1.sendevent Event c1.receiveevent: Event CCSL model left right R1 : Precedes TimeSquare TimeSquare User model Producer Simulation Model animation Timing Diagram Code execution State space exploration maxdiff: Integer Agnostic of the kind of user model Use the CCSL specification as a configuration of the model simulator Amenable to some V&V activities without knowledge of the user model syntax, Frédéric Mallet. TimeSquare: Treat your Models with Logical Time. Carlo A. Furia, Sebastian Nanz. TOOLS - 50th International Conference on Objects, Models, Components, Patterns , May 2012, Prague, Czech Republic. Springer, Objects, Models, Components, Patterns, 7304, pp , Lecture Notes in Computer Science - LNCS. < 63

61 Design Time Good but: The CCSL specification is not a MoCC since it depends on a specific model how can we provide a meta-language so that the MoCC can be defined on the syntax of a language. 64

62 Design Time Good but: The CCSL specification is not a MoCC since it depends on a specific model how can we provide a meta-language so that the MoCC can be defined on the syntax of a language. 65

63 Reifying language behavioral semantics Executable language Language Syntactic Domain mapping Semantic Domain 66

64 Reifying language behavioral semantics Executable language Language Syntactic Domain mapping Semantic Domain Executable meta-modeling Providing languages to define the language elements, i.e. providing some meta languages 67

65 Reifying language behavioral semantics Executable language Grammar languages (BNF), Markup Languages (DTD for SGML/XML), Object Oriented grammar languages (Meta Object Facilities),... Language Syntactic Domain mapping Semantic Domain definedby Executable meta-modeling Providing languages to define the language elements, i.e. providing some meta-languages 68

66 Reifying language behavioral semantics Executable language Grammar languages (BNF), Markup Languages (DTD for SGML/XML), Object Oriented grammar languages (Meta Object Facilities),... Language Syntactic Domain mapping Semantic Domain Transformation languages (XSLT, QVT, etc), Interpreter language (Kermeta, java EMF, etc),... definedby definedby Executable meta-modeling Providing languages to define the language elements, i.e. providing some meta-languages 69

67 Reifying language behavioral semantics Executable language Grammar languages (BNF), Markup Languages (DTD for SGML/XML), Object Oriented grammar languages (Meta Object Facilities),... Language Syntactic Domain mapping Semantic Domain Transformation languages (XSLT, QVT, etc), Interpreter language (Kermeta, java EMF, etc),... definedby definedby Executable meta-modeling Providing languages to define the language elements, i.e. providing some meta-languages How can the behavioral semantics be manipulated? we miss a concrete formal entity to represent it. 70

68 Reifying language behavioral semantics Executable language Grammar languages (BNF), Markup Languages (DTD for SGML/XML), Object Oriented grammar languages (Meta Object Facilities),... Language Syntactic Domain mapping definedby definedby Semantic Domain We need meta-languages for the behavioral semantic specification Executable meta-modeling Providing languages to define the language elements, i.e. providing some meta-languages How can the behavioral semantics be manipulated? we miss a concrete formal entity to represent it. 71

69 Reifying language behavioral semantics Executable language Grammar languages (BNF), Markup Languages (DTD for SGML/XML), Object Oriented grammar languages (Meta Object Facilities),... Language Syntactic Domain mapping Semantic Domain We need meta-languages for the behavioral semantic specification definedby definedby This is the first question we addressed in the GEMOC ANR project 72

70 look at a simple example 73

71 look at a simple example Data management Structuring Computing 74

72 look at a simple example Data management Structuring Computing Conditional control If (boolean condition) 75

73 look at a simple example Data management Structuring Computing Conditional control If (boolean condition) When Internal control (tokens) External control (events) 76

74 look at a simple example Data management Structuring Computing Language Theory Conditional control If (boolean condition) When Internal control External control Concurrency Theory 77

75 from what ingredients the semantic domain is made up with? sequential semantics specification Operational Axiomatic Translational Specifies evolution of the model state Language Theory Concurrency specification Specifies (possibly timed) Concurrency Tagged signal causal relations and Theory Event structure synchronizations Model of Computation 78

76 proposition Providing meta-languages for the semantic specification Language Mapping Syntactic Domain Model State specification and evolution Semantic Domain Model of Concurrency, causalities and synchronizations 79

77 Meta-languages for executable modeling DSML < Abstract Syntax, semantics > Specify the grammar of the language 80

78 Meta-languages for executable modeling DSML < AS, Domain Specific Actions,, > currentstate fire() evaluate() Specify the execution state and its evolution 82

79 Meta-languages for executable modeling DSML < AS, DSA,, MoCC> Defines the possible schedules of the previously defined actions 84

80 Meta-languages for executable modeling DSML < AS, DSA,, MoCC> Defines the possible schedules of the previously defined actions in a symbolic way 85

81 Meta-languages for executable modeling DSML < AS, DSA, Domain Specific Events, Domain MoCC > Specific Events Realizes a mapping between the event from the MoCC and the action calls and returns 87

82 Meta-languages for executable modeling DSML < AS, DSA, Domain Specific Events, Domain MoCC > Specific Events Event Constraint Language from inria Aoste team ( 88

83 Meta-languages for executable modeling Reifying Concurrency for Executable Metamodeling (Benoit Combemale,, Matias Vara Larsen, Frédéric Mallet, Olivier Barais, Benoit Baudry, Robert France), In 6th International Conference on Software Language Engineering (SLE 2013) (Richard F. Paige Martin Erwig, Eric van Wyk, eds.), Springer-Verlag, [bibtex] [pdf] 89

84 The GEMOC Studio Language Workbench Automatic generation Modeling Workbench 93

85 Modeling workbench: 95

86 Modeling workbench: A generic execution engine Only configured by the semantics! 96

87 Modeling workbench: A generic scheduling state space explorer Only configured by the semantics! 97

88 Modeling workbench: A generic scheduling state space explorer, Papa Issa Diallo, Ciprian Teodorov, Joël Champeau, Benoit Combemale. a Meta-Language the Concurrency Concern in! OnlyTowards configured byforthe semantics DSLs. Design, Automation and Test in Europe Conference and Exhibition (DATE), Mar 2015, Grenoble, France. IEEE proceedings of Design, Automation and Test in Europe Conference and Exhibition (DATE), Amani Khecharem, Carlos Gomez,, Frédéric Mallet, Robert de Simone. Execution of Heterogeneous Models for Thermal Analysis with a Multi-view Approach. FDL 2014 : Forum on specification and Design Languages, Oct 2014, Munich, Germany. IEEE Arda Goknil,, Marie-Agnès Peraldi-Frati, Frédéric Mallet. Tool Support for the Analysis of TADL2 Timing Constraints using TimeSquare. ICECCS' th International Conference on Engineering of Complex Computer Systems, Jul 2013, Singapore. 98

89 We were able to define the behavioral semantics of a single language Good but... The previous definition only address a single language... What about system modeling and heterogeneous execution? Globalizing Modeling Languages. Benoit Combemale,, Benoit Baudry, Robert France, Jean-Marc Jézéquel, Jeff Gray. Computer, IEEE, 2014, pp

90

91 Mechanical Structure Airlines HumanMachine Interaction Avionics Aerodynamics Several Several concerns concerns for for aa single single system system Propulsion System Communications Environmental Impact Safety Regulations Authorisations Navigation

92 Mechanical Structure Airlines HumanMachine Interaction Avionics Aerodynamics At At least least one one expert expert for for each each concern concern Propulsion System Communications Environmental Impact Safety Regulations Authorisations Navigation

93 At At least least one one model model for for each each concern concern

94 At At least least one one model model for for each each concern concern

95 At At least least one one model model for for each each concern concern

96 At At least least one one model model for for each each concern concern Heterogenous because they have different Model of Computation

97 Carlos Ernesto Cardena Gomez Multi-View Approaches IEEE (updated version of IEEE-1401) View 1 The System is composed of different views Correspondences The view are expressed in domain specific languages Each domain specific language have its own behavioral semantics (and usually its own tooling) View 3 View 2 System [M. Nassar, VUML: a viewpoint oriented UML extension, 2003] 107

98 Carlos Ernesto Cardena Gomez Multi-View Approaches IEEE (updated version of IEEE-1401) View 1 The System is composed of different views The view are expressed in domain specific languages Correspondences Each domain specific language have its own behavioral semantics (and usually its own tooling) View 2 View 3 System 108

99 Carlos Ernesto Cardena Gomez Multi-View Approaches IEEE (updated version of IEEE-1401) View 1 The System is composed of different views The view are expressed in domain specific languages Correspondences Each domain specific language have its own behavioral semantics (and usually its own tooling) View 2 View 3 System There is a need to coordinate/orchestrate all these model executions to understand the global behavior of the system 109

100 Carlos Ernesto Cardena Gomez Multi-View Approaches IEEE (updated version of IEEE-1401) GEMOC Studio The The System is composed of different views View 1 The view are expressed in domain specific languages Correspondences Each domain specific language have its own behavioral semantics Automatic generation Language Modeling (and usually its own tooling) Workbench Workbench 93 View 2 View 3 System There is a need to coordinate/orchestrate all these model executions to understand the global behavior of the system By taking advantage of explicit behavioral semantics 110

101 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoCC > fuml merge TFSM i:=0 After 10 /! ping i:=0 doit s1 s2 merge I > 10 /! finish [true]? pong / i++ i==10 done i:= i+1 111

102 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping i:=0 p1 p1 s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge p2 p2 [true] i==10 p3 p3 done i:= i+1 Automatically extracted model interface (Instances of Domain Specific Events acts as coordination interfaces) 112

103 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping = i:=0 p1 p1 coordination s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge = p2 p2 [true] i==10 p3 p3 done i:= i+1 coordination interfaces synchronizes interface events 113

104 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping = i:=0 p1 p1 s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge = p2 p2 [true] i==10 p3 p3 done i:= i+1 coordination interfaces synchronizes interface events 114

105 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping < i:=0 p1 p1 s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge > p2 p2 [true] i==10 p3 p3 done i:= i+1 coordination interfaces synchronizes interface events 115

106 model behavioral coordination DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping i:=0 p1 p1 s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge p2 p2 [true] i==10 p3 p3 done i:= i+1 coordination interfaces synchronizes interface events 116

107 Railroad Crossing Heterogeneous Model (paper, slides) Matias Ezequiel Vara Larsen, Arda Goknil, model behavioral coordination 2013 Miami DSML < AS, DSA, Domain Specific Events, MoC > MyFUMLModel MyTFSMModel i:=0 merge p1 p1 After 10 /! ping i:=0 p1 p1 s1 s2? pong / i++ doit p2 p2 I > 10 /! finish merge p2 p2 [true] i==10 p3 p3 done i:= i+1 coordination interfaces synchronizes interface events 117

108 Matias Vara Larsen Heterogeneous development DSML 2 <<Conforms To>> DSML 1 DSML 3 Language designer 2 <<Conforms To>> <<Conforms To>> Language designer 3 Language designer 1

109 Matias Vara Larsen Heterogeneous development DSML 2 <<Conforms To>> DSML 1 DSML 3 Language designer 2 <<Conforms To>> <<Conforms To>> Language designer 3 Language designer 1 Coordination

110 S Matias Vara Larsen An integrator must specify how the models communicate/coordinate /interact one each other DE F IN E Integrator Integrato r DSML 2 <<Conforms To>> DSML 1 DSML 3 Language designer 2 <<Conforms To>> <<Conforms To>> Language designer 1 Coordination Language designer 3

111 Matias Vara Larsen BCOoL BCOol is a language for the integrator to express its coordination skills Integrator Integrato r DSML 2 <<Conforms To>> DSML 1 DSML 3 Language designer 2 <<Conforms To>> <<Conforms To>> Language designer 1 Coordination Language designer 3

112 Matias Vara Larsen BCOoL ConformsTo BCOol spec DSML 1 Behavioral Behavioral Interface Interface DSML 2 Behavioral Behavioral Interface Interface DE FI NE S BCOoL captures Coordination Patterns between languages DSML 3 Conforms To Conforms To Conforms To Coordination Behavioral Behavioral Interface Interface

113 Matias Vara Larsen By instantiating a Coordination Pattern, the coordination between models is automatically generated ConformsTo BCOol spec DSML 1 Behavioral Behavioral Interface Interface DSML 2 Behavioral Behavioral Interface Interface DE FI NE S BCOoL DSML 3 Conforms To Conforms To Conforms To GENERATES Coordination Behavioral Behavioral Interface Interface

114 Matias Vara Larsen Sum up on our approach DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface DSML 2 Language Conforms To Conforms To Model parametrizes parametrizes Runtime Execution Engine Execution Engine

115 Matias Vara Larsen Sum up on our approach DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface DSML 2 Language Conforms To Conforms To generates generates Model parametrizes parametrizes Runtime Execution Engine Execution Engine

116 Matias Vara Larsen Sum up on our approach DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface imports imports DSML 2 Language BCOol spec Conforms To generates generates imports generates Model imports Coordination parametrizes parametrizes Synchronizations / Exchanges Execution Engine Conforms To parametrizes Synchronizations / Exchanges Orchestration/Coordination engine Runtime Execution Engine

117 Sum up on our approach DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface imports imports DSML 2 Language BCOol spec Conforms To generates generates imports generates Model imports Coordination parametrizes parametrizes Synchronizations / Exchanges Execution Engine Conforms To parametrizes Synchronizations / Exchanges Orchestration/Coordination engine Runtime Execution Engine

118 Only Onlyfor for discrete discretesemantics semantics DSML 1 Behavioral Behavioral Interface Interface Sum up on our approach Behavioral Behavioral Interface Interface imports imports DSML 2 Language BCOol spec Conforms To generates generates imports generates Model imports Coordination parametrizes parametrizes Synchronizations / Exchanges Execution Engine Conforms To parametrizes Synchronizations / Exchanges Orchestration/Coordination engine Runtime Execution Engine

119 Current work DSML 1 Behavioral Behavioral Interface Interface imports Language BCOol spec Conforms To generates generates imports Existing tool executedby parametrizes Synchronizations / Exchanges Model?? Coordination parametrizes Execution Engine?? imports?? Runtime Orchestration/Coordination engine

120 Current work DSML 1 Behavioral Behavioral Interface Interface imports Modelica abstraction Language BCOol spec Conforms To generates generates imports Existing tool executedby parametrizes Synchronizations / Exchanges Model?? Coordination parametrizes Execution Engine Behavioral Behavioral Interface Interface imports?? Runtime Orchestration/Coordination engine

121 Current work DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface imports imports BCOol spec Conforms To generates Conforms To generates Execution Engine Model executedby parametrizes Synchronizations / Exchanges generates Abstracted model Coordination parametrizes Language Existing tool imports imports Modelica abstraction?? Runtime Orchestration/Coordination engine

122 Current work We Wedid didhome homemade madeconnectors connectorswith withscilab... scilab... DSML 1 Behavioral Behavioral Interface Interface imports CPU Temperature Evolution Conforms To (Scilab) Behavioral Behavioral Interface Interface imports BCOol spec generates Conforms To Modelica abstraction Language generates Existing tool generates Coordination Control evolution TimeSquare parametrizes Abstracted model imports imports Model executedby parametrizes Amani Khecharem, Carlos Gomez,, Frédéric Mallet, Robert de Simone. Synchronizations Execution of Heterogeneous Models for Thermal Analysis with a Multi-view Approach. FDL 2014 : Forum on specification and Design Languages, Oct / 2014, Munich, Germany. IEEE Exchanges Execution Engine?? Runtime Orchestration/Coordination engine

123 Michele Fabbri FMI / FMU Functional Mock-up Interface (FMI) is a tool independent standard to support both model exchange and co-simulation of dynamic models using a combination of xml-files and compiled C-code

124 Michele Fabbri FMI / FMU Need for an handcraft orchestrator on the bus... Functional Mock-up Interface (FMI) is a tool independent standard to support both model exchange and co-simulation of dynamic models using a combination of xml-files and compiled C-code

125 Current work Michele Fabbri DSML 1 Behavioral Behavioral Interface Interface Behavioral Behavioral Interface Interface imports imports BCOol spec Conforms To generates Conforms To generates generates Coordination parametrizes Abstracted model parametrizes Language Existing tool imports imports Modelica abstraction Model executedby Runtime Execution Engine Orchestration/Coordination engine

126 Michele Fabbri TFSM generates Preliminary results Behavioral Behavioral Interface Interface Conforms To imports imports fake model imports parametrizes parametrizes Execution Engine executedby Orchestration/Coordination engine 136

127 Michele Fabbri Preliminary results TFSM generates Conforms To imports imports imports fake model tion Behavioral Behavioral Interface Interface parametrizes parametrizes Execution Engine executedby Orchestration/Coordination engine 137

128 Conclusion 138

129 Conclusion 139

130 Conclusion Languages Languagesshould shouldreify reifytheir theirbehavioral behavioralsemantics... semantics... so sothat thatwe wecan canunderstand understandand andautomate automatereasoning... reasoning... on onthe theexecution executionand andcoordination coordinationof ofmodels... models... at atdifferent differentlevel levelof ofabstraction... abstraction

131 This is the end......thanks... University of Nice, I3S CNRS INRIA Aoste 141

Composition and concurrent execution of heterogeneous domain-specific models

Composition and concurrent execution of heterogeneous domain-specific models Composition and concurrent execution of heterogeneous domain-specific models A work part of the GEMOC initiative Benoit Combemale Associate Professor, University of Rennes 1 Research Scientist, INRIA benoit.combemale@irisa.fr

More information

Towards Language-Oriented Modeling

Towards Language-Oriented Modeling Towards Language-Oriented Modeling Benoit Combemale (Univ. Rennes 1, IRISA, DiverSE team) http://people.irisa.fr/benoit.combemale benoit.combemale@irisa.fr @bcombemale Complex Software-Intensive Systems

More information

The GEMOC Initiative On the Globalization of Modeling Languages

The GEMOC Initiative On the Globalization of Modeling Languages The GEMOC Initiative On the Globalization of Modeling Languages Benoit Combemale (Inria & Univ. Rennes 1) http://people.irisa.fr/benoit.combemale benoit.combemale@irisa.fr @bcombemale SOFTWARE COLUMN SECTION

More information

DiverSE s Seminar about Software Language Engineering

DiverSE s Seminar about Software Language Engineering DiverSE s Seminar about Software Language Engineering May 28 th, 2015 Rennes, France http://people.irisa.fr/benoit.combemale/sleseminar2015 THE DIVERSE TEAM DiverSE s Seminar about SLE - May 28 th, 2015-2

More information

Execution Framework of the GEMOC Studio (Tool Demo)

Execution Framework of the GEMOC Studio (Tool Demo) Execution Framework of the GEMOC Studio (Tool Demo) Erwan Bousse TU Wien, Austria bousse@big.tuwien.ac.at Tanja Mayerhofer TU Wien, Austria mayerhofer@big.tuwien.ac.at Thomas Degueule Inria, France thomas.degueule@inria.fr

More information

Reifying Concurrency for Executable Metamodeling

Reifying Concurrency for Executable Metamodeling Reifying Concurrency for Executable Metamodeling Benoit Combemale, Julien Deantoni, Matias Ezequiel Vara Larsen, Frédéric Mallet, Olivier Barais, Benoit Baudry, Robert France To cite this version: Benoit

More information

Building Synchronous DataFlow graphs with UML & MARTE/CCSL

Building Synchronous DataFlow graphs with UML & MARTE/CCSL Building Synchronous DataFlow graphs with UML & MARTE/CCSL F. Mallet, J. DeAntoni, C. André, R. de Simone Aoste - INRIA/I3S Université de Nice Sophia Antipolis UML & Formal methods Ambiguity and structural

More information

How to explicitly defines MoCCs within a model

How to explicitly defines MoCCs within a model CCSL@work: How to explicitly defines MoCCs within a model AOSTE sophia I3S/UNS/INRIA Synchron 2010 1 CCSL@work: the RT-Simex project (or a mean to check an implementation against its specification ) AOSTE

More information

UML Profile for MARTE: Time Model and CCSL

UML Profile for MARTE: Time Model and CCSL UML Profile for MARTE: Time Model and CCSL Frédéric Mallet 1 Université Nice Sophia Antipolis, Aoste team INRIA/I3S, Sophia Antipolis, France Frederic.Mallet@unice.fr Abstract. This 90 minutes tutorial

More information

Towards Language-Oriented Modeling Habilitation à Diriger des Recherches Université de Rennes 1 December 4, 2015

Towards Language-Oriented Modeling Habilitation à Diriger des Recherches Université de Rennes 1 December 4, 2015 Towards Language-Oriented Modeling Habilitation à Diriger des Recherches Université de Rennes 1 December 4, 2015 Benoit Combemale (Inria & Univ. Rennes 1) http://people.irisa.fr/benoit.combemale benoit.combemale@irisa.fr

More information

Coping with Semantic Variation Points in Domain-Specific Modeling Languages

Coping with Semantic Variation Points in Domain-Specific Modeling Languages Coping with Semantic Variation Points in Domain-Specific Modeling Languages Florent Latombe, Xavier Crégut, Julien Deantoni, Marc Pantel, Benoit Combemale To cite this version: Florent Latombe, Xavier

More information

Introduction to Dependable Systems: Meta-modeling and modeldriven

Introduction to Dependable Systems: Meta-modeling and modeldriven Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software

More information

System-level co-modeling AADL and Simulink specifications using Polychrony (and Syndex)

System-level co-modeling AADL and Simulink specifications using Polychrony (and Syndex) System-level co-modeling AADL and Simulink specifications using Polychrony (and Syndex) AADL Standards Meeting June 6., 2011 Jean-Pierre Talpin, INRIA Parts of this presentation are joint work with Paul,

More information

Static analysis and testing of executable DSL specification

Static analysis and testing of executable DSL specification Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:

More information

The Behavioral Coordination Operator Language

The Behavioral Coordination Operator Language The Operator Language GL/\CE Day, May 10th, 2016 Julien Deantoni University of Nice, I3S CNRS, INRIA AOSTE Julien.deantoni@polytech.unice.fr Discrete Time Behavior xdsml 1 ADAPTIVE CRUISE CONTROL SYSTEM

More information

Blazo Nastov. Journée des doctorant, Nîmes, France 19 June 2014

Blazo Nastov. Journée des doctorant, Nîmes, France 19 June 2014 Apport de l Ingénierie des Langages de Modélisation à l Ingénierie Système Basée sur les Modèles : conception d une méthode outillée pour la génération de Langages Métier interopérables, analysables et

More information

MARTE for time modeling and verification of real-time embedded system

MARTE for time modeling and verification of real-time embedded system MARTE for time modeling and verification of real-time embedded system Marie-Agnès Peraldi-Frati, Frédéric Mallet, Julien Deantoni, I3S Laboratory CNRS, University of Nice Sophia-Antipolis, INRIA Sophia-Antipolis,

More information

EXECUTABLE MODELING WITH FUML AND ALF IN PAPYRUS: TOOLING AND EXPERIMENTS

EXECUTABLE MODELING WITH FUML AND ALF IN PAPYRUS: TOOLING AND EXPERIMENTS EXECUTABLE MODELING WITH FUML AND ALF IN PAPYRUS: TOOLING AND EXPERIMENTS Sahar Guermazi*, Jérémie Tatibouet*, Arnaud Cuccuru*, Ed Seidewitz +, Saadia Dhouib*, Sébastien Gérard* * CEA LIST - LISE lab +

More information

Weaving Variability into Domain Metamodels

Weaving Variability into Domain Metamodels 1 Weaving Variability into Domain Metamodels B. Morin, G. Perrouin, Ph. Lahire, O. Barais, G. Vanwormhoudt and J-M. Jézéquel MODELS 09 Variability Management session Friday 9th October Outline Introduction

More information

On the Globalization of Modeling Languages The GEMOC Initiative

On the Globalization of Modeling Languages The GEMOC Initiative On the Globalization of Modeling Languages The GEMOC Initiative Benoit Combemale University of Rennes 1 and Inria Keynote at Neptune 2013, May 22 nd, 2013 http://people.irisa.fr/benoit.combemale/neptune2013

More information

Introduction to MDE and Model Transformation

Introduction to MDE and Model Transformation Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and

More information

Weaving Concurrency in executable Domain-Specific Modeling Languages

Weaving Concurrency in executable Domain-Specific Modeling Languages Weaving Concurrency in executable Domain-Specific Modeling Languages Florent Latombe, Xavier Crégut, Benoît Combemale, Julien Deantoni, Marc Pantel To cite this version: Florent Latombe, Xavier Crégut,

More information

A Generic Framework for Realizing Semantic Model Differencing Operators

A Generic Framework for Realizing Semantic Model Differencing Operators A Generic Framework for Realizing Semantic Model Differencing Operators Philip Langer, Tanja Mayerhofer, and Gerti Kappel Business Informatics Group, Vienna University of Technology, Vienna, Austria {langer,mayerhofer,gerti}@big.tuwien.ac.at

More information

ALE Agile Language Engineering

ALE Agile Language Engineering ALE Agile Language Engineering (2017 2019) Thomas Degueule CWI Inria Workshop September 19 20, 2017 CWI, Amsterdam http://gemoc.org/ale/ Context Software intensive systems CWI-Inria Workshop Agile Language

More information

An Implementation of the Behavior Annex in the AADL-toolset Osate2

An Implementation of the Behavior Annex in the AADL-toolset Osate2 2011 16th IEEE International Conference on Engineering of Complex Computer Systems An Implementation of the Behavior Annex in the AADL-toolset Osate2 Gilles Lasnier, Laurent Pautet Inst. TELECOM - TELECOM

More information

Embedded software design with Polychrony

Embedded software design with Polychrony Embedded software design with Polychrony DATE 09 tutorial on Correct-by-Construction Embedded Software Synthesis: Formal Frameworks, Methodologies, and Tools Jean-Pierre Talpin, RIA List of contributors

More information

Flight Systems are Cyber-Physical Systems

Flight Systems are Cyber-Physical Systems Flight Systems are Cyber-Physical Systems Dr. Christopher Landauer Software Systems Analysis Department The Aerospace Corporation Computer Science Division / Software Engineering Subdivision 08 November

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Towards V&V suitable Domain Specific Modeling Languages for MBSE

Towards V&V suitable Domain Specific Modeling Languages for MBSE Doctoral symposium, Nîmes France, 16 June 2016 Towards V&V suitable Domain Specific Modeling Languages for MBSE Laboratoire de Génie Informatique et d Ingénierie de Production Blazo Nastov 1, Vincent Chapurlat

More information

Introducing Simulation and Model Animation in the MDE Topcased 1 Toolkit

Introducing Simulation and Model Animation in the MDE Topcased 1 Toolkit Introducing Simulation and Model Animation in the MDE Topcased 1 Toolkit B. Combemale 1, X. Crégut 1, J.-P. Giacometti 2, P. Michel 3, M. Pantel 1 1: IRIT- ENSEEIHT, 2 Rue Charles Camichel, 31071 Toulouse

More information

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com Department of Software Systems Engineering University of Isfahan Fall 2013 Overview Model & Modeling UML & UML Profile

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Model Transformation Testing Challenges

Model Transformation Testing Challenges Model Transformation Testing Challenges Benoit Baudry 1, Trung Dinh-Trong 2, Jean-Marie Mottu 1, Devon Simmonds 2, Robert France 2, Sudipto Ghosh 2, Franck Fleurey 1, Yves Le Traon 3 1 IRISA, Campus Beaulieu,

More information

Domain-Specific Languages for Wireless Sensor Networks

Domain-Specific Languages for Wireless Sensor Networks Domain-Specific Languages for Wireless Sensor Networks Daniel A. Sadilek Humboldt-Universität zu Berlin Institute for Computer Science Rudower Chaussee 25 12489 Berlin, Germany sadilek@informatik.hu-berlin.de

More information

Reading part: Design-Space Exploration with Alloy

Reading part: Design-Space Exploration with Alloy Reading part: Design-Space Exploration with Alloy Ing. Ken Vanherpen Abstract In the growing world of MDE many tools are offered to describe a (part of a) system, constrain it, and check some properties

More information

The Specifications Exchange Service of an RM-ODP Framework

The Specifications Exchange Service of an RM-ODP Framework The Specifications Exchange Service of an RM-ODP Framework X. Blanc (*+), M-P. Gervais(*), J. Le Delliou(+) (*)Laboratoire d'informatique de Paris 6-8 rue du Capitaine Scott F75015 PARIS (+)EDF Research

More information

A Graphical Specification of Model Composition With Triple Graph Grammars

A Graphical Specification of Model Composition With Triple Graph Grammars A Graphical Specification of Model Composition With Triple Graph Grammars Adil Anwar 1, Amine Benelallam 2, Akram Idani 3, Bernard Coulette 4, and Mahmoud Nassar 2 1 Siweb, Computer Science Department,

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

March 2, Homepage:

March 2, Homepage: Action Semantics for an Executable UML Thomas Feng March 2, 2003 Email: thomas@email.com.cn Homepage: http://moncs.cs.mcgill.ca/people/tfeng/ Why are we interested in semantics? Other than syntax, the

More information

Model Driven Engineering (MDE)

Model Driven Engineering (MDE) Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

Dealing with AADL end-to-end Flow Latency with UML Marte.

Dealing with AADL end-to-end Flow Latency with UML Marte. Dealing with AADL end-to-end Flow Latency with UML Marte. Su-Young Lee, Frédéric Mallet, Robert De Simone To cite this version: Su-Young Lee, Frédéric Mallet, Robert De Simone. Dealing with AADL end-to-end

More information

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript Freiberg University of Mining and Technology The University of Resources. Since 1765. WEB3D 2012-17th International Conference on 3D Web Technology Model-Driven Iterative Development of 3D Web-Applications

More information

By: Chaitanya Settaluri Devendra Kalia

By: Chaitanya Settaluri Devendra Kalia By: Chaitanya Settaluri Devendra Kalia What is an embedded system? An embedded system Uses a controller to perform some function Is not perceived as a computer Software is used for features and flexibility

More information

Object-Oriented Theories for Model Driven Architecture

Object-Oriented Theories for Model Driven Architecture Object-Oriented Theories for Model Driven Architecture Tony Clark 1, Andy Evans 2, Robert France 3 1 King s College London, UK, anclark@dcs.kcl.ac.uk, 2 University of York, UK, andye@cs.york.ac.uk, 3 University

More information

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

challenges in domain-specific modeling raphaël mannadiar august 27, 2009 challenges in domain-specific modeling raphaël mannadiar august 27, 2009 raphaël mannadiar challenges in domain-specific modeling 1/59 outline 1 introduction 2 approaches 3 debugging and simulation 4 differencing

More information

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

2 nd UML 2 Semantics Symposium: Formal Semantics for UML 2 nd UML 2 Semantics Symposium: Formal Semantics for UML Manfred Broy 1, Michelle L. Crane 2, Juergen Dingel 2, Alan Hartman 3, Bernhard Rumpe 4, and Bran Selic 5 1 Technische Universität München, Germany

More information

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Reuses some material from: Andrzej Wasowski, Model-Driven Development, ITU Copenhagen Where I am from WASP 2017

More information

From Object Composition to Model Transformation with the MDA

From Object Composition to Model Transformation with the MDA From Object Composition to Transformation with the MDA Jean Bézivin University of Nantes 2, rue de la Houssinière, BP 92208 44322 Nantes cedex 3, France Jean.Bezivin@sciences.univ-nantes.fr Abstract The

More information

Dresden OCL2 in MOFLON

Dresden OCL2 in MOFLON Dresden OCL2 in MOFLON 10 Jahre Dresden-OCL Workshop Felix Klar Felix.Klar@es.tu-darmstadt.de ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dept. of Electrical Engineering and Information Technology

More information

A Methodology for Improving Software Design Lifecycle in Embedded Control Systems

A Methodology for Improving Software Design Lifecycle in Embedded Control Systems A Methodology for Improving Software Design Lifecycle in Embedded Control Systems Mohamed El Mongi Ben Gaïd, Rémy Kocik, Yves Sorel, Rédha Hamouche To cite this version: Mohamed El Mongi Ben Gaïd, Rémy

More information

Semantic Specifications for Domain-Specific Modeling Languages

Semantic Specifications for Domain-Specific Modeling Languages Semantic Specifications for Domain-Specific Modeling Languages Gabor Simko Institute for Software Integrated Systems Vanderbilt University Nashville, TN Abstract. While there is a generic agreement that

More information

Chapter 2 MARTE vs. AADL for Discrete-Event and Discrete-Time Domains

Chapter 2 MARTE vs. AADL for Discrete-Event and Discrete-Time Domains Preface Embedded systems take over complex control and data processing tasks in diverse application fields such as automotive, avionics, consumer products, and telecommunications. They are the primary

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information

Static Safety Analysis of UML Action Semantics for Critical Systems Development

Static Safety Analysis of UML Action Semantics for Critical Systems Development Static Safety Analysis of UML Action Semantics for Critical Systems Development Zsigmond Pap, Dániel Varró Dept. of Measurement and Information Systems Budapest University of Technology and Economics H-1521

More information

(An Example for) Metamodeling Syntax and Semantics of Two Languages, their Transformation, and a Correctness Criterion

(An Example for) Metamodeling Syntax and Semantics of Two Languages, their Transformation, and a Correctness Criterion (An Example for) Metamodeling Syntax and Semantics of Two Languages, their Transformation, and a Correctness Criterion Martin Gogolla University of Bremen, Computer Science Department Database Systems

More information

Architectural Design

Architectural Design Architectural Design Topics i. Architectural design decisions ii. Architectural views iii. Architectural patterns iv. Application architectures Chapter 6 Architectural design 2 PART 1 ARCHITECTURAL DESIGN

More information

Transformational Design with

Transformational Design with Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität

More information

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING Juan de Lara Computer Science Department Universidad Autónoma de Madrid (Spain) NWPT 12 Bergen, Norway MOTIVATION Model-Driven Engineering (MDE) is about

More information

UML for RTES: develop a UML-based proposal for modelling and analysing of RTES

UML for RTES: develop a UML-based proposal for modelling and analysing of RTES Year 2 Review Paris, November 8th and 9th, 2006 UML for RTES: UML for RTES: develop a UML-based proposal for modelling and analysing of RTES Highlight on Activity leader : Francois Terrier & Sebastien

More information

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:

More information

Towards Compositional Domain Specific Languages

Towards Compositional Domain Specific Languages Andreas Horst, Bernhard Rumpe Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ 1 Introduction The deployment of Domain Specific Languages (DSL) and in particular Domain Specific

More information

Modeling of immediate vs. delayed data communications: from AADL to UML MARTE

Modeling of immediate vs. delayed data communications: from AADL to UML MARTE ECSI Forum on specification & Design Languages (FDL) (2007) 249-254 Modeling of immediate vs. delayed communications: from AADL to UML MARTE Charles André, Frédéric Mallet, Robert de Simone I3S, Université

More information

Domain-Specific. Languages. Martin Fowler. AAddison-Wesley. Sydney Tokyo. With Rebecca Parsons

Domain-Specific. Languages. Martin Fowler. AAddison-Wesley. Sydney Tokyo. With Rebecca Parsons Domain-Specific Languages Martin Fowler With Rebecca Parsons AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Sydney Tokyo Singapore

More information

Using Process Algebra to Validate Behavioral Aspects of Object-Oriented Models

Using Process Algebra to Validate Behavioral Aspects of Object-Oriented Models Using Process Algebra to Validate Behavioral Aspects of Object-Oriented s Alban Rasse*, Jean-Marc Perronne*, Pierre-Alain Muller**, Bernard Thirion* * MIPS, ESSAIM, Université de Haute Alsace 2 rue des

More information

COMP 763. Eugene Syriani. Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science. McGill University

COMP 763. Eugene Syriani. Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science. McGill University Eugene Syriani Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science McGill University 1 OVERVIEW In the context In Theory: Timed Automata The language: Definitions and Semantics

More information

A Traceability-Driven Approach to Model Transformation Testing

A Traceability-Driven Approach to Model Transformation Testing A Traceability-Driven Approach to Transformation Testing Nicholas D. Matragkas, Dimitrios S. Kolovos, Richard F. Paige, and Athanasios Zolotas Department of Computer Science, University of York, Deramore

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Executing AADL models with UML/Marte

Executing AADL models with UML/Marte Executing AADL models with UML/Marte Frédéric Mallet, Charles André, Julien Deantoni To cite this version: Frédéric Mallet, Charles André, Julien Deantoni. Executing AADL models with UML/Marte. Int. Conf.

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Using Component-oriented Process Models for Multi-Metamodel Applications

Using Component-oriented Process Models for Multi-Metamodel Applications Using Component-oriented Process Models for Multi-Metamodel Applications Fahad R. Golra Université Européenne de Bretagne Institut Télécom / Télécom Bretagne Brest, France Email: fahad.golra@telecom-bretagne.eu

More information

A Design Pattern for Executable DSML

A Design Pattern for Executable DSML A Design Pattern for Executable DSML Benoit Combemale, Xavier Crégut, Marc Pantel To cite this version: Benoit Combemale, Xavier Crégut, Marc Pantel. A Design Pattern for Executable DSML. [Research Report]

More information

MARTE extensions and modeling Mixed-Criticalities

MARTE extensions and modeling Mixed-Criticalities MARTE extensions and modeling Mixed-Criticalities A synthesis of modeling needs of the Contrex Project and the solutions proposed using minor extensions to MARTE Julio Medina, Fernando Herrera, Eugenio

More information

The ProjectIT-RSL Language Overview

The ProjectIT-RSL Language Overview The ProjectIT-RSL Language Overview Carlos Videira 1, João Leonardo Carmo 2, Alberto Rodrigues da Silva 3 1 INESC-ID and Universidade Autónoma de Lisboa, Rua de Santa Marta, nº 56, 1169-023 Lisboa, Portugal

More information

Eclipse Development Tools for Epsilon

Eclipse Development Tools for Epsilon Eclipse Development Tools for Epsilon Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack Department of Computer Science, University of York, Heslington, York, YO10 5DD, UK. {dkolovos,paige,fiona@cs.york.ac.uk

More information

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations 1 MDD with OMG Standards MOF, OCL, QVT & Graph Transformations Andy Schürr Darmstadt University of Technology andy. schuerr@es.tu-darmstadt.de 20th Feb. 2007, Trento Outline of Presentation 2 Languages

More information

Towards Generating Domain-Specific Model Editors with Complex Editing Commands

Towards Generating Domain-Specific Model Editors with Complex Editing Commands Towards Generating Domain-Specific Model Editors with Complex Editing Commands Gabriele Taentzer Technical University of Berlin Germany gabi@cs.tu-berlin.de May 10, 2006 Abstract Domain specific modeling

More information

An Information Model for High-Integrity Real Time Systems

An Information Model for High-Integrity Real Time Systems An Information Model for High-Integrity Real Time Systems Alek Radjenovic, Richard Paige, Philippa Conmy, Malcolm Wallace, and John McDermid High-Integrity Systems Group, Department of Computer Science,

More information

On the link between Architectural Description Models and Modelica Analyses Models

On the link between Architectural Description Models and Modelica Analyses Models On the link between Architectural Description Models and Modelica Analyses Models Damien Chapon Guillaume Bouchez Airbus France 316 Route de Bayonne 31060 Toulouse {damien.chapon,guillaume.bouchez}@airbus.com

More information

CCSL: specifying clock constraints with UML/MARTE

CCSL: specifying clock constraints with UML/MARTE CCSL: specifying clock constraints with UML/MARTE Frédéric Mallet To cite this version: Frédéric Mallet. CCSL: specifying clock constraints with UML/MARTE. Innovations in Systems and Software Engineering,

More information

Evolution of XML Applications

Evolution of XML Applications Evolution of XML Applications University of Technology Sydney, Australia Irena Mlynkova 9.11. 2011 XML and Web Engineering Research Group Department of Software Engineering Faculty of Mathematics and Physics

More information

The Implications of Optimality Results for Incremental Model Synchronization for TGGs Holger Giese, Stephan Hildebrandt

The Implications of Optimality Results for Incremental Model Synchronization for TGGs Holger Giese, Stephan Hildebrandt The Implications of Optimality Results for Incremental Model Synchronization for TGGs Bi-directional transformations (BX) Theory and Applications Across Disciplines (13w5115) December 1-6, 2013 Holger

More information

Correctness Issues on MARTE/CCSL constraints

Correctness Issues on MARTE/CCSL constraints Correctness Issues on MARTE/CCSL constraints Frédéric Mallet, Robert De Simone To cite this version: Frédéric Mallet, Robert De Simone. Correctness Issues on MARTE/CCSL constraints. Science of Computer

More information

An Efficient Modeling and Execution Framework for Complex Systems Development

An Efficient Modeling and Execution Framework for Complex Systems Development An Efficient Modeling and Execution Framework for Complex Systems Development Isabelle Perseil, Laurent Pautet, Jean-François Rolland, Mamoun Filali, Didier Delanote, Stefan Van Baelen, Wouter Joosen,

More information

Towards Programs Logic Based Representation Driven by Grammar and Conforming to a Metamodel

Towards Programs Logic Based Representation Driven by Grammar and Conforming to a Metamodel Towards Programs Logic Based Representation Driven by Grammar and Conforming to a Metamodel Ciprian-Bogdan Chirila and Călin Jebelean University Politehnica of Timişoara, Romania Faculty of Automation

More information

ACTA UNIVERSITATIS APULENSIS No 18/2009

ACTA UNIVERSITATIS APULENSIS No 18/2009 OPTIMIZING NON-FUNCTIONAL PROPERTIES OF A SERVICE COMPOSITION USING A DECLARATIVE MODEL-TO-MODEL TRANSFORMATION Andreas Petter, Stephan Borgert, Erwin Aitenbichler, Alexander Behring and Max Mühlhäuser

More information

OCL for the Specification of Model Transformation Contracts

OCL for the Specification of Model Transformation Contracts OCL for the Specification of Model Transformation Contracts Eric Cariou, Raphaël Marvie, Lionel Seinturier, and Laurence Duchien LIFL - Université des Sciences et Technologies de Lille UMR CNRS 8022 -

More information

SysML and FMI in INTO-CPS

SysML and FMI in INTO-CPS Grant Agreement: 644047 Integrated Tool chain for model-based design of CPSs SysML and FMI in Deliverable Number: D4.1c Version: 0.7 Date: 2015 Public Document www.into-cps.au.dk D4.1c SysML and FMI in

More information

Johann Bourcier Associate Professor University of Rennes 1

Johann Bourcier Associate Professor University of Rennes 1 Johann Bourcier Associate Professor University of Rennes 1 Johann.Bourcier@irisa.fr PhD in Computer Science from Grenoble University France (2005 2008) Auto-Home: A Framework for Autonomic Pervasive Applications

More information

UML Framework for Intensive Signal Processing Embedded Applications

UML Framework for Intensive Signal Processing Embedded Applications LIFL 2002-n 07 Juillet 2002 Publication LIFL 2002-n 07 UML Framework for Intensive Signal Processing Embedded Applications Cédric Dumoulin, Jean-Luc Dekeyser Laboratoire d'informatique Fondamentale de

More information

Supporting Efficient and Advanced Omniscient Debugging for xdsmls

Supporting Efficient and Advanced Omniscient Debugging for xdsmls Supporting Efficient and Advanced Omniscient Debugging for xdsmls Erwan Bousse, Jonathan Corley, Benoit Combemale, Jeff Gray, Benoit Baudry To cite this version: Erwan Bousse, Jonathan Corley, Benoit Combemale,

More information

Christian Doppler Laboratory

Christian Doppler Laboratory Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software

More information

DSM model-to-text generation: from MetaDepth to Android with EGL

DSM model-to-text generation: from MetaDepth to Android with EGL DSM model-to-text generation: from MetaDepth to Android with EGL Rafael Ugaz Antwerp University (Belgium), rafaelugaz@gmail.com Abstract This article describes the process of a specific model-to-text transformation

More information

Towards xmof: Executable DSMLs based on fuml www.modelexecution.org Tanja Mayerhofer, Philip Langer, Manuel Wimmer Business Informatics Group Institute of Software Technology and Interactive Systems Vienna

More information

BLU AGE 2009 Edition Agile Model Transformation

BLU AGE 2009 Edition Agile Model Transformation BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation

More information

Model-checking with the TimeLine formalism

Model-checking with the TimeLine formalism Model-checking with the TimeLine formalism Andrea Zaccara University of Antwerp Andrea.Zaccara@student.uantwerpen.be Abstract A logical model checker can be an effective tool for verification of software

More information

Towards xmof: Executable DSMLs based on fuml

Towards xmof: Executable DSMLs based on fuml Towards xmof: Executable DSMLs based on fuml Tanja Mayerhofer Vienna University of Technology, Austria mayerhofer@big.tuwien.ac.at Philip Langer Vienna University of Technology, Austria langer@big.tuwien.ac.at

More information

24. Framework Documentation

24. Framework Documentation 24. Framework Documentation 1 Prof. Uwe Aßmann TU Dresden Institut für Software und Multimediatechnik Lehrstuhl Softwaretechnologie 15-0.2, 23.01.16 Design Patterns and Frameworks, Prof. Uwe Aßmann Obligatory

More information

with openarchitectureware

with openarchitectureware Model-Driven Development with openarchitectureware Markus Völter voelter@acm.orgorg www.voelter.de Sven Efftinge sven@efftinge.de www.efftinge.de Bernd Kolb bernd@kolbware.de www.kolbware.de 2006-7 Völter,

More information

Do model transformations solve all the problems?

Do model transformations solve all the problems? Do model transformations solve all the problems? Panel@ICFEM'2008 Kitakyuschu City, October, 27 th Jean Bézivin (AtlanMod team, INRIA& EMN) -1- Ten years or Research in Model Transformation: where do we

More information