Imaginez que vous travaillez avec toute une équipe sur un projet logiciel important. À présent, imaginez que la personne sur qui tout le monde comptait – celle qui détenait toutes les connaissances techniques – disparaît du jour au lendemain en cessant de répondre aux messages (en espérant qu'il ne s'agisse que de vacances !).
Que se passe-t-il ? Le projet continue-t-il ? Ou se retrouve-t-il paralysé ?
C'est là qu'intervient le concept de Bus Factor : ce terme quelque peu inquiétant mesure le risque au sein de votre équipe ou projet face à un imprévu.
Définition du Bus Factor
Le Bus Factor est un indicateur mesurant la résilience d'une équipe : combien de personnes peuvent partir avant qu'un projet soit en péril ?
Un Bus Factor égal à 1 est risqué : cela signifie qu'une seule personne détient des connaissances vitales pour le projet. Si elle venait à quitter l'équipe ou à tomber malade, le projet serait paralysé ou du moins gravement compromis.
À l'inverse, un Bus Factor élevé est bon signe car il témoigne d'un bon partage de connaissances et des responsabilités. Ainsi, même si une personne devient indisponible, ses collègues pourraient prendre la relève sans que ce soit trop pénalisant pour le projet.
L'utilisation du Bus Factor est pertinente dans les équipes où la documentation est insuffisante et/ou les transferts de connaissances négligés. Le départ d'une personne clé peut être lourd de conséquences : retards, erreurs coûteuses voire abandon du projet dans les cas extrêmes.
Garder un Bus Factor élevé
Pour améliorer le Bus Factor, adoptez des pratiques favorisant le transfert d'information et la montée en compétence collective. Il est même pertinent d'avoir des plans de transition ou bien des successeurs désignés qui prennent la relève pour les cas critiques.
L'objectif premier reste de réduire la dépendance du projet vis-à-vis d'une seule personne ou d'un trop petit groupe.
En informatique, il n'est pas rare qu'une personne possède les connaissances de tout un pan critique (code, infra, pipeline...). Pour éviter la panique en cas d'indisponibilité, il existe plusieurs astuces à incorporer au quotidien :
- Rendre le savoir accessible à tous :
- Documenter l'application, les processus, l'architecture... avec un outil adéquat, du README au Confluence
- Avoir une culture transparente, qui valorise le partage
- Partager les connaissances entre développeurs et encourager les bonnes pratiques :
- Pair-programming
- Revues de code
- Étendre les connaissances de chacun, pour apprendre ce que font les autres et devenir plus polyvalent :
- Rotation des tâches
- Formation croisée
Conclusion
Le Bus Factor s'appuie sur un concept visuel pour évaluer la résilience d'une équipe ou d'un projet. Au-delà de sa valeur, il rappelle l'importance de partager l'ensemble des connaissances et d'avoir une culture collaborative pour éviter les écueils. Si vous n'anticipez pas et qu'une personne clé se fait écraser par un bus, c'est tout le projet qui tombe en rade au bord de la route !