OCRE

OCRE - Réduire le coût du debugging avec la première génération de debuggers orientés objet

Coordinateur : Monsieur Steven Costiou du Centre de Recherche Inria Lille - Nord Europe- CRIStAL

Équipe : RMoD du Groupe Thématique : GL.

Dates : 10/21 - 06/26

Résumé :

Le debugging est difficile et coûteux. Le debugging centré sur les objets est une technique récente qui soutient que la concentration du debugging sur des objets spécifiques facilite considérablement le suivi et la compréhension des bugs difficiles dans les systèmes à objets. Mais il manque des briques fondamentales pour que cela soit applicable dans la pratique. Par conséquent, la technique n’a jamais été évaluée empiriquement.

L’objectif du projet OCRE est d’étudier les limites fondamentales et pratiques qui entravent la mise en œuvre, l’évaluation et l’adoption de l’object-centric debugging. Nous proposons de construire la première génération de debuggers centrés sur les objets, afin d’identifier et d’évaluer les bénéfices réels de la technique pour le debugging de systèmes à objets. Nous soutenons que ces debuggers ont le potentiel de réduire considérablement le coût (temps et efforts) de la traque et de la compréhension des bugs difficiles dans les systèmes à objets.

Nous allons :
(1) définir comment identifier les objets à debugger ;
(2) définir et étudier des outils concurrents centrés sur les objets pour le debugging de systèmes objets concurrents ;
(3) évaluer la technique au moyen d’évaluations empiriques à grande échelle et de cas d’utilisation industriels.

Nous allons construire des prototypes de debuggers avancés qui seront transférables vers l’open-source et vers le monde industriel. Ce travail ouvrira la possibilité de rendre la technique disponible pour tous les langages orientés objet, apportant ainsi ses avantages à toutes les développeuses et développeurs de systèmes à objets.

Abstract

Debugging is difficult and costly. Object-centric debugging is a young technique arguing that focusing the scope of debugging on specific objects considerably eases the tracking and the understanding of hard bugs in Object-Oriented Programs (OOP).
But it lacks fundamental bricks to be applicable in practice. Therefore, it has never been empirically evaluated.

The objectives of the OCRE project are to study the fundamental and practical limits that hinder the implementation, the evaluation, and the adoption of object-centric debugging.
We propose to build the first generation of object-centric debuggers, in order to identify and evaluate its real benefits to OOP debugging.
We argue that these debuggers have the potential to drastically lower the cost (time and effort) of tracking and understanding hard bugs in OOP.

We will :
(1) define how to identify objects to debug ;
(2) define and study object-centric concurrent tools for the debugging of concurrency ;
(3) evaluate the technique through large-scale empirical evaluations and industrial use-cases.
We will build advanced debuggers prototypes that will be transferable to the open-source and the industrial world.
This work will open the future possibility to make the technique available for all OOP languages, therefore bringing its benefits to all OOP developers.