đŹ Contrairement Ă lâaviation ou Ă la pharmacologie, nous ne publions pas nos Ă©checs. Câest un grand manque lorsquâil sâagit de valider des hypothĂšses de recherche. Aussi les chercheurs remplacent de vrais bugs par des faux lorsquâils Ă©tudient les moyens de les combattre. Deux outils sont principalement utilisĂ©s : la mutation et lâintroduction manuelle.
đŸ La mutation consiste Ă crĂ©er des mutants, des copies du code ayant subi un changement prĂ©programmĂ© (inverser une condition, incrĂ©menter une constante, supprimer une ligne, etc.)
đ§âđ» Lâintroduction manuelle emploie un dĂ©veloppeur expĂ©rimentĂ©, payĂ© pour introduire des bugs en amont de la recherche. Job de rĂȘve sâil en est.
âïž La mutation et lâintroduction manuelle sont-ils des substituts lĂ©gitimes aux vrais bugs ? Une Ă©quipe canadienne a vĂ©rifiĂ©. Les mutants obtiennent une bonne corrĂ©lation avec les vrais bugs, Ă condition que les opĂ©rateurs de mutation choisis soient correctement sĂ©lectionnĂ©s. Lâintroduction manuelle tend Ă introduire dâĂ©normes biais. LâĂ©quipe recommande de toujours faire rĂ©pliquer les Ă©tudes de basant sur cette seconde technique par dâautres chercheurs. Ce qui suppose de documenter le processus dâintroduction des bugs.
SOURCE
J. H. Andrews, L. C. Briand, and Y. Labiche. 2005. Is mutation an appropriate tool for testing experiments? In Proceedings of the 27th international conference on Software engineering (ICSE â05). Association for Computing Machinery, New York, NY, USA, 402â411. DOI:10.1145/1062455.1062530
Enzo Sandré
DOIs: 10.1145/1062455.1062530