Software craftsmanship

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Le Software craftsmanship (ou l'« artisanat du logiciel ») est une approche de développement de logiciels qui met l'accent sur les compétences de codage des développeurs de logiciels eux-mêmes. Il est une réponse de développeurs de logiciels aux maux récurrents de l'industrie du logiciel, y compris la priorisation des préoccupations financières vis-à-vis de la responsabilité du développeur.

Ce mouvement prône le côté artistique du développement logiciel, autrement dit, d'après le manifeste de l'artisanat du logiciel, il ne suffit pas qu'un logiciel soit fonctionnel, mais il faut qu'il soit bien conçu[1]. L'idée principale est de garantir la fiabilité et la maintenabilité du logiciel d'où l'importance des développeurs motivés, aptes à user de leur savoir-faire pour concevoir des logiciels qui respectent les indicateurs de qualité logicielle. C'est pour cette raison que le software craftsmanship et l'agilité sont complémentaires, car là où l'agilité se limite à la souplesse des cycles de développement, le software craftsmanship s'étend sur la façon même dont est écrit le code à chaque cycle. Et un artisan du logiciel est forcement agile tandis que l'inverse peut être faux.

Historique[modifier | modifier le code]

Le mouvement s'est inspiré des concepts développés dans le livre The Pragmatic Programmer: From Journeyman to Master (Andy Hunt & David Thomas – 1999). Toutefois, bien avant, en 1992, Jack W. Reeves[2] a rédigé un essai dans le journal du C++ intitulé "What Is Software Design?" où il explique pourquoi le développement logiciel est plus un art qu'une discipline d'ingénierie. Ensuite a été publié en 2001 l'ouvrage de Pete McBreen, "Software Craftsmanship" ou il propose une meilleur métaphore pour qualifier les développeurs de logiciels en remplacement de la traditionnelle appellation d'ingénieur.

Puis est réellement né en 2008 le Software Craftsmanship en tant que mouvement lors que Uncle Bob proposa comme cinquième valeur du manifeste agile "Craftsmanship over Execution" (En français: "l'artisanat plus que l'exécution").

Cette valeur n'ayant pas été intégré au manifeste agile, un certain nombre d'aspirants artisans du logiciel se sont rencontrés à Libertyville dans l'Illinois la même année afin de définir un ensemble de principes pour le software crafmanship.

Enfin en 2009, le manifeste issu des différentes rencontres a été publié pour être vu et signé par les différents partisans du mouvement: "Le manifeste pour l'artisanat du logiciel"

Dès lors, partout à travers le monde, des rencontres sont organisés pour créer une communauté de professionnels, cherchant continuellement à élever le niveau selon les principes évoqués dans le manifeste.

Liens externes[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. « Manifesto for Software Craftsmanship », sur manifesto.softwarecraftsmanship.org (consulté le 6 juin 2015)
  2. http://www.developerdotstar.com/mag/bios/jack_reeves.html