Temps de lecture moyen : 4 mn

Chez Captive, nous avons décidé de partager avec vous chaque semaine les enseignements que nous tirons du Lean dans notre activité quotidienne d'agence de développement.

La semaine dernière, nous avions abordé le quatrième principe : La production constante et lissée (heijunka). Cette semaine, nous allons présenter "l'automatisation avec une touche humaine", aussi appelé "autonomation" ou en japonais "Jidoka". 

Les origines du Jidoka: l'arrêt au défaut

Les origines du Jidoka remontent au temps où Toyota était une entreprise de fabrication de textile. En 1896, Sakichi Toyoda invente un métier à tisser industriel en bois capable de s'arrêter automatiquement lorsqu'un fil casse.

l01_01_01_01_img04

A l'inverse, les autres modèles de métier à tisser de l'époque nécessitaient la supervision constante d'un opérateur. Cette personne devait observer le métier pendant tout le temps de son activité et l'arrêter en cas d'incident. Un job difficile...

Le nouveau métier à tisser de Toyota est révolutionnaire par deux aspects :

  • Il n'y a plus besoin d'opérateur pour superviser chaque métier à tisser. Un opérateur peut se charger de plusieurs métiers et n'intervenir qu'en cas d'incident. La pénibilité de ce poste est grandement réduite
  • Le fait que le métier s'arrête immédiatement et automatiquement, empêche la production de textile défectueux. Les économies en temps et en matières première sont importantes.

En cela, il est emblématique du Jidoka  :

  • L'opérateur n'est pas "esclave de la machine", il peut travailler dans un état de conscience humainement acceptable
  • la machine s'arrête immédiatement au défaut, elle ne transmet pas la non-qualité au poste suivant

Le jidoka, base de la livraison continue dans le développement informatique


Si le monde de la tech est un terrain fertile à l'automatisation,  il y a deux catégories de tâches où, selon moi, l'automatisation a le plus d'impact à la fois sur les équipes et sur le business :

  1. Les tâches dangereuses / pénibles. En tant qu'entreprise tech, on doit redéfinir la notion de "dangereux". Il est rare que l'on se blesse au travail en tapant sur son clavier. On pourrait donc considérer comme dangereuse toute tâche qui, si oubliée ou mal réalisée aurait des impacts importants sur le business. On pourrait citer comme exemple "casser le service en production", "introduire une forte dette technique" ou "introduire une faille de sécurité". L'automatisation de ces tâches est une nécessité : les développeurs doivent être en situation de travailler en sécurité.
  2. Les tâches chronophage ou mentalement fatigantes. Par exemple, les tâches de nettoyage, le versionnage d'une application, la mise à jour d'une library, sont des tâches que l'on peut progressivement automatiser et qui permettent de faire baisser la charge mentale du développeur.
YXNzZXRzL2NvbnRlbnQvZ2l0aHViLWFjdGlvbnMtdGVzdC1hdXRvbWF0aW9uL3dvcmtmbG93LXJ1bm5pbmctdGVzdHMucG5n

Vous l'avez compris : le Jidoka est très lié à la pratique de Continuous Integration / Continuous Delivery et de la Developer Experience . Lorsque l'on utilise ces derniers avec un "regard Lean", on a une meilleure idée du résultat à atteindre, en vue d'obtenir productivité et qualité.

Automatisation des tâches dans la tech

Dans la tech il est possible en théorie de tout automatiser, il faut donc se fixer des objectifs et établir une stratégie claire. Un bon point de départ serait d'intégrer les outils standards et éprouvés de l'industrie tech dans l'outil de CI/CD (linter, tests unitaires, tests end-to-end). Dans un second temps, il sera possible d'investiguer des outils à fort potentiel mais nécessitant plus d'expérimentations/réglages (danger.system, renovate-bot, cspell, etc)

Par ailleurs, l'automatisation soulève des questions presque philosophiques

  • A quel endroit l'humain est réellement nécessaire et apporte la vraie valeur ?
  • Quel est la définition d'un défaut et comment est-on capable de le détecter ?

La pratique régulière du Jidoka va permettre de découvrir la vraie valeur des développeurs : des personnes capables de réfléchir et de livrer rapidement de la valeur au client, tout en réduisant sans cesse le nombre de défauts, par une meilleure compréhension de ceux-ci et une évolution constante de ses outils de production.

 

{{cta('e409457e-2ef8-4cc6-9e72-f729c8e8036f','justifycenter')}}