DevOps et gestion du portefeuille applicatif, quelles synergies ?

[Exclusif] Le DevOps se définit comme l’absence de cloisons entre les équipes de « Dev », chargées de faire le système d’information et celles des « Ops » qui s’occupent d’exploiter les applications existantes au sein d’une même équipe. Tendance forte de ces deux dernières années, elle permet surtout aux équipes d’accélérer les délais de livraison et ainsi améliorer la compétitivité des entreprises.

Alain-Gabriel Gomane, Senior Product Marketing Manager de MEGA International

Alain-Gabriel Gomane, Senior Product Marketing Manager de MEGA International

Selon une étude IDC/Automic réalisée en 2016, 46% des entreprises françaises sont sensibilisées au DevOps et 29% l’ont déjà adopté (contre 25% en 2015). Pour elles, le DevOps est une solution aux enjeux auxquels elles font face et présente de nombreux bénéfices sont tels que : le Time to Market, la qualité des développements logiciels, etc.  

Pour accélérer leurs processus de développements applicatifs, les entreprises ont mis en place des méthodes agiles. Elles sont même 36% à considérer les méthodes agiles comme le principal critère de la mise en œuvre d’une stratégie DevOps.

Pour développer les programmes de transformation numérique, DevOps et la démarche agile permettent donc de réduire le temps de mise sur le marché grâce à des développements itératifs et à une livraison continue. Malheureusement, les développements agiles ne sont pas toujours suffisamment architecturés et ajoutent de la complexité dans un paysage applicatif qui l’est déjà. Un manque de visibilité dans le portefeuille applicatif empêche aussi les entreprises de mettre en œuvre de nouveaux projets agiles.

Rationalisation du portefeuille applicatif et agilité

devops On considère souvent que la rationalisation des applications ainsi que l’architecture ne sont pas nécessaires car le produit évolue constamment avec l’équipe DevOps. Le problème dans ce cas est que les équipes DevOps risquent de développer des applications qui sont mal architecturées tout en augmentant la dette technique d’une partie du projet à une autre.

De plus, il existe une grande différence entre les entreprises web-native et les grandes entreprises. Les entreprises web-native ont l’agilité de leur courte existence, et dans la plupart des cas, les développeurs travaillent sur la même plateforme dans le cloud. D’un autre côté, les grandes entreprises doivent gérer un nombre croissant d’applications redondantes provenant la plupart du temps de fusions et acquisitions mais aussi d’une croissance difficilement gérée, entrainant une complexité supplémentaire et un manque de flexibilité. Ces entreprises sont submergées par des milliers d’applications utilisées dans différentes entités, produits ou services et qui reposent sur une multitude de technologies. L’implémentation de programmes DevOps et la mise en place d’équipe de développeurs qui partagent le même niveau d’information sont donc plus difficiles à mettre en œuvre.

Dans ces situations, combiner une démarche agile avec une approche de gestion de portefeuille applicatif permet aux départements informatiques de cartographier, rationaliser et transformer les applications tout en offrant une meilleure visibilité sur le portefeuille d’applications.

Réaliser l’inventaire des ressources IT

Lors de cette étape, il s’agit de faire l’inventaire du paysage applicatif en utilisant des critères pertinents pour l’entreprise. La manière dont les applications supportent les activités métier en termes de processus métier, de capacités métier ou de fonctionnalités nécessite une attention particulière dans cette phase d’inventaire. Il est également nécessaire de répertorier toutes les technologies incluses dans les applications pour mieux anticiper et gérer l’obsolescence de celles-ci.

Rationaliser le portefeuille IT en l’évaluant selon différents critères

La deuxième étape consiste à évaluer les applications selon différents critères, comme le coût, la valeur métier ou le risque. L’objectif ici est de définir les ressources à tolérer, migrer, éliminer ou celles sur lesquelles investir. Comprendre les cycles de vie des applications facilite également la planification des changements du portefeuille applicatif. Par exemple, s’il est prévu qu’une application soit retirée, les entreprises peuvent identifier les dépendances et l’impact sur les métiers et ainsi coordonner son remplacement.

Créer et comparer plusieurs scénarios de transformation IT

Définir des scénarios de transformation fondés sur un ensemble de projets ou initiatives est la dernière étape. L’utilisation de différents critères de comparaison, tels que le risque sur la qualité, le risque de faisabilité ou les coûts, permet aux entreprises de choisir et mettre en œuvre le scénario de transformation adapté, et créer selon les besoins métiers.

Si DevOps et les méthodes agiles permettent aux entreprises de réduire le temps de mise sur le marché, cela ne doit pas se faire au détriment de la qualité du développement logiciel. En adoptant une approche de gestion de portefeuille applicatif, les entreprises peuvent architecturer les projets DevOps et améliorer la qualité et la fiabilité globales. Elles sont également en mesure de réaligner les projets de transformation digitale avec les objectifs métiers grâce aux cartes capacitaires qui relie la stratégie de l’entreprise directement à la planification du portefeuille applicatif. La rationalisation du portefeuille applicatif permet en outre de réduire les coûts tout en gérant l’obsolescence.

A lire également sur Experiences.alliancy :