Diagrammes et Modèles 1
Systems #1
[models, systems]
— Bilan des courses, on est au sprint 15 et les choses ne vont pas mieux. Je dirais que par rapport au début de l’année on a 4 fois plus de bugs. 4 fois plus !
— …
— Si seulement on pouvait dénicher de meilleurs développeurs !
— …
— Non, ce n’est pas ce que je voulais dire. Mais ça me stresse, aussi, je suis inquiet. J’ai besoin de résultats. Dans cette maison on n’est pas en sécurité si on ne montre pas des résultats.
— …
… Mais je sais bien que plus on s’occuppe tôt des défauts, moins on en a. Mais comment veux-tu convaincre les équipes ? C’est pas si évident.
— …
— …prévenir que guérir, je sais !
— …
— Ce que je pense faire ? Pour l’instant recruter 2 développeurs de plus…
— …
— Notre quoi ?
— …
— Oui, on pourrait aussi améliorer notre stratégie de prévention. La question c’est : par où commencer ?
— …
— Oui, tu as raison. Le mieux serait que tu passes.
☎️
— Ces défauts, d’où est-ce qu’il viennent ?
— Tu en as de bonnes. Si j’avais la réponse à cette question, je n’aurais pas de problème de défauts.
— Euh, oui. C’est pas faux. Comment est-ce que vous découvrez qu’il y a un défaut dans le code ?
— Quand on reçoit un rapport d’incident.
— À ton avis, qu’est-ce qui contribue à l’apparition de défauts ?
— C’est facile : il suffit que les développeurs touchent au code !
— …
— Non, je plaisante, bien sûr. C’est un peu du cynisme de ma part…
— Je ne trouve pas ça cynique. Il faut bien qu’il y ait eu un changement dans le code pour qu’un défaut apparaisse là où il n’y en avait pas auparavant. On pourrait même dire que statistiquement parlant, pour un grand nombre de modifications du code, on aura proportionnellement un certain nombre de défauts insérés.
— Pas sûr, ça dépend qui intervient…
— Attends : c’est bien du code écrit et conçu par des humains ?
— Oui.
— Donc c’est sûr, il y aura des défauts introduits lors de changement dans le code.
— On peut le voir comme ça.
— Et quand ton équipe reçoit des rapports d’incident, qu’est-ce qu’elle fait ?
— Elle corrige au plus vite, évidemment.
— Je vois.
— Il te faut plus d’informations, j’imagine.
— Pour l’instant je vais noter ce qu’on a. Ça nous fera un modèle de départ.
— Un modèle ?
— Disons une espèce de vision en réduction de ton système.
— Tu n’aurais pas une solution, plutôt ?
— Ça va nous aider à y voir plus clair.
2 variables, reflétant 2 agrégats :
le nombre de CHANGEMENTS effectués sur la conception
le nombre de rapports d’INCIDENTS
1 relation d’influence réciproque :
- Plus on fait de changements plus il y a d’incidents (même si chaque changement ne produit pas un incident). Cette influence se produit avec un délai, un incident n’apparaissant pas immédiatement dès qu’il y a changement.
CHANGEMENTS —|D|→ INCIDENTS
- Plus il y a d’incidents, plus on va changer le code (même si chaque incident ne génère pas un changement).
INCIDENTS —→ CHANGEMENTS
stay tuned!