User:Sottet

From AtlanMod

Contents

Jean-Sébastien Sottet btn_liprofile_blue_80x15.gif

PhD In Computer Science Post-Doc Position in AtlanMod Team

About me

I obtained my PhD in Computer Science in Université Joseph Fourier (Grenoble I). I was member of EHCI team where my work stands on Model Driven Engineering for Adaptative Human Computer Interaction.

Since 1 November 2008, I am a research assistant working in the field of Model Driven Engineering (MDE) for the AtlanMod research team (INRIA and EMN). I study notions of view and viewpoint for Software (reverse)Engineering, maintenance and evolution. By this study I hope to demonstrate that Model Driven Engineering approach can be scalable for large software.

Currently, I work for the Lambda project lambda-projet.org.

Research interest:

  • Program Comprehension
  • Model Driven Views and Viewpoints
  • Model Driven Reverse Engineering
  • Program Visualization


For my PhD publications on Model Driven Engineering for HCI follow this link.

Research Overview

Model Driven Engineering has longer been studied for development concerns. Since we want large model to test scalability of MDE approaches we need to obtain them from existing code. Nowadays, it seems that the research and industrial communities are more and more interested in graph or model-based engineering for treating reverse engineering issues.

There are two important points to be demonstrated :

  • MDE fits with R.E in terms of scalability(e.g. managing large scale model)
  • MDE can brought improvement to R.E thanks it's generic power and higher level of abstraction.

The first point ask both technical and theoretical questions about the core MDE tools and framework. The second point means a generic and complete exploitation of the notion of view and viewpoint.

MDE for Reverse Engineering

In order to test scalability of MDE (or graph-based tools) we have proposed a case study at the Grabats tools contest: Case study.

Model Driven Program Slicing

The Bundle "for program slicing", that I have realized, is composed of the following steps:

  • Injection of Java code into Java Model (Basically Abstract Syntax tree from JDT).
  • Computation of Control Flow Graph (CFG) : different solution are under study. One solution propose the use Model Weaving : CFG nodes points. We also propose different kind of control flow graph
  • Computation of Program Dependence Graph (PDG) : it capture both control flow and data dependency between program statements
  • Computation of the Sliced-part regarding a slicing criterion : This step computes, given a statement (in other word a slicing criterion), the sliced-graph of program that affect this statement.

For more explanation about Model Driven Program Slicing please follow this link

Views and Viewpoint

  • Viewpoint fusion : viewpoint fusion is related to our ongoing work about merging information (obtains by reverse engineering) on the system under study.
  • Lattices of views : I am investigating lattices theory and model sub-typing. I want to apply it to compute reduced or sliced view or fusion of view of a system model. A first step of this work is available at Lattices and Model Sub-Typing
  • Program query results as views

Program Query/ Model Query

We are experiencing performances test for program query.

Visualization

We want to be able to target any visualization format (such as GraphML) and even textual format for all views and computation realized. Thanks to MDE re-usability, we target transformations chains for displaying CFG graph for example. Further implementation must also take account of the binding between view and actual program under study. Taking advantage of immersive visualization is important for both program and model comprehension. I am planning to do some metric visualization, on metamodel, in 3D by using XAML and X3D.

Discovered Model Quality Measurement

For evolution purpose, quality of existing source code is a key information. We made a first experimentation that reuse a quality measurement transformation chain for discovered Java Model. We used UML/class model as pivot model to ensure measurement. See the concerned paper at : Evaluating Discovered Models: joint work between Atos Origin and AtlanMod. We also implement basic metric on the KM3 metamodel zoo basic metric on KM3 Zoo

Ongoing research

Multiple sources input (static, dynamic, third party, etc.) for architecture recovery, system analysis. A first workshop paper Coupling static and dynamic models information presents a first attempt for managing multiples input models.

Publications

  • Jean-Sébastien Sottet, Frédéric Jouault, Jean Bézivin. Coupling Static and Dynamic Models Information. In International Workshop on Reverse Engineering Models from Software Artifacts (REM'09) Organized in conjunction with WCRE'09, Lille, France .October, 2009
  • Jean-Sébastien Sottet, Mathieu Venisse, Frédéric Jouault, Jean Bézivin, Vincent Fady. Evaluating Discovered Models. In International Workshop on Reverse Engineering Models from Software Artifacts (REM'09) Organized in conjunction with WCRE'09, Lille, France .October, 2009

Contact Information

AtlanMod research team (INRIA & EMN) - Room B206

École des Mines de Nantes

4, rue Alfred Kastler

44307 Nantes Cedex 3 - France

jean-sebastien.sottet_AT_inria.fr_NOSPAM