About
18
Publications
949
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
40
Citations
Citations since 2017
Publications
Publications (18)
At Thales Defense Mission Systems, software products first go through an industrial prototyping phase. We elaborate evolutionary prototypes which implement complete business behavior and fulfill functional requirements. We elaborate and evolve our solutions directly with end-users who act as stake-holders in the products’ design. Prototypes also se...
At Thales Defense Mission Systems, software products first go through an industrial prototyping phase. We elaborate evolutionary prototypes which implement complete business behavior and fulfill functional requirements. We elaborate and evolve our solutions directly with end-users who act as stake-holders in the products’ design. Prototypes also se...
As applications get developed, bugs inevitably get introduced. Often, it is unclear why a given code change introduced a given bug. To find this causal relation and more effectively debug, developers can leverage the existence of a previous version of the code, without the bug. But traditional debug-ging tools are not designed for this type of work...
Context. Refining or altering existing behavior is the daily work of every developer, but that cannot be always anticipated, and software sometimes cannot be stopped. In such cases, unanticipated adaptation of running systems is of interest for many scenarios, ranging from functional upgrades to on-the-fly debugging or monitoring of critical applic...
Debugging is one of the most important and time consuming activities in software maintenance, yet mainstream debuggers are not well-adapted to several debugging scenarios. This has led to the research of new techniques covering specific families of complex bugs. Notably, recent research proposes to empower developers with scripting DSLs, plugin-bas...
Debugging is one of the most important and time consuming activities in software maintenance, yet mainstream debuggers are not well-adapted to several debugging scenarios. This has led to the research of new techniques covering specific families of complex bugs. Notably, recent research proposes to empower developers with scripting DSLs, plugin-bas...
Certains programmes doivent fonctionner en continu et ne peuvent pas être interrompus en cas de dysfonctionnement. C'est par exemple le cas de drones en mission, de satellites et de certains objets connectés. Pour de telles applications, le défi est d’identifier les problèmes et de les corriger pendant l'exécution du programme. De plus, dans le con...
The software industry has to offer increasingly individualized software for a large number of platforms. In a constantly evolving technical context, the appropriateness and the profitableness of a software has to be ensured earlier, before most of the costs have been incurred and before most of the risks have been taken. Feature-Oriented Model-Driv...
Observing and modifying object-oriented programs often means interacting with objects. At runtime, it can be a complex task to identify those objects due to the live state of the program. Some objects may exist for only a very limited period of time, others can be hardly reachable because they are never stored in variables. To address this problem...
Cyber-Physical Systems (CPS) integrate sensors and actuators to collect data and control entities in the physical world. Debugging CPS systems is hard due to the time-sensitive nature of a distributed applications combined with the lack of control on the surrounding physical environment. This makes bugs in CPS systems hard to reproduce and thus to...
Autonomous systems have to evolve in complex environments and their software must adapt to various situations. Although it is common to anticipate adaptations at design time, it becomes a more complex issue when facing unpredictable contexts at runtime, especially if applications cannot be stopped. We introduce Lub, a pattern designed to extend obj...
To debug running software we need unanticipated adaptation capabilities, especially when systems cannot be stopped, updated and restarted. Adapting such programs at runtime is an extreme solution given the delicate live contexts the debugging activity takes place. We introduce the Dynamic Layer, a construct in which behavioral variations are gather...
In the context of Feature-Oriented Model-Driven Development, round-trip engineering remains challenging because of the one-to-many relationship that exists between a source model and its implementation parts.
In this paper, we present CrossFabrik, an approach that allows round-trip engineering with dynamic assessment of generated implementations. S...
Embedded, interactive or reactive systems have to face unexpected events coming from their environment. Taking this kind of event into account at design time raises the challenging issue of the dynamic behavior adaptation at runtime. In this paper, we investigate a DSL approach to address this problem. This DSL, called Lub, is a context oriented pr...