Code-Garage #53 - Découvrez le bus factor

Durée: 6m53s

Date de sortie: 27/03/2023

Qu'arrivera-t-il à votre entreprise ou votre projet si vous vous faites percuter par un bus ?

Salut et bienvenue dans ce nouvel épisode du podcast de Code Garage,
je m'appelle Nicolas Bondin-Bernard et aujourd'hui on va parler de ce qui est le
bus factor dans un projet tech. Alors quand on crée un projet sur le long terme,
un projet technique, on se confronte tous et toutes au sujet de la pérennité du projet.
Ça peut être la dette technique, la qualité, la robustesse du code, l'évolutivité mais surtout
il y a un facteur qui est trop souvent négliger et qu'on appelle le bus factor. Alors ce
facteur c'est en réalité un indice de la robustesse du projet, non pas de manière technique mais en
termes de ressources humaines et de partages de connaissances. Ce facteur, il rentre en jeu par
exemple lors de la démission ou le décès malheureusement, alors c'est de là d'ailleurs
qu'on vient non, se faire écraser par un bus, le bus factor mais voilà mais ça peut être la
démission d'un ou plusieurs contributeurs clés du projet. Alors le bus factor ça tient compte des
personnes clés ou irremplaçables dans un projet ou même dans une entreprise au global. Donc pour être
considéré comme un contributeur clé ou une contributrice clé, il faut avoir une des trois
caractéristiques suivantes. C'est soit avoir accès à des informations ou des fichiers critiques
pour le bon déroulé du projet. Ça c'est le cas très souvent avec des gens qui sont là depuis très
longtemps et qui ont en fait un nombre d'informations non pas stockées sous forme de fichiers forcément
mais qui sont dans leur tête parce qu'ils ont travaillé sur ce projet depuis des années des
années des années et donc il y a plein de choses qu'on ne pensait pas critiques mais en fait qui sont
des informations qu'on peut perdre en perdant cette personne. Donc ça c'est une des choses mais ça
peut être aussi de posséder des accès ou des clés de chiffrement globalement non partagés et
sans moyens de récupération ça peut être vraiment terrible ou être à l'origine de la création d'un
composant logiciel clé qui serait soit non documenté ou qui a été rendu illisible à cause de
avec de l'obfuscation ou des choses comme ça. Pour chaque personne qui remplit au moins un des
critères dont je viens de vous parler, le bus factor est augmenté de 1. Plus ce chiffre est
élevé et plus le projet aura de chance de survivre à la disparition d'un de ses collaborateurs.
Par contre plus le facteur est critique et il se rapproche de 1, plus ça signifie que le projet
pourrait être complètement arrêté si cette personne en question venait ne serait-ce qu'à
tomber malade, partir en congés subitement, démissionner ou bien voir pire décider. Donc le bus
factor il est vu comme un goulot d'étranglement et il doit être considéré et calculé pour chaque
étape d'un projet. Par exemple s'il existe quatre contributeurs clés pour la partie front end,
trois contributeurs clés pour la partie back end et un seul contributeur clé pour la gestion de la
base de données, alors le bus factor global du projet est égal à un parce que c'est égal
aux plus petits facteurs parmi les étapes vitales du projet. Alors comment est-ce qu'on peut
améliorer son bus factor ? La réduction des risques qui est liée justement à ce factor,
tient en un seul principal c'est le partage d'information parce qu'évidemment dans une
équipe où tous les membres ont accès à la même source d'information, quand le code est compris
par tout le monde documenté et que les informations sécurisées sont soumises à une stratégie de
récupération en cas d'incident, le bus factor est exactement égal au nombre total de membres
d'équipes. Alors en formant ces équipes de manière plus ou moins transversale, ça veut dire
sur tous les sujets techniques du projet, en tenant une documentation à jour et des tests et en
découplant suffisamment tous les composants logiciels pour en faire baisser la complexité globale
et pour que l'ensemble du projet soit compréhensible à tout le monde, et bien même en faisant ça,
il n'existe pas de risque zéro, mais il serait quand même très difficile de mettre le projet en
péril si on remplit toutes ces conditions et qu'on y fait attention. Alors le bus factor,
il existe dans des projets techniques évidemment, mais il existe, il est valable dans d'autres contextes
et dans d'autres entreprises qui ne sont pas forcément dans le numérique et dans le logiciel
en particulier, parce qu'il y a plein de métiers où il y a des connaissances métiers justement
qui sont importantes et qui sont requis pour le bon fonctionnement de l'entreprise. Donc il y a
même parfois dans des grandes entreprises industrielles mondiales des règles qui
concernent le déplacement d'un grand nombre d'employés. Par exemple si vous avez un séminaire
avec toute votre entreprise et que des personnes doivent prendre l'avion vers une même destination,
ils sont répartis sur plusieurs vols différents parce que si jamais il y avait un problème avec
un avion et qu'on perdait tout cet avion, si toutes les personnes de l'entreprise venaient à décider,
évidemment ce serait un drame terrible, mais en plus l'entreprise pourrait, selon les personnes
qui ont pris partie, qui ont pris part à l'accident, on pourrait faire fondre tout simplement
l'entreprise, faire faillite puisque il y aurait trop d'informations absolument indispensables
sur la survie de l'entreprise qui serait parti. C'est vraiment un sujet qui est assez global
duquel on pense assez peu, alors évidemment il ne faut pas penser au pire, au décès, etc. Mais
par contre, juste simplement quelqu'un qui part du jour au lendemain, ça arrive, c'est mine de rien
assez fréquent dans les entreprises et donc il faut y penser. Donc faites attention à votre busfactor,
je parlais de le calculer tout à l'heure, ça ne sert à rien de le calculer tous les mois, etc.
Ça c'est juste à calcul théorique, mais il faut en être conscient, savoir là est-ce qu'on
est susceptible que le projet ait des risques si jamais une ou deux personnes partent. Ça c'est
très important. J'espère que vous aurez appris des choses grâce à l'épisode de ce podcast,
moi je vous donne rendez-vous la semaine prochaine pour un prochain épisode et sinon je vous donne
rendez-vous sur code-garage.fr, code-garage vous le savez, c'est notre plateforme où on publie
évidemment tous les épisodes du podcast mais également tous les articles de blog, on a plus
de 400 articles de blog sur le site et puis tous nos cours sont accessibles directement avec un petit
abonnement de 19€, 99 par mois et vous avez accès à tout, au cours, aux exercices, aux quiz,
etc. et même aux certificats de réussite. Je vous donne rendez-vous la semaine prochaine, salut !

Les infos glanées

Je suis une fonctionnalité encore en dévelopement

Signaler une erreur

Code-Garage

Découvrons ensemble des sujets passionnants autour du métier de dev et de la programmation en général !
Tags
Card title

Lien du podcast

[{'term': 'Technology', 'label': None, 'scheme': 'http://www.itunes.com/'}]

Go somewhere