Le DevOps est la suite logique de la démarche Agile avec les exploitants, cette nouvelle approche prônant la responsabilisation des développeurs sur leurs applications. Les équipes de développement et de déploiement doivent s’appuyer sur cette approche pour développer des applications qui s’auto-testent ou s’auto-déploient sur les infrastructures.

Par Boris Agbodjan, directeur
et Khalid Kezzou, consultant confirmé, TNP Consultants

Si les applications développées sur le cloud sont nativement DevOps, les infrastructures et les architectures traditionnelles doivent être virtualisées (VMware…) ou modernisées (micro-services…) au préalable pour que leurs applications puissent utiliser une usine logicielle.

AUTOMATISER, POUR CRÉER DE LA VALEUR EN AGILE

Par sa nature itérative, l’Agile crée une inflation de tâches de test, d’intégration et de déploiement applicatif. Sans automatisation, à mesure que l’application se complexifie, ces tâches absorbent de plus en plus la charge disponible de l’équipe.
De plus, comme elles doivent être déroulées dans un délai contraint (deux à trois semaines), une exécution manuelle augmente le risque de non-qualité, par exemple en limitant le périmètre des tests de non-régression.

Cette non-qualité va détourner l’équipe de la production de valeur. Ceci induit que la pérennité de la méthode Agile, en tant que levier de production de valeur pour les utilisateurs, impose une stratégie d’automatisation au service des besoins des équipes Agile. On constate néanmoins un retard dans cette automatisation au sein des DSI.

PRENDRE LA MESURE DES FREINS

Le premier frein est culturel et organisationnel.

D’une part, la présence forte des développements d’applications en cycle en V avec peu de déploiements rendent le ROI de l’automatisation souvent inacceptable. Par conséquent, les managers ne réalisent pas les investissements nécessaires pour la mettre en place.
D’autre part, dans de nombreuses organisations, la prégnance de la culture des silos et de prés carrés engendre une situation où les individus freinent les travaux d’automatisation par crainte de perdre des responsabilités ou des budgets. La sous-traitance des projets IT et applications (forfaits, centre de services, infogérance…) accentue cette notion de silos en mettant des frontières contraignantes entre équipes du prestataire et acteurs internes et en limitant les investissements dans une chaîne DevOps de bout-en-bout qui remet en cause le partage des responsabilités.

Le second frein est lié à l’incompatibilité des architectures applicatives existantes avec les technologies et outils d’automatisation. Par conséquent, le portage de ces applications sur une chaîne DevOps requiert un effort considérable, comme par exemple une migration de la base de données sur VMware, sans garantie de gain. Enfin, la tension sur les compétences maîtrisant les outils DevOps ou SecOps retarde le recrutement par les DSI de tels profils qui privilégient les GAFAM, ESN ou start-up aux entreprises traditionnelles.

ACTIONNER LES BONS LEVIERS

Comme nous le rappelons fréquemment à nos clients, DevOps c’est « 30 % d’outils et 70 % de culture ».

Sur le plan technique, le premier levier à actionner concerne les compétences. Il consiste par exemple à mettre en place un centre de compétence DevOps qui regroupe les expertises DevOps de l’entreprise. Ce centre de compétence (ou « Chapter » agile, selon le modèle Spotify) aura pour mission de diffuser la culture DevOps, de former et capitaliser l’expertise technique sur l’usine logicielle développée par la DSI, mais aussi d’accompagner les équipes projets dans l’acquisition des nouvelles compétences d’automatisation pour maîtriser le déploiement continu.
L’objectif du centre étant d’éviter les implémentations DevOps en « best effort » par des équipes sans expérience, générant des d’échecs.

Le second levier est de convaincre le management de la pertinence et du ROI de l’automatisation DevOps. Ceci ne pourra se faire qu’après avoir obtenu des résultats tangibles sur des pilotes pour lesquels des REX ont été réalisés pour le calcul du ROI.

TRAVAILLER AVEC LA DRH

Sur le plan culturel, la mise en place du DevOps requiert de changer les comportements. La DRH doit donc s’impliquer avec la DSI sur la transformation Agile DevOps pour changer les postures managériales des chefs de projets IT, revoir les modes de rémunération et de promotion, les modèles d’évaluation, en y incluant les soft skills.
Le DSI doit repenser son organisation intégrée Dev et Ops par filières applicatives, responsables de bout en bout auprès des métiers.
Cette transformation s’appuie aussi sur les centres de compétences, DevOps mais aussi en architecture, data, cyber et cloud, permettant de diffuser les nouvelles pratiques entre les filières, de développer l’interopérabilité, la sécurité et la performance recherchées par la nouvelle DSI du numérique.

En conclusion, si la transformation numérique de l’entreprise génère un besoin d’agilité à l’échelle pour être plus réactive et s’adapter plus vite, il est nécessaire pour le DSI de penser une véritable stratégie d’automatisation de ses chaînes de développement et de déploiement pour passer à l’échelle.