Tous ceux qui ont utilisé un ordinateur ont tôt ou tard entendu et probablement utilisé le mot « bug », mais c’est quoi un bug ?

Bug est devenu un terme générique quand un ordinateur n’exécute pas la tâche prévue, se bloque, ou même simplement ne se comporte pas comme l’utilisateur s’y attend.

Cela va jusqu’à l’expression « il a buggé » appliqué de façon ironique à une personne qui montre une absence de réaction dans une situation où il devrait le faire.

Bref le bug, ou le bogue selon l’académie française, est devenu un incontournable du vocabulaire moderne.

 

L’origine du bug  

 

L’histoire raconte que les premières pannes des ordinateurs étaient dues à de petits insectes qui avaient élus domicile au sein de ce qu’ils prenaient pour de douillets logements chauffés, que les humains appelaient ordinateurs. De temps en temps leur activité provoquait des courts-circuits et donc des pannes.

 

 

« Bug » étant un terme anglais générique pour désigner un petit insecte, les disfonctionnements informatiques sont donc devenus des « bugs ».

 

Le bug matériel 

 

Probablement le plus rare de tous (les machines actuelles sont assez insensibles aux éventuels insectes), il est dû le plus souvent à un problème d’alimentation (microcoupure, parasite ou champ magnétique) et provoque en général un blocage total de la machine.

 

Le bug système 

 

Les systèmes d’exploitation sont des logiciels comme les autres, sujets aux erreurs de codage et peuvent se trouver dans une situation imprévue. Comme les bug matériels, l’histoire fini souvent par un redémarrage de la machine.

Une variante désagréable est la conséquence d’une attaque externe, soit en masse (DDOS), soit en exploitant un bug dont l’exemple le plus connu est le bug dit « ping of death » où un simple paquet réseau de quelques dizaines d’octets envoyé à une machine provoquait son blocage total.

 

Le bug applicatif  

 

Une fois éliminées les causes externes, nous voici donc au cœur du problème : « il y un bug dans le logiciel »

Même si la phrase est légitime, elle est utilisée par tous et pour tous les cas de figure, essayons donc de ramener les choses à leur juste valeur.

Pour un utilisateur, le bug couvre tous les cas de figure, autrement dit le « ça ne marche pas », qui va de l’arrêt total à la non-compréhension d’un processus informatique (je n’ai pas trouvé le bouton pour valider ou, non vous ne pouvez pas vous faire livrer si vous ne donnez pas votre adresse).

Pour un spécialiste produit, il s’agit d’un cas de figure non traité par le logiciel ou d’un dysfonctionnement réel résultant d’une erreur de codage ou d’analyse.

Quant à un développeur, soit il admet une erreur de sa part, soit il invoque le paradoxe de l’œuf et de la poule, mais c’est un autre histoire qui mérite à elle seule un article complet, avec bien sûr l’assistance d’un coq pour l’explication de la théorie susmentionnée …

 

Olivier Piochaud, PDG d’Apsynet

 

 

Catégories : Développement & Web