:: – Article proposé par François MOMAL, Consultant en Lean Six Sigma – ::
J’ai découvert les modèles de performance il y a quelques années alors que je travaillais dans l’ingénierie de gros systèmes à forte composante logicielle. Un modèle de performance est une fonction de transfert ( Y = F(X) ) qui permet d’évaluer un coût en sortie en fonction d’un certain nombre de paramètres en entrée. Ces paramètres d’entrée sont appelés les « paramètres dimensionnants ».
Par exemple on peut disposer d’un modèle de performance pour évaluer à priori le temps de correction d’un bug logiciel découvert en phase de test en fonction d’un certain nombre de caractéristiques du bug (son degré de sévérité, la phase du cycle de vie où le bug a été découvert…).
On peut aussi évaluer à priori le temps que prendra un audit CMMI d’une organisation en fonction du nombre de projets audités, du niveau de maturité audité, du nombre de Process Areas du modèle CMMI auditées…
On peut aussi évaluer le temps que prendra une séance d’inspection de code en fonction d’un certain nombre d’entrées (nombre de personnes inspectant le code, taille du code inspecté…).
Historiquement le Génie Logiciel a été très moteur dans l’utilisation de métriques et de modèles.
D’un point de vue pratique Minitab fait cela très bien. L’idée est d’identifier un modèle qui puisse expliquer « au mieux » les relations entre mes paramètres dimensionnants et la sortie à évaluer. Tous les paramètres ne sont pas « dimensionnants ». C’est le modèle qui va nous permettre de les identifier.
Ces modèles de performance sont très utiles pour faire un devis à priori et donc pour évaluer un coût, un délai. On voit bien que l’on est ici dans du pilotage proactif d’une activité (et non réactif où l’on a que ses yeux pour pleurer en cas de dépassement de budget, délai).
Pouvoir bâtir de tels modèles de performance suppose :
- L’existence d’un historique de données sur les incidents en question
- La fiabilité de cet historique
- Une culture de la mesure au sein de l’organisation qui fait que les gens ont systématiquement le reflexe d’enregistrer et documenter ces incidents
Ces prerequis n’ont rien d’évident. On retrouve ici les différents niveaux de maturité du modèle CMMI tels que je les présentais dans un précédent article.
Piloter son activité avec des modèles de performance correspond aux niveaux de maturité 4 et 5 du modèle CMMI, ce que l’on peut appeler le « management quantitatif » (et non au feeling ou doigt mouillé). Mais avant de pouvoir utiliser ces modèles de performance aux niveaux 4 et 5, il faut avoir mis en place un système de captation des données et d’analyse. C’est la Process Area MA (Measurement & Analysis) qui est une PA de type Support de niveau 2 du modèle ! Une maison se construit brique par brique et avant de donner dans l’optimisation quantitative de l’activité, il faut s’assurer que les briques de mesure sont bien là et fiables.
Ce sont les données enregistrées dans ces systèmes de mesure qui permettront de bâtir des modèles de performances ! D’où l’importance de penser des le départ à la fiabilité de mes données enregistrées. Dans le cas d’enregistrement de bugs dans une base dédiée on pourra développer une interface avec des « Poka Yoke » pour s’assurer que les paramètres dimensionnants du bug ont bien été enregistrés, dans la bonne unité…Dans ce type d’interface de saisie il importe de s’assurer que la sémantique du champ enregistré est bien connue et partagée par tous (ne pas confondre par exemple la taille de l’échantillon logiciel inspecté avec la taille du logiciel global d’où est extrait l’échantillon à inspecter). Il en va bien sur de la fiabilité des modèles de performance qui seront calculés.
Je vous parle ici de modèles de performance dans le domaine logiciel, mais en partageant récemment avec un manager d’un grand constructeur automobile, je me suis aperçu que c’était tout à fait transposable par exemple à la gestion des anomalies en production sur une chaîne de montage de voitures. Combien va coûter le traitement de telle ou telle anomalie constatée (défaut de peinture,…) ?
Pour conclure je dirais que nos entreprises reposent sur des tas d’or que sont les données de toutes sortes de l’entreprise. Mais les utiliser pour piloter son business avec, par exemple, des modèles de performance est un autre défi ! Allez encore un petit effort.