Dans un écosystème ultra-compétitif, complexe, et incertain, les organisations doivent pouvoir s’adapter en continu pour survivre. Un domaine où les “4 keys metrics” d’Accelerate sont bien des mesures pertinentes pour évaluer la performance logicielle.
Néanmoins, la vitesse d’adaptation des entreprises dépend également de la capacité à (i) répondre positivement à des stimulis imprévus et (ii) à l’efficience d’utilisation de ressources de plus en plus rares, tant internes qu’externes (clients, collaborateurs, budget).
La mesure de la performance logicielle nécessite donc une perspective plus globale prenant en compte la dimension systémique de production logiciel. Cette approche requiert de mesurer la création de valeur, l’environnement de travail et l’efficience du système.
La performance logicielle systémique
L’approche systémique de production logicielle repose sur la pensée en système (i.e. system-thinking), la dynamique organisationnelle, et la sociologie considérant les acteurs de production logicielle au centre d’un écosystème dynamique et interdépendant.
Cette approche considère les différents éléments composants du système de production logicielle en décrivant le triptyque de “Process, People, Technology” au travers des 5 domaines de MAMOS : Methods, Architecture, Management, Organization, Skills.
Ces 5 domaines servent de base à la définition de 50 capacités de production logicielle qui permettent de développer d’un système de plus en plus résistant aux stimulis et efficient dans l’utilisation des ressources, et ayant pour conséquence une adaptation continue.
Meilleure est la performance du système, meilleure sera la capacité d’adaptation de l’entreprise à se réinventer pour être en avance face à ses concurrents, trop occupés à résoudre les impacts de derniers stimulis sous une montagne d’inefficience.
L’évaluation du système de production logicielle
Un système de production logiciel MAMOS est en premier lieu évalué sur 4 niveaux de maturité allant de “fragile” à “antifragile” présentant une amélioration de la réponse aux stimulus extérieurs allant de la casse, résistance, adaptation, jusqu’à l’innovation.
On retrouve 5 grandes catégories de métriques d’évaluation :
- L’entreprise avec croissance dans le marché et NPS client
- L’organisation axé sur les revenus par employé et le NPS interne
- Les flux de livraison de changements et de réaction à incidents
- La fiabilité avec le variance entre le prévu et le réalisé et le taux d’échec
- L’effficience sur l’allocation des ressources et le ratio d’automatisation.
Ce niveau de maturité permet à l’entreprise d’avoir une vue globale de la performance de son système de production logicielle afin d’orienter les actions d’améliorations dans les domaines étant le plus en souffrance.
L’entreprise
Les organisations performantes sur cet axe arrivent à tirer parti des moyens digitaux et technologiques pour créer de la valeur pour l’entreprise et ses clients, en étant force de proposition et réactifs en temps réel quant aux attentes des clients.
D’un côté, leur système de production logicielle leur permet de développer de nouvelles offres sur le marché en captant de la valeur plus rapidement face à ses concurrents tout en bénéficiant des effets de réseaux ayant un impact exponentiel sur la croissance.
D’un autre, le logiciel leur permet de maximiser la satisfaction de l’expérience client tout au long de ses interactions avec l’entreprise, de la prise de conscience à la prise d’achat, sans oublier la résolutions de problématiques, souvent pénalisantes quand négliger.
Un exemple est celui d’Uber ayant réussi à développer une plateforme globale alliant une croissance leader dans son marché encore à plus de 10% en 2023, un NPS client à 26, et développe des offres comme UberEats (NPS encore à -11).
L’organisation
Bien que la croissance dans le marché et les clients soient nécessaires au fonctionnement d’une entreprise, ils ne représentent pas le contexte dans lequel les collaborateurs sont amenés à collaborer et se développer, ni les gains réels que le logiciel peut apporter.
La satisfaction des collaborateurs au travers du NPS interne est l’indicateur représentatif de l’environnement de travail. Dans un marché où 30% des positions restent vacances avec un taux de turnover à plus de 25%, l’investissement dans le capital humain est prioritaire.
La performance des collaborateurs doit également être mesurée par leur capacité à créer une valeur exponentielle par le logiciel. La mesure du revenu généré par employé vient compléter le NPS client par une perspective de productivité digitale.
Zoom se positionne à un niveau 3 “Mastering” avec 3-4% de croissance, un NPS interne allant de 30-55 (avec 66% de recommandations positives) et un revenu par employé optimal à $300,000 par an, comme d’autres entreprises telles que Samsara ou Expensify.
Les flux de livraison
La capacité d’une organisation à rapidement délivrer des changements métiers supportés par du logiciel et à résoudre des incidents sont deux indicateurs forts de la recherche Accelerate, et démontrer la bonne collaboration au-delà des silos des équipes.
La première mesure retenue de délai de changement métier représente la bonne fluidité d’intéractions entre des acteurs aux profils différents, nécessaires à la production d’incrément logiciel complexes á maîtriser par leur nature abstraite et peu prévisible.
Au-dessus de métriques sous-jacentes comme la fréquence de déploiement ou le délai de détection, la performance systémique de réactivité des flux est traduite au plus haut niveau par le temps moyen de réparation, ou mean-time-to-repair.
Par exemple, l’amélioration du flux de livraison et de réaction chez un acteur du retail pour des déploiement à la demande et moins d’une heure de résolution a nécessité des améliorations structurelles et bout-en-bout pour son système de production logiciel.
La fiabilité
Les indicateurs de fiabilité permettent de prendre du recul sur les différentes itérations logicielles qui peuvent être individuellement rapide mais générer une dette technique ou taux de rework élevés, fortement pénalisant pour des entreprises en réinvention.
Le taux de variance entre le prévu et le réalisé permet de mesurer la capacité de bonne planification sur un horizon temporel recommandé de 3 mois focalisé sur les grandes thématiques transverses et locales, évitant de créer des couplages et temps d’attente.
Le taux d’échec ou Change Fail Rate (CFR) vient lui mesurer la capacité á bien délivrer par une maîtrise des flux amonts d’alignement et de conception, et de ceux de livraison permettant de détecter au plus tôt les pannes, limitant drastiquement les coûts de rework.
Les organisations au système antifragile ont par exemple un taux de variance inférieur à 5% leur permettant de focaliser leurs efforts avec le minimum de gaspillages pour un maximum d’impacts, ceci passant également par une bonne efficience organisationnelle.
L’efficience
Dans la plupart des éditeurs de logiciels, la valeur du temps humain est 20 à 100 fois supérieure à la valeur du temps machine. Et un effort évité est autant de temps et des ressources gagnées pour faire une tâche à plus forte valeur ajoutée.
Il convient donc de mesurer l’efficience par un taux d’affectation des ressources idéalement à 50% maximum afin de livrer au plus vite les sujets identifiés, gardant une capacité de traitement direct d’ améliorations ou de travail imprévu qui aura souvent tendance à surgir.
Le taux d’automatisation vient compléter la mesure de l’efficience en assurant que les tâches adéquates aux machines leur soit alloué sur l’ensemble du cycle de production logiciel et pas uniquement aux tests ou au déploiement.
L’impact concret d’une personne allouée à 100% par semaine se traduit directement par l’ incapacité d’inclure des améliorations peu coûteuses à faire directement, la non-réponse ou accumulation de travail pour de nouvelles demandes, et un burn-out à moyen-terme.
L’approche systémique de production logicielle
Les entreprises performantes d’aujourd’hui et de demain sont celles qui auront investi dans le développement d’un système de production logicielle antifragile leur permettant de rapidement s’adapter et grandir dans leur marché.
Le passage d’un système de production logiciel d’un niveau fragile à antifragile nécessité de passer les différents niveaux de maturité pour pouvoir répondre de plus en plus efficacement aux stimulis extérieurs par de l’innovation au plus haut niveau.
Pour y arriver, la méthodologie AAA (Assess Architect, Accelerate) a été consolidée au travers de différentes transformations d’entreprises permettant de développer les 50 capacités de MAMOS en optimisant les investissements utilisant analyse systémique et effets levier.
Préparez-vous dès aujourd’hui à développer votre système de production logiciel MAMOS avec une évaluation de votre niveau de maturité, puis une évaluation de vos capacités de production pour répondre à des problématiques et métriques concrètes de votre contexte.
Démarrer avec MAMOS.
References
Google Cloud. 2023. State of Devops Report, Google.
Tim Stobierski. 2022. What are network effects? Harvard Business School Online.
Uber Technologies Revenue 2017-2023, Macrotrends.
UberEats NPS, Comparably.
Zoom Video Communications Revenue 2019-2023, Macrotrends.
Zoom Video Communications Happiness Score, Comparably.
Jason Lemkin, Dear SaaStr: How Many Employees Does a SaaS Company Have at 100M ARR? SaaSTr.
Taleb, Nassim Nicholas. 2013. Antifragile. Harlow, England: Penguin Books.
Gergely Orosz. 2022. Measuring Engineering Efficiency at LinkedIn. The Pragmatic Engineer.
CNCF Case Studies. 2022. How La Redoute leverages Kubernetes to accelerate deployment of cloud native microservices, CNCF.