dimanche 9 février 2014

Fixer un bug n'a pas de valeur

Le thème de cet article peut surprendre mais de nombreux responsables d'applications et de nombreux développeurs continuent encore trop souvent à considérer la fixation d'un bug comme un travail normal alors que cela devrait les perturber.








Trop souvent, le but de certains responsables d'application est d' "occuper" tous les membres de son équipe. Cela est un but louable si les développements prévus ont de la valeur pour l'utilisateur ou pour l'équipe. Mais fixer un bug n'a pas de valeur.

De même, pour de trop nombreux développeurs, passer plusieurs journées à faire du debug est passionnant. Etre un archéologue du virtuel, un Sherlock Holmes des temps modernes attire. C'est aussi une des manières de se rendre indispensable sur des applications mal développées : et oui, le mythe du "faux" héros fascine et est d'ailleurs plutôt lucratif et valorisant dans certaines structures. Mais fixer un bug n'a  pas de valeur.

Un bug n'est rien d'autre qu'un défaut de fabrication. Fixer un bug n'est donc que corriger ce dernier. Tout le temps passé à cette fin est du temps, de l'énergie et donc de l'argent gaspillé.

Pourquoi l'exemple de l'industrie ne fait-il pas office de référence?


Un "bug" a des conséquences catastrophiques pour un constructeur automobile :

- des milliers de clients insatisfaits chez qui le doute grandit quant à la qualité du véhicule acheté
- une confiance dans le constructeur qui s'effrite
- une image de marque qui est sérieusement entachée
- un coût de rappels des véhicules impactés prohibitif

Pourquoi dans l'informatique n'a t'on pas encore systématiquement une aversion pour le bug alors que des solutions existent pour les éviter ?

 - Favoriser la collaboration entre le client/business analyst, les développeurs et les testeurs.
 - Favoriser le pair-programming ou au minimum la revue de code entre développeurs
 - Ecrire des scenarii d'acceptance avant la phase de développement
 - Maîtriser fonctionnellement son application et ne pas laisser galoper l'entropie d'année en année.
 - Créer un filet de sécurité pour développer en toute sécurité en se dotant de tests automatisés pertinents, orientés comportement et non implémentation ...

Investir dans la qualité, ralentir pour mieux accélérer telle est l'idée clé. Encore faut il ne pas avoir une vision court-termiste du retour sur investissement ...