For faster navigation, this Iframe is preloading the Wikiwand page for Méthode du canard en plastique.

Méthode du canard en plastique

Un canard « examinant » du code Java.

La méthode du canard en plastique, appelée également méthode du canard en caoutchouc, est une pratique de revue du code source utilisée en génie logiciel dans les phases de débogage.

Canard en plastique dans un environnement de développement.
SparkFun Electronics canard en plastique

La méthode du canard en plastique consiste à expliquer méticuleusement le code source que l'on a écrit à un collègue, à un simple passant, ou même à un objet inanimé comme un canard en plastique[1],[2]. Le simple fait d'exprimer ses pensées à voix haute est censé aider à trouver les erreurs de programmation. Comme les réactions de l'interlocuteur ou son niveau de compréhension du problème n'ont aucune importance dans ce processus, il est possible de le remplacer par un canard en plastique.

Lorsque le programmeur ou l'analyste explique un bout de code ou un algorithme qui est incorrect, il peut en effet se rendre compte de son erreur. La méthode du canard en caoutchouc exploite un support pouvant aider à imaginer un contexte nouveau, favorisant une transposition, contraignant ainsi le programmeur à expliciter l'implicite, en l'adaptant pour le faire comprendre depuis un autre point de vue. Cela est susceptible de confronter le concepteur au fait que le code qu'il a écrit ne correspond pas au code qu'il avait l'intention d'écrire.

L'avantage du canard en plastique sur un interlocuteur humain est que sa capacité d'écoute et sa patience sont sans limite. Son temps est aussi moins précieux que celui d'un consultant ou d'un collègue[3]. Le fait qu'il soit petit permet de le placer discrètement à côté d'un écran d'ordinateur.

Ce principe est aussi utile pour d'autres types de travaux. Par exemple, un projet devant être présenté à l'oral à l'aide d'un diaporama. Il suffit de décrire le projet à une personne ou à son canard en plastique pour le faire de la manière la plus simple possible, ce qui permet de trouver un fil conducteur naturel.

L'ouvrage d'Andrew Hunt et David Thomas, The Pragmatic Programmer: From Journeyman to Master, publié en 1999, semble être le premier à mentionner la méthode du canard en caoutchouc sous ce nom (rubber ducking en anglais)[4]. Selon cet ouvrage, David Thomas a fréquenté un étudiant à l'Imperial College London nommé Greg Pugh, réputé excellent programmeur. Greg Pugh transportait en permanence avec lui un canard en caoutchouc jaune et a expliqué le procédé à David Thomas à sa demande.

Cette méthode a ensuite été rendue célèbre en 2002 par Andrew Errington sur un forum en ligne[5].

Brian Kernighan et Rob Pike ont eux aussi décrit la méthode dans un ouvrage papier publié en 1999, mais en faisant référence à un ours en peluche[6]. Stephen J. Baker l'a décrite en utilisant une figurine de chien en carton à la place d'un canard en caoutchouc[3]. Russ Freeman suggère d'employer une effigie en carton d'un collègue programmeur[7].

Cette technique est enseignée à l'Université de Sherbrooke sous l'appellation « parler à une plante verte »[8].

Notes et références

[modifier | modifier le code]
  1. (en) Essential Equipment - The Third Bit.
  2. (en) What is this particular type of revelation called? - Stack Overflow.
  3. a et b (en) The Contribution of the Cardboard Cutout Dog to Software Reliability and Maintainability.
  4. (en) Andrew Hunt et David Thomas, The Pragmatic Programmer : From Journeyman to Master, Addison-Wesley Professional, , 352 p. (ISBN 978-0-201-61622-4), p. 95.
  5. (en) Description de la méthode par Andrew Errington.
  6. (en) Brian Kernighan et Rob Pike, The Practice of Programming, Addison-Wesley Professional, , 288 p. (ISBN 978-0-201-61586-9, lire en ligne), p. 123.
  7. (en) Cardboard programmer.
  8. « IGL501 Méthodes formelles en génie logiciel »(Archive.orgWikiwixArchive.isGoogleQue faire ?), sur www.dmi.usherb.ca (consulté le ).

Articles connexes

[modifier | modifier le code]

Lien externe

[modifier | modifier le code]
{{bottomLinkPreText}} {{bottomLinkText}}
Méthode du canard en plastique
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?