Factors Limiting Industrial Adoption of Test Driven Development: A Systematic Review

✒ Enzo SandrĂ© · 📆 19/11/2021 · đŸ§Ș Tests · đŸ§‘â€đŸ’Œ Management

🇾đŸ‡Ș TDD est bĂ©nĂ©fique pour la qualitĂ©, j’en ai dĂ©jĂ  parlĂ© ici. Quels sont donc les facteurs qui limitent son adoption en entreprise ? Il y en a 7 selon 3 chercheurs suĂ©dois.

🐌 Sa lenteur en temps de dĂ©veloppement initial. A nuancer, car TDD est plus rapide si l’on prend en compte le temps de maintenance dans le calcul.

🧠 Le manque de connaissances sur TDD, renforcĂ© par sa contre-productivitĂ© entre les mains de novices.

📐 La lĂ©gende voulant que TDD ne permette pas de design. Elle n’a jamais Ă©tĂ© Ă©tayĂ©e par la recherche ou par l’expĂ©rience des praticiens, pourtant elle reste ancrĂ©e dans la tĂȘte des managers.

đŸ—œïž Le manque de compĂ©tences en tests. En effet, TDD requiert des dĂ©veloppeurs qui savent dĂ©jĂ  (bien) tester. Ce n’est pas souvent le cas en entreprise. La bonne nouvelle, c’est que l’on peut apprendre directement avec TDD.

đŸ§Č De mauvaises implĂ©mentations de TDD, alors que l’on sait que TDD doit ĂȘtre correctement appliquĂ© pour prĂ©senter des bĂ©nĂ©fices clairs.
❌ Des limitations propres au domaine ou aux outils. Il est par exemple trùs difficile de tester des GUI en TDD.

đŸ—‘ïž La prĂ©sence de Code Legacy, que TDD ne sait pas traiter (il faut d’autres techniques pour ça).

đŸ’© En conclusion : apprendre TDD n’amĂ©liore pas les performances Ă  court terme et peut mĂȘme les grĂ©ver. Il n’est pas possible de faire du « demi-TDD » sans en perdre tout l’intĂ©rĂȘt. TDD est un investissement lourd qui ne paie qu’à long terme. Soit, selon Niklaus Wirth, l’inverse de la tendance de l’industrie depuis les annĂ©es 70.

👉 Sans courage managĂ©rial, il ne faut attendre aucun bĂ©nĂ©fice de TDD.

SOURCE

Causevic, Adnan & Sundmark, Daniel & Punnekkat, Sasikumar. (2011). Factors Limiting Industrial Adoption of Test Driven Development: A Systematic Review. Proceedings – 4th IEEE International Conference on Software Testing, Verification, and Validation, ICST 2011. 337-346. 10.1109/ICST.2011.19.

Enzo Sandré


DOIs: 10.1109/ICST.2011.19