SlideShare a Scribd company logo
1 of 30
BREATHE LIFE INTO
YOUR DESIGNER!
WITH SIRIUS AND GEMOC
, OBEO ( )
, INRIA and Univ. Rennes 1 ( )
Cédric Brun @bruncedric
Benoit Combemale @bcombemale
Slides available at http://siriuslab.github.io/talks/BreatheLifeInYourDesigner/slides
(DOMAIN-SPECIFIC)
BEHAVIORAL MODELS
Business Processes, Orchestrations, Functional chains,
Activities, Protocoles, Scenarios...
ANALYSIS OF BEHAVIORAL MODELS
Early V&V of behavioral properties
Software engineering, systems engineering, enterprise
architecture, scientific modeling...
MODEL DEBUGGING
Traversing step forward the states reached by the model
through the application of the interpreter
Intuitive model comprehension technique
No abstraction gap
Better turn-arounds
⇒ Fast convergence towards an acceptable design
OMNISCIENT MODEL DEBUGGING
Relies on an execution trace to revert the executed model
into a prior state
Forward/backward navigation into the execution trace
No record & replay
(similar) Replay
OMNISCIENT DEBUGGING OF
ACTIVITY DIAGRAMS
SEE HTTP://GEMOC.ORG/TTC15
REQUIRED TOOLS
HOW TO GET YOUR OWN
(DOMAIN-SPECIFIC) DEBUGGER?
REQUIRED DEVELOPMENTS
PROPOSED APPROACH: SIRIUS
ANIMATION
Xtend/Kermeta or Java to define the interpreter
Sirius to define the animator by extension of the tooling
description
A generative approach for the trace manager
A generic execution engine
A generic control panel and timeline
ANIMATING ARDUINO DESIGNER
A SIMPLE ECLIPSE BASED TOOLING
ARDUINO SIMULATOR
2 new plugins :
fr.obeo.dsl.arduino.simulator
fr.obeo.dsl.arduino.simulator.design
             
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
L a n g u a g e f i l e s b l a n k c o m m e n t c o d e
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
J a v a 1 4 2 2 9 3 1 8 1 1 8 5
X M L 5 0 0 3 2 9
M a v e n 2 1 2 1 8 5 4
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
S U M : 2 1 2 4 1 3 3 6 1 5 6 8
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
             
INTERPRETER
             
p u b l i c c l a s s L o o p S w i t c h e x t e n d s A r d u i n o S w i t c h {
/ / . . .
@ O v e r r i d e
p u b l i c O b j e c t c a s e S e n s o r ( S e n s o r s e n s o r ) {
f i n a l P i n p i n = A r d u i n o U t i l s . g e t P i n ( s i m u l a t o r . g e t P r o j e c t ( ) ,
s e n s o r . g e t M o d u l e ( ) ) ;
r e t u r n i n t e r p r e t O b j e c t V a l u e T o B o o l e a n ( s i m u l a t o r . g e t P i n L e v e l ( p i n )
}
@ O v e r r i d e
p u b l i c O b j e c t c a s e R e p e a t ( R e p e a t r e p e a t ) {
f i n a l I n s t r u c t i o n f i r s t = r e p e a t . g e t I n s t r u c t i o n s ( ) . g e t ( 0 ) ;
f o r ( i n t i = 0 ; i < r e p e a t . g e t I t e r a t i o n ( ) ; + + i ) {
I n s t r u c t i o n c u r r e n t = f i r s t ;
w h i l e ( c u r r e n t ! = n u l l ) {
d o S w i t c h ( c u r r e n t ) ;
c u r r e n t = c u r r e n t . g e t N e x t ( ) ;
}
}
r e t u r n n u l l ;
}
/ / . . .
}
EXECUTION ENGINE
             
p u b l i c c l a s s S i m u l a t o r D e b u g g e r e x t e n d s A b s t r a c t D S L D e b u g g e r {
/ / . . .
p u b l i c v o i d s t a r t ( ) {
n e w T h r e a d ( n e w R u n n a b l e ( ) {
p u b l i c v o i d r u n ( ) {
s p a w n R u n n i n g T h r e a d ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) ,
s i m u l a t o r . g e t P r o j e c t ( ) ) ;
s i m u l a t o r . i n i t ( ) ;
s i m u l a t o r . l o o p ( ) ;
}
} , " A r d u i n o S i m u l a t o r " ) . s t a r t ( ) ;
}
p u b l i c v o i d u p d a t e D a t a ( S t r i n g t h r e a d N a m e , E O b j e c t i n s t r u c t i o n ) {
i f ( ! h a r d w a r e F r a m e P u s h e d ) {
p u s h S t a c k F r a m e ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) , s i m u l a t o r
. g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) . g e t N a m e ( ) , s i m u l a t o r
. g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) , i n s t r u c t i o n ) ;
h a r d w a r e F r a m e P u s h e d = t r u e ;
} e l s e {
s e t C u r r e n t I n s t r u c t i o n ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) , i n s t r u c t i o n ) ;
}
f o r ( E n t r y < V a r i a b l e , O b j e c t > e n t r y : n e x t S u s p e n d V a r i a b l e s . e n t r y S e t ( ) ) {
v a r i a b l e ( t h r e a d N a m e ,
s i m u l a t o r . g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) . g e t N a m e ( ) , " v a r i a b l e "
e n t r y . g e t K e y ( ) . g e t N a m e ( ) , e n t r y . g e t V a l u e ( ) , t r u e ) ;
}
ANIMATOR
simulator.odesign customizing arduino.odesign
ANIMATOR (2)
Contributing actions
Adapting style
LEVERAGE THE SIRIUS ANIMATION
RUNTIME
Encapsulate step over/into/return in transactions
Bridge the Eclipse Debug APIs and the EMF APIs
Transmit events and requests
Initialize the tooling extension
Provide off-the-shelf ecore model for runtime data
ECORE MODEL FOR RUNTIME DATA
LAUNCH CONFIGURATIONS
DEMO
... WITH NO CAT
GEMOC
The GEMOC ANR project ( ):
A Language Workbench for concurrent execution and
simulation of heterogeneous models
The GEMOC Initiative ( ):
GEMOC is an open international initiative that aims to
coordinate and disseminate the research results regarding
the support of the coordinated use of various modeling
languages that will lead to the concept of globalization of
modeling languages, that is, the use of multiple modeling
languages to support coordinated development of diverse
aspects of a system.
http://gemoc.org/ins
http://gemoc.org/
GEMOC TECHNOLOGIES
Ready for pilote project:
Sirius Animation (animator designer and runtime, execution engine, trace manager)
Ready for more R&D:
MoccML and Timesquare for explicit concurrency specification in DSLs
BCOoL for coordination patterns between DSLs
INTRODUCING SIRIUS LAB
technologies (EPL) which have proven helpful and
are looking for an interest to bring it at full maturity level.
Generic
IN A NUTSHELL...
POJO Animator (case of Arduino Designer)
Code the Interpreter, the Execution Engine and possibly any additional tools
quick results, easy to integrate, very few (or custom) execution control.
Advanced Animator (case of Activity Diagram)
Code the Interpreter and use the generic Execution Engine and Trace manager
more analysis capabilities (concurrency) and rich execution control (panel, timeline...)
TO BE CONTINUED...
- 0.1.x
- Read the
-
- to breath life into your designer
Try executable Arduino Designer
GEMOC Publications
Join the GEMOC Initiative
Get in touch with us

More Related Content

What's hot

Frontend architecture on big and small sites
Frontend architecture on big and small sitesFrontend architecture on big and small sites
Frontend architecture on big and small sitesToni Pinel
 
Continuous delivery with Gradle
Continuous delivery with GradleContinuous delivery with Gradle
Continuous delivery with GradleBob Paulin
 
Introdução ao Mundo do Drone Racing
Introdução ao Mundo do Drone RacingIntrodução ao Mundo do Drone Racing
Introdução ao Mundo do Drone RacingAfonso Coutinho
 
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...Artur Skowroński
 
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’a
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’aTen Typ tak ma - O systemach typów na przykładzie TypeScript’a
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’aArtur Skowroński
 
Members of the family
Members of the familyMembers of the family
Members of the familytrabalhotrab
 
Додаток 2
Додаток 2Додаток 2
Додаток 2ymcmb_ua
 
Caça palavras frações
Caça palavras   fraçõesCaça palavras   frações
Caça palavras fraçõestrabalhotrab
 
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라Myoung-Ryun Mission Presbyterian Church
 
Puzzles De Matematicas
Puzzles De MatematicasPuzzles De Matematicas
Puzzles De Matematicasguestd3f324
 
IPC13 Munich: Planning the Unplannable
IPC13 Munich: Planning the UnplannableIPC13 Munich: Planning the Unplannable
IPC13 Munich: Planning the UnplannableRobert Lemke
 
LibreOffice Writer
LibreOffice WriterLibreOffice Writer
LibreOffice WriterNTMCampoBom
 

What's hot (20)

Blvd Aero 002
Blvd Aero 002Blvd Aero 002
Blvd Aero 002
 
Frontend architecture on big and small sites
Frontend architecture on big and small sitesFrontend architecture on big and small sites
Frontend architecture on big and small sites
 
Continuous delivery with Gradle
Continuous delivery with GradleContinuous delivery with Gradle
Continuous delivery with Gradle
 
Where to test first?
Where to test first?Where to test first?
Where to test first?
 
Introdução ao Mundo do Drone Racing
Introdução ao Mundo do Drone RacingIntrodução ao Mundo do Drone Racing
Introdução ao Mundo do Drone Racing
 
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...
Artur Skowroński – Ten Typ tak ma - O systemach typów na przykładzie TypeScri...
 
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’a
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’aTen Typ tak ma - O systemach typów na przykładzie TypeScript’a
Ten Typ tak ma - O systemach typów na przykładzie TypeScript’a
 
Network gateway
Network gatewayNetwork gateway
Network gateway
 
Inductors and Smps
Inductors and SmpsInductors and Smps
Inductors and Smps
 
Members of the family
Members of the familyMembers of the family
Members of the family
 
Astronomia
AstronomiaAstronomia
Astronomia
 
Wild animals
Wild animalsWild animals
Wild animals
 
Додаток 2
Додаток 2Додаток 2
Додаток 2
 
G.A's
G.A'sG.A's
G.A's
 
Jpa20150924matsushima
Jpa20150924matsushimaJpa20150924matsushima
Jpa20150924matsushima
 
Caça palavras frações
Caça palavras   fraçõesCaça palavras   frações
Caça palavras frações
 
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라
2017 09-17 주일예배, 눅14장01절-24절, 강권하여 데려오라
 
Puzzles De Matematicas
Puzzles De MatematicasPuzzles De Matematicas
Puzzles De Matematicas
 
IPC13 Munich: Planning the Unplannable
IPC13 Munich: Planning the UnplannableIPC13 Munich: Planning the Unplannable
IPC13 Munich: Planning the Unplannable
 
LibreOffice Writer
LibreOffice WriterLibreOffice Writer
LibreOffice Writer
 

Viewers also liked

Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...
Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...
Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...Benoit Combemale
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLBenoit Combemale
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!melbats
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)Benoit Combemale
 
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...Benoit Combemale
 
Miten Linked Data -aineistoja tuotetaan ja julkaistaan
Miten Linked Data -aineistoja tuotetaan ja julkaistaanMiten Linked Data -aineistoja tuotetaan ja julkaistaan
Miten Linked Data -aineistoja tuotetaan ja julkaistaanKim Viljanen
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
Roadmap - SiriusCon2016
Roadmap - SiriusCon2016Roadmap - SiriusCon2016
Roadmap - SiriusCon2016Cédric Brun
 

Viewers also liked (10)

Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...
Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...
Engineering Executable DSMLs (xDSMLs ) for model executability, animation and...
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCML
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)
 
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...
A Tool-Supported Approach for Concurrent Execution of Heterogeneous Models (E...
 
Miten Linked Data -aineistoja tuotetaan ja julkaistaan
Miten Linked Data -aineistoja tuotetaan ja julkaistaanMiten Linked Data -aineistoja tuotetaan ja julkaistaan
Miten Linked Data -aineistoja tuotetaan ja julkaistaan
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
Roadmap - SiriusCon2016
Roadmap - SiriusCon2016Roadmap - SiriusCon2016
Roadmap - SiriusCon2016
 
Ardu robotml
Ardu robotmlArdu robotml
Ardu robotml
 

Similar to Breathe life into your designer!

Spring Roo 2.0 Preview at Spring I/O 2016
Spring Roo 2.0 Preview at Spring I/O 2016 Spring Roo 2.0 Preview at Spring I/O 2016
Spring Roo 2.0 Preview at Spring I/O 2016 DISID
 
Ember js meetup treviso liquid-fire
Ember js meetup treviso liquid-fireEmber js meetup treviso liquid-fire
Ember js meetup treviso liquid-fireWilliam Bergamo
 
Piotr Szotkowski about "Ruby smells"
Piotr Szotkowski about "Ruby smells"Piotr Szotkowski about "Ruby smells"
Piotr Szotkowski about "Ruby smells"Pivorak MeetUp
 
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
Y o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docxY o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docx
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docxherminaprocter
 
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
Y o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docxY o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docx
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docxodiliagilby
 
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet Pôle Systematic Paris-Region
 
Piotr Szotkowski about "Bits of ruby"
Piotr Szotkowski about "Bits of ruby"Piotr Szotkowski about "Bits of ruby"
Piotr Szotkowski about "Bits of ruby"Pivorak MeetUp
 
PostgreSQL Day italy 2016 Unit Test
PostgreSQL Day italy 2016 Unit TestPostgreSQL Day italy 2016 Unit Test
PostgreSQL Day italy 2016 Unit TestAndrea Adami
 
GraphQL Relay Introduction
GraphQL Relay IntroductionGraphQL Relay Introduction
GraphQL Relay IntroductionChen-Tsu Lin
 
Type Systems on the example of TypeScript
Type Systems on the example of TypeScriptType Systems on the example of TypeScript
Type Systems on the example of TypeScriptArtur Skowroński
 
Profiling Web Archives IIPC GA 2015
Profiling Web Archives IIPC GA 2015Profiling Web Archives IIPC GA 2015
Profiling Web Archives IIPC GA 2015Sawood Alam
 
Social Network Analysis With R
Social Network Analysis With RSocial Network Analysis With R
Social Network Analysis With RDavid Chiu
 
Code GPU with CUDA - Identifying performance limiters
Code GPU with CUDA - Identifying performance limitersCode GPU with CUDA - Identifying performance limiters
Code GPU with CUDA - Identifying performance limitersMarina Kolpakova
 
Spring scala - Sneaking Scala into your corporation
Spring scala  - Sneaking Scala into your corporationSpring scala  - Sneaking Scala into your corporation
Spring scala - Sneaking Scala into your corporationHenryk Konsek
 
Writing (Meteor) Code With Style
Writing (Meteor) Code With StyleWriting (Meteor) Code With Style
Writing (Meteor) Code With StyleStephan Hochhaus
 
Taxmann's GST Mini Ready Reckoner | July 2020
Taxmann's GST Mini Ready Reckoner | July 2020Taxmann's GST Mini Ready Reckoner | July 2020
Taxmann's GST Mini Ready Reckoner | July 2020Taxmann
 
Evaluation progresion path loss model
Evaluation progresion path loss modelEvaluation progresion path loss model
Evaluation progresion path loss modelNguyen Minh Thu
 

Similar to Breathe life into your designer! (20)

Spring Roo 2.0 Preview at Spring I/O 2016
Spring Roo 2.0 Preview at Spring I/O 2016 Spring Roo 2.0 Preview at Spring I/O 2016
Spring Roo 2.0 Preview at Spring I/O 2016
 
Ember js meetup treviso liquid-fire
Ember js meetup treviso liquid-fireEmber js meetup treviso liquid-fire
Ember js meetup treviso liquid-fire
 
Piotr Szotkowski about "Ruby smells"
Piotr Szotkowski about "Ruby smells"Piotr Szotkowski about "Ruby smells"
Piotr Szotkowski about "Ruby smells"
 
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
Y o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docxY o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docx
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
 
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
Y o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docxY o u r  N a m e   L S P  2 0 0 - 3 2 0  ( c o u r s e  I .docx
Y o u r N a m e L S P 2 0 0 - 3 2 0 ( c o u r s e I .docx
 
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet
PyData Paris 2015 - Track 3.2 Serge Guelton et Pierrick Brunet
 
Piotr Szotkowski about "Bits of ruby"
Piotr Szotkowski about "Bits of ruby"Piotr Szotkowski about "Bits of ruby"
Piotr Szotkowski about "Bits of ruby"
 
JavaFX, because you're worth it
JavaFX, because you're worth itJavaFX, because you're worth it
JavaFX, because you're worth it
 
PostgreSQL Day italy 2016 Unit Test
PostgreSQL Day italy 2016 Unit TestPostgreSQL Day italy 2016 Unit Test
PostgreSQL Day italy 2016 Unit Test
 
GraphQL Relay Introduction
GraphQL Relay IntroductionGraphQL Relay Introduction
GraphQL Relay Introduction
 
Type Systems on the example of TypeScript
Type Systems on the example of TypeScriptType Systems on the example of TypeScript
Type Systems on the example of TypeScript
 
Profiling Web Archives IIPC GA 2015
Profiling Web Archives IIPC GA 2015Profiling Web Archives IIPC GA 2015
Profiling Web Archives IIPC GA 2015
 
Social Network Analysis With R
Social Network Analysis With RSocial Network Analysis With R
Social Network Analysis With R
 
Code GPU with CUDA - Identifying performance limiters
Code GPU with CUDA - Identifying performance limitersCode GPU with CUDA - Identifying performance limiters
Code GPU with CUDA - Identifying performance limiters
 
1
11
1
 
1
11
1
 
Spring scala - Sneaking Scala into your corporation
Spring scala  - Sneaking Scala into your corporationSpring scala  - Sneaking Scala into your corporation
Spring scala - Sneaking Scala into your corporation
 
Writing (Meteor) Code With Style
Writing (Meteor) Code With StyleWriting (Meteor) Code With Style
Writing (Meteor) Code With Style
 
Taxmann's GST Mini Ready Reckoner | July 2020
Taxmann's GST Mini Ready Reckoner | July 2020Taxmann's GST Mini Ready Reckoner | July 2020
Taxmann's GST Mini Ready Reckoner | July 2020
 
Evaluation progresion path loss model
Evaluation progresion path loss modelEvaluation progresion path loss model
Evaluation progresion path loss model
 

More from Cédric Brun

Integrating Xtext and Sirius: Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and PitfallsIntegrating Xtext and Sirius: Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and PitfallsCédric Brun
 
Eclipse Modeling Guided Tour - EMF Compare
Eclipse Modeling Guided Tour - EMF CompareEclipse Modeling Guided Tour - EMF Compare
Eclipse Modeling Guided Tour - EMF CompareCédric Brun
 
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Cédric Brun
 
Eclipse Modeling Guided Tour - EcoreTools
Eclipse Modeling Guided Tour - EcoreToolsEclipse Modeling Guided Tour - EcoreTools
Eclipse Modeling Guided Tour - EcoreToolsCédric Brun
 
EcoreTools-Next: Executable DSL made (more) accessible
EcoreTools-Next: Executable DSL made (more) accessibleEcoreTools-Next: Executable DSL made (more) accessible
EcoreTools-Next: Executable DSL made (more) accessibleCédric Brun
 
Integrating Xtext and Sirius: Strategies and Pitfalls
Integrating  Xtext and Sirius:  Strategies and PitfallsIntegrating  Xtext and Sirius:  Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and PitfallsCédric Brun
 
15 EMF projects in 25 minutes
15 EMF projects in 25 minutes15 EMF projects in 25 minutes
15 EMF projects in 25 minutesCédric Brun
 
What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !Cédric Brun
 
Sirius : origins, present, future
Sirius : origins, present, futureSirius : origins, present, future
Sirius : origins, present, futureCédric Brun
 
Xtext + Sirius = ♥ / EclipseCon Europe 2014
Xtext + Sirius = ♥  / EclipseCon Europe 2014Xtext + Sirius = ♥  / EclipseCon Europe 2014
Xtext + Sirius = ♥ / EclipseCon Europe 2014Cédric Brun
 
Xtext + Sirius = &lt;3
Xtext + Sirius = &lt;3Xtext + Sirius = &lt;3
Xtext + Sirius = &lt;3Cédric Brun
 
Ecore Tools 2.0 : The Luna Revival
Ecore Tools 2.0 : The Luna RevivalEcore Tools 2.0 : The Luna Revival
Ecore Tools 2.0 : The Luna RevivalCédric Brun
 
Sirius Role Playing Game - Build diagram, table and tree editors in 20 minutes
Sirius Role Playing Game  - Build diagram, table and tree editors in 20 minutesSirius Role Playing Game  - Build diagram, table and tree editors in 20 minutes
Sirius Role Playing Game - Build diagram, table and tree editors in 20 minutesCédric Brun
 
What every developer should know about EMF Compare
What every developer should know about EMF CompareWhat every developer should know about EMF Compare
What every developer should know about EMF CompareCédric Brun
 
From Acceleo.org To Eclipse Modeling
From Acceleo.org To Eclipse ModelingFrom Acceleo.org To Eclipse Modeling
From Acceleo.org To Eclipse ModelingCédric Brun
 
Acceleo Day - Acceleo Mtl Code Generation
Acceleo Day - Acceleo Mtl Code GenerationAcceleo Day - Acceleo Mtl Code Generation
Acceleo Day - Acceleo Mtl Code GenerationCédric Brun
 
Team Work With Models Web
Team Work With Models WebTeam Work With Models Web
Team Work With Models WebCédric Brun
 

More from Cédric Brun (17)

Integrating Xtext and Sirius: Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and PitfallsIntegrating Xtext and Sirius: Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and Pitfalls
 
Eclipse Modeling Guided Tour - EMF Compare
Eclipse Modeling Guided Tour - EMF CompareEclipse Modeling Guided Tour - EMF Compare
Eclipse Modeling Guided Tour - EMF Compare
 
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
Eclipse Modeling Guided Tour - Acceleo Query Language (AQL)
 
Eclipse Modeling Guided Tour - EcoreTools
Eclipse Modeling Guided Tour - EcoreToolsEclipse Modeling Guided Tour - EcoreTools
Eclipse Modeling Guided Tour - EcoreTools
 
EcoreTools-Next: Executable DSL made (more) accessible
EcoreTools-Next: Executable DSL made (more) accessibleEcoreTools-Next: Executable DSL made (more) accessible
EcoreTools-Next: Executable DSL made (more) accessible
 
Integrating Xtext and Sirius: Strategies and Pitfalls
Integrating  Xtext and Sirius:  Strategies and PitfallsIntegrating  Xtext and Sirius:  Strategies and Pitfalls
Integrating Xtext and Sirius: Strategies and Pitfalls
 
15 EMF projects in 25 minutes
15 EMF projects in 25 minutes15 EMF projects in 25 minutes
15 EMF projects in 25 minutes
 
What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !
 
Sirius : origins, present, future
Sirius : origins, present, futureSirius : origins, present, future
Sirius : origins, present, future
 
Xtext + Sirius = ♥ / EclipseCon Europe 2014
Xtext + Sirius = ♥  / EclipseCon Europe 2014Xtext + Sirius = ♥  / EclipseCon Europe 2014
Xtext + Sirius = ♥ / EclipseCon Europe 2014
 
Xtext + Sirius = &lt;3
Xtext + Sirius = &lt;3Xtext + Sirius = &lt;3
Xtext + Sirius = &lt;3
 
Ecore Tools 2.0 : The Luna Revival
Ecore Tools 2.0 : The Luna RevivalEcore Tools 2.0 : The Luna Revival
Ecore Tools 2.0 : The Luna Revival
 
Sirius Role Playing Game - Build diagram, table and tree editors in 20 minutes
Sirius Role Playing Game  - Build diagram, table and tree editors in 20 minutesSirius Role Playing Game  - Build diagram, table and tree editors in 20 minutes
Sirius Role Playing Game - Build diagram, table and tree editors in 20 minutes
 
What every developer should know about EMF Compare
What every developer should know about EMF CompareWhat every developer should know about EMF Compare
What every developer should know about EMF Compare
 
From Acceleo.org To Eclipse Modeling
From Acceleo.org To Eclipse ModelingFrom Acceleo.org To Eclipse Modeling
From Acceleo.org To Eclipse Modeling
 
Acceleo Day - Acceleo Mtl Code Generation
Acceleo Day - Acceleo Mtl Code GenerationAcceleo Day - Acceleo Mtl Code Generation
Acceleo Day - Acceleo Mtl Code Generation
 
Team Work With Models Web
Team Work With Models WebTeam Work With Models Web
Team Work With Models Web
 

Recently uploaded

Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesRAJNEESHKUMAR341697
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxmaisarahman1
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxJuliansyahHarahap1
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksMagic Marks
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Call Girls Mumbai
 
Air Compressor reciprocating single stage
Air Compressor reciprocating single stageAir Compressor reciprocating single stage
Air Compressor reciprocating single stageAbc194748
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaOmar Fathy
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startQuintin Balsdon
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapRishantSharmaFr
 
Rums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfRums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfsmsksolar
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityMorshed Ahmed Rahath
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"mphochane1998
 

Recently uploaded (20)

Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic Marks
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
Air Compressor reciprocating single stage
Air Compressor reciprocating single stageAir Compressor reciprocating single stage
Air Compressor reciprocating single stage
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Rums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfRums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdf
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 

Breathe life into your designer!

  • 1. BREATHE LIFE INTO YOUR DESIGNER! WITH SIRIUS AND GEMOC , OBEO ( ) , INRIA and Univ. Rennes 1 ( ) Cédric Brun @bruncedric Benoit Combemale @bcombemale Slides available at http://siriuslab.github.io/talks/BreatheLifeInYourDesigner/slides
  • 2. (DOMAIN-SPECIFIC) BEHAVIORAL MODELS Business Processes, Orchestrations, Functional chains, Activities, Protocoles, Scenarios...
  • 3. ANALYSIS OF BEHAVIORAL MODELS Early V&V of behavioral properties Software engineering, systems engineering, enterprise architecture, scientific modeling...
  • 4. MODEL DEBUGGING Traversing step forward the states reached by the model through the application of the interpreter Intuitive model comprehension technique No abstraction gap Better turn-arounds ⇒ Fast convergence towards an acceptable design
  • 5. OMNISCIENT MODEL DEBUGGING Relies on an execution trace to revert the executed model into a prior state Forward/backward navigation into the execution trace No record & replay (similar) Replay
  • 6. OMNISCIENT DEBUGGING OF ACTIVITY DIAGRAMS SEE HTTP://GEMOC.ORG/TTC15
  • 8. HOW TO GET YOUR OWN (DOMAIN-SPECIFIC) DEBUGGER?
  • 10. PROPOSED APPROACH: SIRIUS ANIMATION Xtend/Kermeta or Java to define the interpreter Sirius to define the animator by extension of the tooling description A generative approach for the trace manager A generic execution engine A generic control panel and timeline
  • 12. A SIMPLE ECLIPSE BASED TOOLING
  • 13.
  • 14. ARDUINO SIMULATOR 2 new plugins : fr.obeo.dsl.arduino.simulator fr.obeo.dsl.arduino.simulator.design                 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - L a n g u a g e f i l e s b l a n k c o m m e n t c o d e - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - J a v a 1 4 2 2 9 3 1 8 1 1 8 5 X M L 5 0 0 3 2 9 M a v e n 2 1 2 1 8 5 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - S U M : 2 1 2 4 1 3 3 6 1 5 6 8 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -              
  • 15. INTERPRETER               p u b l i c c l a s s L o o p S w i t c h e x t e n d s A r d u i n o S w i t c h { / / . . . @ O v e r r i d e p u b l i c O b j e c t c a s e S e n s o r ( S e n s o r s e n s o r ) { f i n a l P i n p i n = A r d u i n o U t i l s . g e t P i n ( s i m u l a t o r . g e t P r o j e c t ( ) , s e n s o r . g e t M o d u l e ( ) ) ; r e t u r n i n t e r p r e t O b j e c t V a l u e T o B o o l e a n ( s i m u l a t o r . g e t P i n L e v e l ( p i n ) } @ O v e r r i d e p u b l i c O b j e c t c a s e R e p e a t ( R e p e a t r e p e a t ) { f i n a l I n s t r u c t i o n f i r s t = r e p e a t . g e t I n s t r u c t i o n s ( ) . g e t ( 0 ) ; f o r ( i n t i = 0 ; i < r e p e a t . g e t I t e r a t i o n ( ) ; + + i ) { I n s t r u c t i o n c u r r e n t = f i r s t ; w h i l e ( c u r r e n t ! = n u l l ) { d o S w i t c h ( c u r r e n t ) ; c u r r e n t = c u r r e n t . g e t N e x t ( ) ; } } r e t u r n n u l l ; } / / . . . }
  • 16. EXECUTION ENGINE               p u b l i c c l a s s S i m u l a t o r D e b u g g e r e x t e n d s A b s t r a c t D S L D e b u g g e r { / / . . . p u b l i c v o i d s t a r t ( ) { n e w T h r e a d ( n e w R u n n a b l e ( ) { p u b l i c v o i d r u n ( ) { s p a w n R u n n i n g T h r e a d ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) , s i m u l a t o r . g e t P r o j e c t ( ) ) ; s i m u l a t o r . i n i t ( ) ; s i m u l a t o r . l o o p ( ) ; } } , " A r d u i n o S i m u l a t o r " ) . s t a r t ( ) ; } p u b l i c v o i d u p d a t e D a t a ( S t r i n g t h r e a d N a m e , E O b j e c t i n s t r u c t i o n ) { i f ( ! h a r d w a r e F r a m e P u s h e d ) { p u s h S t a c k F r a m e ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) , s i m u l a t o r . g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) . g e t N a m e ( ) , s i m u l a t o r . g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) , i n s t r u c t i o n ) ; h a r d w a r e F r a m e P u s h e d = t r u e ; } e l s e { s e t C u r r e n t I n s t r u c t i o n ( T h r e a d . c u r r e n t T h r e a d ( ) . g e t N a m e ( ) , i n s t r u c t i o n ) ; } f o r ( E n t r y < V a r i a b l e , O b j e c t > e n t r y : n e x t S u s p e n d V a r i a b l e s . e n t r y S e t ( ) ) { v a r i a b l e ( t h r e a d N a m e , s i m u l a t o r . g e t P r o j e c t ( ) . g e t H a r d w a r e ( ) . g e t N a m e ( ) , " v a r i a b l e " e n t r y . g e t K e y ( ) . g e t N a m e ( ) , e n t r y . g e t V a l u e ( ) , t r u e ) ; }
  • 19. LEVERAGE THE SIRIUS ANIMATION RUNTIME Encapsulate step over/into/return in transactions Bridge the Eclipse Debug APIs and the EMF APIs Transmit events and requests Initialize the tooling extension Provide off-the-shelf ecore model for runtime data
  • 20. ECORE MODEL FOR RUNTIME DATA
  • 23.
  • 24. GEMOC The GEMOC ANR project ( ): A Language Workbench for concurrent execution and simulation of heterogeneous models The GEMOC Initiative ( ): GEMOC is an open international initiative that aims to coordinate and disseminate the research results regarding the support of the coordinated use of various modeling languages that will lead to the concept of globalization of modeling languages, that is, the use of multiple modeling languages to support coordinated development of diverse aspects of a system. http://gemoc.org/ins http://gemoc.org/
  • 25. GEMOC TECHNOLOGIES Ready for pilote project: Sirius Animation (animator designer and runtime, execution engine, trace manager) Ready for more R&D: MoccML and Timesquare for explicit concurrency specification in DSLs BCOoL for coordination patterns between DSLs
  • 27. technologies (EPL) which have proven helpful and are looking for an interest to bring it at full maturity level. Generic
  • 28.
  • 29. IN A NUTSHELL... POJO Animator (case of Arduino Designer) Code the Interpreter, the Execution Engine and possibly any additional tools quick results, easy to integrate, very few (or custom) execution control. Advanced Animator (case of Activity Diagram) Code the Interpreter and use the generic Execution Engine and Trace manager more analysis capabilities (concurrency) and rich execution control (panel, timeline...)
  • 30. TO BE CONTINUED... - 0.1.x - Read the - - to breath life into your designer Try executable Arduino Designer GEMOC Publications Join the GEMOC Initiative Get in touch with us