Une étude empirique et une réplication révèlent que les développeurs perçoivent souvent de façon erronée l'efficacité des techniques de test et de revue de code. Ces erreurs de jugement—souventUne étude empirique et une réplication révèlent que les développeurs perçoivent souvent de façon erronée l'efficacité des techniques de test et de revue de code. Ces erreurs de jugement—souvent

Pourquoi les développeurs continuent de choisir les mauvaises techniques de test

2025/12/15 05:09

:::info Auteurs:

  1. Sira Vegas
  2. Patricia Riofr´ıo
  3. Esperanza Marcos
  4. Natalia Juristo

:::

Résumé

1 Introduction

2 Étude Originale : Questions de Recherche et Méthodologie

3 Étude Originale : Menaces à la Validité

4 Étude Originale : Résultats

5 Étude Répliquée : Questions de Recherche et Méthodologie

6 Étude Répliquée : Menaces à la Validité

7 Étude Répliquée : Résultats

8 Discussion

9 Travaux Connexes

10 Conclusions et Références

Résumé

Un problème récurrent dans le développement logiciel est la prise de décision incorrecte concernant les techniques, méthodes et outils à utiliser. La plupart du temps, ces décisions sont basées sur les perceptions des développeurs à leur sujet. Un facteur influençant les perceptions des personnes est l'expérience passée, mais ce n'est pas le seul. Dans cette recherche, nous visons à découvrir dans quelle mesure les perceptions de l'efficacité de détection des défauts de différentes techniques correspondent à leur efficacité réelle en l'absence d'expérience préalable.

\ Pour ce faire, nous menons une étude empirique ainsi qu'une réplication. Durant l'étude originale, nous réalisons une expérience contrôlée avec des étudiants appliquant deux techniques de test et une technique de revue de code. À la fin de l'expérience, ils répondent à un sondage pour déterminer quelle technique ils perçoivent comme étant la plus efficace. Les résultats montrent que les perceptions des participants sont erronées et que cette inadéquation est coûteuse en termes de qualité.

\ Afin d'approfondir notre compréhension des résultats, nous répliquons l'expérience contrôlée et élargissons le sondage pour inclure des questions sur les opinions des participants concernant les techniques et les programmes. Les résultats de l'étude répliquée confirment les conclusions de l'étude originale et suggèrent que les perceptions des participants pourraient être basées non pas sur leurs opinions concernant la complexité ou leurs préférences pour les techniques, mais sur la façon dont ils pensent avoir appliqué ces techniques.

1. Introduction

Une pratique de plus en plus populaire de nos jours consiste pour les entreprises de développement logiciel à laisser les développeurs choisir leur propre environnement technologique. Cela signifie que différents développeurs peuvent utiliser différents outils de productivité (langage de programmation, IDE, etc.). Cependant, l'ingénierie logicielle (IL) est une discipline à forte intensité humaine où de mauvaises décisions peuvent potentiellement compromettre la qualité du logiciel résultant. En IL, les décisions concernant les méthodes, techniques et outils à utiliser dans le développement logiciel sont généralement basées sur les perceptions et/ou opinions des développeurs plutôt que sur des preuves, comme le suggèrent Dyb˚a et al. [19] et Zelkowitz et al. [55].

\ Cependant, des preuves empiriques pourraient ne pas être disponibles, car certaines méthodes, techniques ou outils peuvent ne pas avoir été étudiés dans un contexte particulier ou même pas du tout. Alternativement, les développeurs peuvent simplement ne pas être familiarisés avec de telles études, selon Vegas & Basili [49]. Sur cette base, il est important de découvrir dans quelle mesure les perceptions des développeurs (croyances) correspondent à la réalité et, si ce n'est pas le cas, de découvrir ce qui se cache derrière cette inadéquation, comme l'a noté Devanbu et al. [14]. Selon la psychologie, l'expérience joue un rôle dans les perceptions des gens. Cela a également été observé par Devanbu et al. [14] en IL.

\ Cependant, cette recherche vise à découvrir dans quelle mesure les perceptions correspondent à la réalité en l'absence d'expérience préalable dans la technologie utilisée. Cela a du sens pour plusieurs raisons : 1) l'expérience n'est pas le seul facteur affectant les perceptions des développeurs ; 2) les équipes de développement sont généralement composées d'un mélange de personnes avec et sans expérience ; et 3) il n'est pas clair quel type d'expérience influence les perceptions. Par exemple, Dieste et al. [17] concluent que l'expérience académique plutôt que professionnelle pourrait affecter la qualité externe du code généré par les développeurs lors de l'application du développement piloté par les tests.

\ Nous visons à étudier si les perceptions concernant l'efficacité de trois techniques de détection de défauts correspondent à la réalité, et si ce n'est pas le cas, ce qui se cache derrière ces perceptions. À notre connaissance, c'est le premier article à évaluer empiriquement cette question. À cette fin, nous avons mené une étude empirique ainsi qu'une réplication avec des étudiants. Durant l'étude originale, nous avons mesuré (dans le cadre d'une expérience contrôlée) l'efficacité de deux techniques de test et d'une technique de revue de code lorsqu'elles sont appliquées par les participants. Nous avons ensuite comparé la technique perçue comme la plus efficace (recueillie au moyen d'un sondage) avec la technique réellement la plus efficace.

\ De plus, nous avons analysé le coût de l'inadéquation entre les perceptions et la réalité en termes de perte d'efficacité. Les principales conclusions incluent :

– Différentes personnes perçoivent différentes techniques comme étant plus efficaces. Aucune technique n'est perçue comme étant plus efficace que les autres. – Les perceptions de 50% des participants (11 sur 23) sont erronées.

– Une perception erronée des techniques peut réduire l'efficacité de 31pp (points de pourcentage) en moyenne.

\ Ces conclusions nous ont amenés à étendre l'objectif de l'étude dans une réplication pour investiguer ce qui pourrait être à l'origine des perceptions des participants. Pour ce faire, nous avons examiné leurs opinions sur les techniques qu'ils ont appliquées et les programmes qu'ils ont testés dans une réplication de l'expérience contrôlée. Les principales conclusions incluent :

– Les résultats de la réplication confirment les conclusions de l'étude originale.

– Les participants pensent que l'efficacité de la technique dépend exclusivement de leur performance et non des faiblesses possibles de la technique elle-même. – Les opinions sur la complexité des techniques et les préférences pour les techniques ne semblent pas jouer un rôle dans l'efficacité perçue. Ces résultats sont utiles pour les développeurs et les chercheurs. Ils suggèrent :

– Les développeurs devraient prendre conscience des limites de leur jugement.

– Des outils devraient être conçus pour fournir un retour aux développeurs sur l'efficacité des techniques.

– La meilleure combinaison de techniques à appliquer devrait être déterminée, qui soit à la fois facilement applicable et efficace. – Des instruments devraient être développés pour rendre les résultats empiriques disponibles aux développeurs.

\ Le matériel associé aux études présentées ici peut être trouvé sur https://github.com/GRISE-UPM/Misperceptions. L'article est organisé comme suit. La section 2 décrit l'étude originale. La section 3 présente ses menaces à la validité. La section 4 discute des résultats. La section 5 décrit l'étude répliquée basée sur les modifications apportées à l'étude originale. La section 6 présente ses menaces à la validité. La section 7 rapporte les résultats de cette étude répliquée. La section 8 discute de nos conclusions et de leurs implications. La section 9 montre les travaux connexes. Enfin, la section 10 présente les conclusions de ce travail.

\ \

:::info Cet article est disponible sur arxiv sous licence CC BY-NC-ND 4.0.

:::

\

Clause de non-responsabilité : les articles republiés sur ce site proviennent de plateformes publiques et sont fournis à titre informatif uniquement. Ils ne reflètent pas nécessairement les opinions de MEXC. Tous les droits restent la propriété des auteurs d'origine. Si vous estimez qu'un contenu porte atteinte aux droits d'un tiers, veuillez contacter service@support.mexc.com pour demander sa suppression. MEXC ne garantit ni l'exactitude, ni l'exhaustivité, ni l'actualité des contenus, et décline toute responsabilité quant aux actions entreprises sur la base des informations fournies. Ces contenus ne constituent pas des conseils financiers, juridiques ou professionnels, et ne doivent pas être interprétés comme une recommandation ou une approbation de la part de MEXC.

Vous aimerez peut-être aussi