Les dépendances et les transferts ralentissent votre équipe et votre organisation

samedi 9 décembre 2023 par socraticDev

La création, la livraison et la maintenance de systèmes logiciels sont un processus visant à apporter de la valeur à quelqu'un. Ce quelqu'un s'appelle le client et les personnes impliquées dans le processus, les parties prenantes. C'est un processus nécessitant des expertises différentes qui ne peut généralement pas être réalisé par une seule personne ni une seule équipe. La complexité du processus, le fait qu'il comporte de nombreuses pièces mobiles, conduit à des problèmes courants tels que des malentendus, des retards et des goulots d'étranglement. Par exemple, un malentendu peut être dû au fait que les développeurs construisent une fonctionnalité qui ne résout pas le problème du client ; les retards sont un décalage entre les délais (dates d'échéance) et l'état réel du système logiciel ; les goulots d’étranglement sont des zones dans lesquelles le flux de travail ralentit ou s’arrête.

Le flux de travail est un idéal auquel toutes les organisations et toutes les équipes du ces organisations devraient viser

"Le flux se produit lorsqu'il y a un mouvement fluide, linéaire et rapide du produit du travail d'une étape à l'autre dans une chaîne de valeur pertinente." © Scaled Agile, Inc.

dépendences et transferts

Les dépendances et les transferts sont les suspects habituels lorsque les équipes doivent gérer trop de travail en cours (WIP).

Les dépendances deviennent visibles lorsque les éléments de travail cessent de circuler dans la chaîne de valeur soit parce qu'ils nécessitent l'intervention d'une autre équipe, soit parce que le processus de transfert ("livraison") ne peut pas être terminé.

Les transferts sont un type spécifique de dépendances qui se produisent au sein d'une équipe ou d'un ensemble d'équipes collaborant ensemble. Les transferts se produisent lorsqu'un élément de travail est pris en charge puis transmis à la personne suivante dans la chaîne ; pour qu'elle y travaille selon son expertise particulière. Par exemple, un chef de produit confie une user story au concepteur de l'équipe pour qu'il conçoive comment cette fonctionnalité est inclus dans le produit. Une fois le travail du designer terminé, il le remet aux développeurs. Une fois la fonctionnalité implémentée, les développeurs la transmettent à leur spécialiste des tests.

pourquoi éviter les dépendances et les transferts?

Afin d'améliorer le flux de livraison de valeur, les dépendances et les transferts doivent être soigneusement analysés et traités car ils ralentissent la création de valeur.

  • chaque transfert ralentit le flux
  • pour chaque élément de travail, il existe des connaissances non explicites et non documentées nécessaires à sa compréhension. Cette connaissance tacite a tendance à se perdre ou à se diluer à chaque transfert.

façons de réduire les effets négatifs des transferts

  1. limiter le nombre de transferts dans le flux d'un élément de travail
  2. améliorer les structures de communication entre les membres de l'équipe et les personnes adjacentes membres des équipes collaboratrices
  3. augmenter l'autonomie des équipes, expérimenter la collaboration croisée sur un même item de travail, etc.

conclusion

Les dépendances et les transferts sont des effets secondaires intrinsèques du travail dans les logiciels et l'ingénierie des systèmes. Ils ne sont pas mauvais en eux-mêmes. Mais ils devraient certainement être minimisés afin d’améliorer le flux de livraison de valeur.

Être capable d’identifier ces goulots d’étranglement est un pas dans la bonne direction. Ça signifie que vous êtes déjà en mesure de visualiser le work in progress (WIP) et vous faire une meilleure idée de la nature des goulots d’étranglement qui ralentissent votre flux de valeur(value stream).

La prochaine étape de votre parcours d'amélioration continue consistera à relever le défi des boucles de rétroaction(feedback loops).

En vous demandant :

  • « Est-ce que je construis la bonne chose ? »
  • « Dans quelle mesure mes clients sont satisfaits de mon produit ? » .

Savoir que vous construisez la bonne chose est aussi important que de bien la construire ou la construire rapidement !

sources

https://scaledagileframework.com/make-value-flow-without-interruptions/

https://techbeacon.com/app-dev-testing/how-agile-teams-can-minimize-hand-offs