Revisiting Fault Localization Techniques for Model Transformations: Towards A Hybrid Approach
Sprache des Titels:
The correctness of software built through model transformations highly depends on the correctness of these transformations. Different approaches have been proposed to ensure the correctness of model transformations by checking if pairs of input-output models satisfy a set of contracts. If a contract is not satisfied, at least one transformation rule must contain a bug. Localizing the rules that contain bugs is key for repairing the model transformation. Among others, Spectrum-Based Fault Localization (SBFL) is a dynamic technique to locate the faulty component of a software, and it has already been applied in the context of model transformations considering the rules as the components. As a result, this technique proposes an order (a so-called suspiciousness ranking) in which the rules should be inspected in order to locate the bug. However, SBFL relies on so-called suspiciousness formulae that were created in different domains, so none of them offers a perfect behavior in the context of model transformations. Indeed, some of the rankings for model transformations present many ties, so the tester is uncertain as of which rule to inspect first in the ties. In this paper, we explore how SBFL can be combined with static information in a hybrid approach in order to improve the results obtained from SBFL, specially in the case of ties in the rankings. Our evaluation shows the potential of the hybrid approach to improve previous SBFL results for model transformations.