Up

Julien Deantoni

Associate Professor@Polytech'Nice
researcher@I3S/INRIA AOSTE team.

 Research

Ongoing Activities

My research activities are making a pragmatic use of formal models to bring semantics into engineering models and their coordination. This is implemented by the join use of CCSL [1] to define the concurrent and timed semantics of domain specific languages [2,3,4]. Such specification can be used to simulate and run analysis of models conforming such languages [5, 6].

Recently, we studied how different (domain specific) languages can be used conjointly in a comprehensive way. As a result, we proposed to develop a language dedicated to the specification of coordination patterns. BCOoL (Behavioral Coordination Operator Language [7]) makes use of language interfaces defined in terms of event types and specify a coordination pattern so that the coordination between any languages conforming such patterns can be automatically generated. The result is integrated in the gemoc studio to provide heterogeneous execution and debugging facilities.

Currently, I'm investigating how the explicit specification of the coordination (first at the language level and then at the model level) can be used to automatically generate the master in a co-simulation environment. Named co-modeling for co-simulation, this action is starting and few prototype on a FMI bus has been implemented. If you're interested, please, contact me (julien_._deantoni '@' polytech_._unice_._fr)

[1] Charles André. Syntax and Semantics of the Clock Constraint Specification Language (CCSL). [Research Report] RR-6925, INRIA. 2009, pp.37. inria-00384077v2
[2] Benoit Combemale, Julien Deantoni, Matias Ezequiel Vara Larsen, Frédéric Mallet, Olivier Barais, et al.. Reifying Concurrency for Executable Metamodeling. Erwig, Martin and Paige, Richard F. and Van Wyk, Eric. SLE - 6th International Conference on Software Language Engineering, Oct 2013, Indianapolis, IN, United States. Springer, 8225, pp.365-384, 2013, Lecture Notes in Computer Science; Software Language Engineering - 6th International Conference, SLE 2013, Indianapolis, IN, USA, October 26-28, 2013. Proceedings. 10.1007/978-3-319-02654-1_20. hal-00850770v2
[3] Julien Deantoni, Frédéric Mallet. ECL: the Event Constraint Language, an Extension of OCL with Events. [Research Report] RR-8031, INRIA. 2012, pp.24. hal-00721169v2
[4] Florent Latombe, Xavier Crégut, Benoît Combemale, Julien Deantoni, Marc Pantel. Weaving Concurrency in eXecutable Domain-Specific Modeling Languages. 8th ACM SIGPLAN International Conference on Software Language Engineering (SLE), 2015, Pittsburg, United States. ACM, 2015, hal-01185911
[5] Julien Deantoni, 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 - 2012, May 2012, Prague, Czech Republic. Springer, 7304, pp.34-41, 2012, Lecture Notes in Computer Science - LNCS; Objects, Models, Components, Patterns. doi://10.1007/978-3-642-30561-0_4. hal-00688590
[6] Benoit Combemale, Julien Deantoni, Olivier Barais, Arnaud Blouin, Erwan Bousse, et al.. A Solution to the TTC'15 Model Execution Case Using the GEMOC Studio. 2015. hal-01152342
[7] Matias Ezequiel Vara Larsen, Julien Deantoni, Benoit Combemale, Frédéric Mallet. A Behavioral Coordination Operator Language (BCOoL). Timothy Lethbridge; Jordi Cabot; Alexander Egyed. International Conference on Model Driven Engineering Languages and Systems (MODELS), Sep 2015, Ottawa, Canada. ACM; IEEE, 18th International Conference on Model Driven Engineering Languages and Systems (MODELS) pp.462, 2015, hal-01182773

Software

  • TimeSquare

    TimeSquare is developed for almost 10 years for now. It is dedicated to the specification, simulation, compiling and analysis of logical time constraints in CCSL (Clock Constraint Specification Language, a formal declarative language). It is constantly evolving and can be used either as a plain IDE or as an embedded solver. It has been used to represent the behavioral semantics together with the timing performance in many of our publications.

  • ECL

    ECL (Event Constraint Language) is a lightweight extension of OCL (Object Constraint Language) with the notion of Event and logical constraints. It is used to specify the concurrent semantics of languages so that, for a specific model, the corresponding CCSL formal model can be automatically synthesize.

  • BCOoL

    BCOoL (Behavioral Coordination Operator Language) is a meta-language dedicated to the specification of behavioral coordination patterns. Based on event type from some language interfaces, it specifies how the models that conform such languages have to be coordinated. The specification, make at the language level is used to automatically creates an executable coordination for any model conforming the languages used in BCOoL. The resulting heterogeneous models can be simulated in the GEMOC studio or analyzed in TimeSquare (see here for an heterogeneous simulation from a BCOoL specification)

  • MoCCML

    MoCCML (Model of Concurrency and Communication Modeling Language) is a formal meta-language dedicated to the specification of logical constraints between events, based on constraint automata. These constraints can be used conjointly with a CCSL specification for simulation and analysis. It can also be used in ECL to specify the concurrency of a language or in BCOoL to specify how a coordination pattern between different languages behaves.

Open Positions

Publication List

Current Students

  • Giovanni Liboni (Master)

  • Imane Fouad (Master)

 Teaching

Master

Finite State Machine: resources here
In this course, I give a pragmatic view on the use of Finite State Machine in an engineering context. The goal is to understand how state machines can be used in different contexts to cleanly structure control code. The notion of FSM, code generation, V&V and temporal logic will be investigated both theoretically and practically through the use of different tools and paradigms like, for instance, SCXML, QtCreator, OBP, uppaal. The course objective is to keep a good balance between theoretical and practical aspects.
The course will be evaluated based on random/continuous evaluations, graded lab sessions and, at the end, by an exam.

Programmation Multi paradigm en C++: resources here
In this course, I give an introduction to C++ (norm C++11). Its ability to be used for procedural programming, the genericity (templates), some elements of the STL (Standard Template Libray), the use of Lambda expressions, some algorithms and, of course the Object-Oriented capabilities provided by C++.
The course will be evaluated based on random/continuous evaluations, graded lab sessions and, at the end, by an exam.

Final internships management: resources here
In a nutshell, three websites to know: http://polytechnice.jobteaser.com, conventions et wints on polytech.unice.fr

Language behavioral semantics (IDM2): resources here et description here
In this course, we will explore the notion of behavioral semantics in practice. After an introduction on Languages, we will do a tutorial based on the one of the GEMOC studio. Then, we will study the need and the way to specify the behavioral semantics of a language. As a result you will develop a simulation modeling environment for Arduino. The course will be evaluated based on intermediate reports, the state of the arduino simulator and an exam.

Embedded Applications and Systems: resources here
In this course, we will explore how a micro controler can be programmed without any Operating System or with a very light Real Time Operating System. After some general introduction on the field, the students are putting the hands on, based on the arduino platform and its atmel micro controler.

Introduction to Embedded Software and Systems (ISLE): resources here
In this course, we will explore how a micro controler can be programmed with a very light Real Time Operating System and later without any OS. After some general introduction on the field, the students are putting the hands on, based on the arduino platform and its atmel micro controler.

Licence

no content, yet