Feature Factories vs Value Generators

De Wiki Agile

Auteur : Itamar Gilad
Source : Feature Factories vs. Value Generators
Date : 11/12/2023


Traducteur : Fabrice Aimetti
Date : 11/12/2023


Traduction :


Image : Alden Jewell

Que nous le voulions ou non, nous sommes nombreux à travailler dans des usines à fonctionnalités (feature factories). Nous produisons des fonctionnalités les unes après les autres, en essayant de respecter une feuille de route. Pour certains, c'est tout à fait normal, mais pour d'autres, l'usine à fonctionnalités est devenue le symbole de tout ce qui ne va pas dans le développement traditionnel des produits.

Pourquoi sommes-nous si divisés ? Et qui a raison ?

La théorie des systèmes et une certaine perspective historique peuvent aider à faire la lumière, et peut-être aussi offrir une vision des alternatives. Cela peut sembler un peu théorique au début, mais restez avec moi et je vous promets de rendre cela très rapidement pertinent.

Usines traditionnelles

Voici à quoi ressemble une unité de production, par exemple une usine, du point de vue de la théorie des systèmes.

 
Vue d'une usine selon la théorie des systèmes

La fonction de l'usine est de transformer les entrées - matériaux, pièces, personnes, machines, etc. - en sorties, c'est-à-dire en unités fabriquées. Invariablement, l'usine produit également des déchets : des restes de matériaux, des sous-produits tels que la chaleur et la pollution, ainsi que des unités défectueuses qui ne sont pas conformes aux spécifications.

Le modèle énonce immédiatement des objectifs clairs (qui sont devenus la marque de fabrique de la gestion d'entreprise classique) :

  • Efficacité : améliorer le rapport entre les sorties et les entrées (c'est-à-dire faire plus avec moins).
  • Qualité : améliorer le rapport entre les sorties et les déchets
  • Débit : augmentation de la capacité de fabrication pour répondre à la demande.

Le 20e siècle est en effet une histoire d'innovation dans tous ces domaines. Des chaînes de montage de Ford aux usines robotisées d'aujourd'hui, nous avons été en mesure d'augmenter considérablement le débit et la qualité de nos usines, tout en réduisant le coût de production, ce qui a conduit à l'abondance de produits que nous connaissons aujourd'hui.

Entrez dans l'usine à fonctionnalités

Dans les années 1980, les logiciels ont commencé à envahir le monde à un rythme accéléré. Les chefs d'entreprise se sont retrouvés à la tête de sociétés dotées d'un département logiciel (que, pour une raison ou une autre, beaucoup appellent IT), voire à la tête d'une société spécialisée dans les logiciels.

Pour ces personnes, le modèle de l'usine tenait toujours ; elles devaient créer une unité de production de logiciels (ou équipe de production ~ Delivery team) avec des entrées et des sorties bien définies.

Mais il y a eu quelques complications :

  • Dans le domaine du logiciel, il n'y a pas "une seule bonne façon" (one right way, terme inventé par le théoricien du management traditionnel Frederick Winslow Taylor) de produire. Contrairement aux travailleurs à la chaîne, on ne peut pas dire aux développeurs de logiciels et aux concepteurs UX comment développer le logiciel parce que chaque projet est nouveau et différent ; c'est à eux qu'il incombe de trouver la solution. Cela signifiait qu'il fallait recruter des personnes plus instruites et leur verser des salaires plus élevés. La semaine-personne est devenue l'unité d'entrée la plus importante.
  • Au fur et à mesure que les produits devenaient plus techniques et plus complexes, les responsables ont eu du mal à dire aux développeurs exactement ce qu'ils devaient construire. C'est ainsi qu'est apparu un nouveau rôle, celui de chef produit, ou aujourd'hui de Product Owner, qui, d'un point de vue management traditionnel, est la personne qui traduit les feuilles de route en spécifications que l'équipe de "delivery" peut utiliser.

Une fois ces deux problèmes résolus, nous avons pu créer l'usine à fonctionnalités : [[1]]
Vue systémique d'une usine de fonctionnalités