Logiciels : la démocratisation du développement à l'échelle de l'entreprise

Le développement de logiciels est de plus en plus accessible aux non-ingénieurs grâce à des concepts simplifiés tels que le low-code et le no-code, ce qui marque le début de l'ère de la démocratisation de ce concept. Les personnes impliquées dans la conception évoluent également, puisqu'aujourd'hui toute personne disposant d'une connexion Internet peut créer une application, même sans connaissances en programmation.

Mais qu'est cela signifie pour les entreprises ? Comment la démocratisation du développement tend-elle à évoluer lorsqu'il s'agit de générer et de fournir davantage de valeur métier ? Et comment cela se traduit-il au niveau de l'entreprise ?

Ce sont ces questions que nous allons aborder dans cet article. Mais avant de commencer, précisons ce qu'est vraiment cette notion, et ce qu'elle n'est pas.

Démystifier le développement logiciels

Il convient d'abord de mettre fin à quelques idées préconçues. Les codeurs ne vont pas automatiquement disparaître et les non-codeurs ne se transformeront pas du jour au lendemain en experts desquels, d'ailleurs, nous n'attendrons pas l'écriture de lignes de code.  Les professionnels confirmés ne seront pas non plus obligés de passer à des outils plus abstraits comme le low-code/no-code. Compte tenu de la nécessité croissante de sécuriser la chaîne d'approvisionnement des logiciels et de veiller à ce que tous les aspects de la livraison soient contrôlables et conformes, il est beaucoup plus probable que les développements logiciels traditionnels et à code réduit/no-code coexistent, chacun contribuant à la fluidité des pipelines de livraison à son niveau.

Ce qui change réellement est de savoir qui est impliqué dans la définition, la création et la livraison de la valeur. À mesure que le logiciel devient le moteur de la création de valeur au sein d'une entreprise (nous y reviendrons plus tard), de plus en plus de personnes vont être impliquées dans le processus de développement. Ce n'est donc plus seulement le domaine des ingénieurs.

Appréhender les changements organisationnels

Ce n'est pas seulement le pipeline qui se transforme. Les entreprises doivent repenser leurs choix quant à ce qu'elles vont fournir, à la manière de hiérarchiser leurs prestations, à ce qu'elles attendent en retour, à la responsabilité de chacun, etc. Elles doivent également déterminer comment optimiser les ressources dans une situation en constante évolution, et comment se conformer à des réglementations et à des normes à fort enjeu. Toutes ces considérations doivent être remaniées et réorganisées à mesure que les processus de développement convergent et évoluent.

Optimiser la création de valeur

Un adage dit que l'informatique ne comprend pas l'entreprise dans laquelle elle évolue, et que l'entreprise ne comprend pas ce que fait l'informatique. C'est probablement encore le cas dans de nombreux endroits, mais les choses changent. Les entreprises tendent à collaborer davantage au processus de développement logiciel, les capacités de livraison faisant désormais partie intégrante des critères de réussite. Et tous travaillent désormais ensemble. Mais comment optimiser cette collaboration ?

Les entreprises ont besoin d'un moyen de communiquer leurs priorités et leurs indicateurs clés pour aider chacun à comprendre comment il contribue au processus, afin qu'ils puissent s'aligner et prendre des décisions ensemble. De mon point de vue, cet outil manquant est le Value Stream Management.

Celui-ci permet de suivre le flux de valeur dans une entreprise. Il oblige les techniciens et les responsables commerciaux à se réunir et à se mettre d'accord sur la signification des éléments et sur ce qui est important. Les outils et techniques de Value Stream Management aident les techniciens à traduire leur travail en concepts que les équipes peuvent comprendre et utiliser. À l'inverse, ils aident également les entreprises à faire part de leurs préoccupations aux techniciens.

Il existe actuellement un certain nombre d'outils sur le marché, conçus pour donner aux entreprises une visibilité optimale sur la technologie. Et ceci représente la première étape : l'entreprise dispose de la visibilité et des analyses nécessaires pour prendre des décisions. La suivante consiste à mettre en place le contrôle et l'automatisation nécessaires à l'exécution de ces décisions.  Cela ouvrira la porte à une participation plus active des entreprises au développement des logiciels, en tant que véritables égaux dans le processus. Différents services et utilisateurs sont alors habilités à contribuer à la conception de logiciels, et donc à générer davantage de valeur métier.  

Et par essence, c'est ce qu'est le Value Stream Management : la démocratisation de la valeur métier dans un monde axé sur les logiciels. Elle permet aux entreprises de s'impliquer directement dans ce qu'elles produisent - et comme les logiciels sont si étroitement liés à la valeur métier, il est essentiel que chacun ait son mot à dire. La démocratisation du développement dans l'entreprise contribue à établir les bases du Value Stream Management, l'effort le plus prometteur que j'ai vu pour rassembler les métiers et l’IT autour d'un objectif commun.