TOOLinux

Le journal du Libre

Software Delivery Management : comprendre cette nouvelle approche de gestion logicielle (1/3)

vendredi 10 avril 2020

Dans une série de trois tribunes, l’entreprise CloudBees a choisi d’aborder le sujet du Software Delivery Management (SDM). Le premier volet, signé Anders Wallgren, aborde le concept et revient sur l’évolution de la gestion logicielle pour en expliquer la logique et la réflexion.

Software Delivery Management : comprendre cette nouvelle approche de gestion logicielle

La capacité d’innovation et l’état d’esprit peuvent mettre du temps à évoluer dans certains domaines. C’est notamment le cas avec les réseaux sociaux, les télécommunications ou l’IoT.

La livraison de logiciels est un bon exemple de concept prêt à évoluer. La manière dont ceux-ci sont conçus, développés et distribués a en effet progressé, alors que les entreprises et la société en intègrent de plus en plus. Aujourd’hui, le processus de livraison de logiciels est beaucoup plus sophistiqué, et dispose de plus de ressources. Après des années passées à fractionner ses différents aspects, les utilisateurs réalisent désormais la manière dont ils peuvent plutôt se compléter.

Ce changement d’approche a récemment motivé la création d’un nouveau concept IT appelée "Software Delivery Management" (SDM). Celui-ci regroupe toutes les équipes, outils, sources d’information et processus liés à la livraison de logiciels. Ainsi, le but est de combler les lacunes apparues au fil du temps et de créer un processus davantage axé sur la valeur, en alignant l’ensemble des ressources sur des objectifs communs.

Le cheminement jusqu’au SDM

Pendant des décennies, on a divisé l’informatique en deux catégories de base : le matériel et les logiciels. Chacune était analysée en fonction de son rendement. Les experts suivaient alors le nombre d’ordinateurs que fabriquait les principaux équipementiers comme IBM ou Digital Equipment Corp, ou le nombre de disques logiciels que Microsoft produisait. A cette époque, chaque entreprise avait sa propre méthode pour commercialiser un produit. Les techniques de gestion comme le Total Quality Management (TQM) permettaient d’orienter ces processus, mais peu d’attention était accordée aux étapes spécifiques que les entreprises franchissaient.

Tout cela a changé à mesure que le logiciel lui-même a évolué. Internet, les smartphones et les systèmes d’exploitation plus polyvalents ont en effet ouvert l’accès au marché du logiciel au plus grand nombre. Les éditeurs - équipementiers et entreprises individuelles - ont alors consacré beaucoup de temps à perfectionner certains aspects du processus de livraison de logiciels. Ils ont créé des équipes pour rechercher, développer, concevoir, produire, intégrer, tester, commercialiser et vendre des applications logicielles. Pour ce faire, ces équipes utilisaient divers outils conçus pour accomplir des tâches spécifiques et mettaient en place des processus tels que l’intégration continue et le déploiement continu (CI/CD) pour aider à rationaliser les fonctions d’ingénierie.

Ce sont ces avancées qui ont amené l’industrie du logiciel là où elle en est aujourd’hui. Les entreprises peuvent désormais fournir des applications rapidement et les mettre à jour de manière régulière. Les équipes opérationnelles collaborent avec les développeurs, et les entreprises font de leur mieux pour anticiper les besoins des clients et mettre en place des mécanismes de contrôle qualité. Tout cela permet aujourd’hui au logiciel de réaliser ce que l’on n’aurait jamais cru possible.

Le dernier obstacle des silos

Mais le processus de livraison n’est pas encore optimal. Trop souvent, les différents composants et parties prenantes sont isolés les uns des autres. Les outils ne fonctionnent pas ensemble. Les équipes ne se parlent pas assez. Les informations sont stockées dans des silos qu’une partie de l’entreprise ne partage pas. Et les données qui sont partagées ne sont pas à jour.
De telles déconnexions ont pourtant des répercussions sur l’ensemble de l’entreprise. Les projets sont retardés. Les applications sont livrées avec des erreurs et/ou des vulnérabilités. Les développeurs se retrouvent surchargés de travail, reprenant des projets parce qu’ils n’avaient pas les informations nécessaires pour les mener à bien la première fois.

Ces défaillances ne peuvent pas vraiment être imputées à une équipe, un outil ou un projet particulier. Ils sont la faute du processus global lui-même. Une équipe de développement peut faire un excellent travail avec un outil de qualité et un projet bien conçu. Mais si le groupe en charge du développement du produit a fourni aux développeurs des informations obsolètes et qu’un outil de test ne s’intègre pas à une base de données de suivi, les problèmes sont alors inévitables.

Ce qu’il faut alors, c’est une nouvelle approche qui pense la livraison des logiciels d’un point de vue global. C’est exactement ce type de connexions que fournit le Software Delivery Management (SDM). Ce concept définit un ensemble de piliers permettant d’unifier les données, les connaissances, les processus et les fonctions - en réunissant les différentes parties prenantes autour d’un ensemble d’objectifs communs.

- Anders Wallgren, VP Technology Strategy, CloudBees.