Blog | WeScale

L’automatisation au-delà de la CI/CD : un avantage concurrentiel

Rédigé par Pablo Lopez | 01/06/2021

Si vous ne savez pas ce qu’est l’automatisation, si vous doutez de sa mise en œuvre au sein de votre DSI, si vous n’en tirez pas tous les bénéfices attendus, cet article est pour vous.

Ces pratiques nées des GAFA sont déjà largement adoptées par les Digital Natives, et probablement par certains de vos concurrents directs.

Automatiser ou stagner et mourir à petit feu ?

La crise sanitaire actuelle n’a fait qu’exacerber une problématique de plus en plus prégnante : pour capter des utilisateurs de plus en plus versatiles, et répondre à un marché et des normes évoluant rapidement, les outils numériques de l’entreprise doivent pouvoir évoluer à un rythme soutenu. Pour s’inscrire pleinement dans l’actualité, il suffit de citer les transporteurs qui ont dû s’adapter et modifier leurs conditions générales de vente sur l'ensemble de leurs systèmes, ou les banques, qui ont dû proposer de nouveaux produits pour soutenir le tissu économique, et ce, en quelques semaines.

Les concepts exposés dans cet article ne sont pas nouveaux : l’automatisation est l’un des fers de lance des méthodologies agiles et DevOps. Mais on a parfois tendance à trop vite la réduire au seul périmètre des équipes de développement via l’intégration continue.

En effet, l’impermanence naturelle des plateformes logicielles, impulsée par des équipes métier toujours plus exigeantes sur leur Time To Market, met en tension l’ensemble des acteurs de la DSI :

  • Les développeurs, pour qui les demandes d’évolutions sont toujours plus pressantes
  • Les architectes, qui doivent constamment innover et s’approprier les innovations externes pour en tirer le meilleur
  • Les équipes de production, qui voient leurs plateformes évoluer quotidiennement
  • Les équipes de sécurité, qui n’ont plus autant de temps que par le passé pour qualifier les produits, alors que la créativité des pirates est  sans limite.

Face à cette pression, il n’y a que deux alternatives : résister, au risque de perdre de précieuses parts de marché, ou s'adapter, en automatisant au maximum. C’est d’ailleurs l’un des piliers de C.A.L.M.S mis en avant par la culture DevOps.

C’est bien sûr le second chemin que de nombreuses entreprises ont choisi, et il est bien rare aujourd’hui de ne pas trouver un processus d’intégration continue au sein de l’entreprise.

L’intégration continue seule n’est pas suffisante

Il est courant, que le processus ne porte pas ses fruits, et que les difficultés à gagner en Time To Market ne changent pas.

Pourquoi ce blocage ? Bien souvent, les processus d’intégration continue sont pensés uniquement pour les équipes de développement. Mais, c’est toute la DSI qui doit être embarquée dans ce mouvement, au risque de voir des étapes trop “manuelles” gripper l’ensemble de la mécanique. Par exemple, si chaque package applicatif doit passer une longue campagne de tests non automatisés, l’ensemble de la DSI avancera au rythme de ce goulet d’étranglement.

L’intégration continue ne représente qu’une partie du chemin, et la livraison continue, vers le déploiement continu sont en 2021 une prolongation nécessaire de ces pipelines. Construire et tester les logiciels ne suffit plus, il faut être en capacité de les déployer en production, pour ne pas s'arrêter au milieu du gué.

L’approche everything-as-code s’impose

Afin de minimiser les étapes manuelles, l’ensemble des actions de mise en production doit être pensé sous forme de code. Cette méthodologie *-as-code touche dorénavant tous les métiers :

  • la production avec infrastructure et configuration as-code
  • le test et la QA, avec des déploiements as-code et l’automatisation des tests
  • même la sécurité bascule en as-code par la description de règles de conformités sous forme de fichiers versionnés et de scripts de vérification

Transformez votre SI en profondeur

Vous l’aurez compris, le chantier autour des pipelines est conséquent et repose sur un outillage complexe à maîtriser. Mais il serait réducteur de ne voir l’automatisation que sous cet angle : la réussite d’un chantier d’automatisation (et la réduction de TTM afférente) repose sur bien d’autres aspects :

  • L’architecture doit être pensée, ou redécoupée, pour permettre le déploiement rapide et fréquent de petits modules.
  • Les données ne doivent pas être monolithiques (par exemple regroupées en une seule base) et créer un un couplage de facto qui nécessiterait de synchroniser plusieurs projets et donc de regrouper les déploiements.
  • Les différentes branches de la DSI doivent être embarquées dans les processus, pour que l’ensemble de la chaîne soit automatisé. Infrastructure as code, sécurité et qualification doivent faire partie intégrante des pipelines.
  • L’organisation dans son ensemble doit être tournée vers plus d'autonomie dans les prises de décisions, pour limiter les aller-retours inutiles et consommateurs de temps. Tout doit être mis en œuvre pour remplacer les tâches manuelles à faible valeur ajoutée.

L’automatisation à tous les niveaux du SI n’impacte pas que le TTM. Elle permet d’accélérer les contrôles, d’en mesurer l’efficacité pour pouvoir les améliorer. C’est aussi un moyen de suivre des KPIs fiables sur l’ensemble de l’outil de production. Vous pouvez livrer plus vite, mais aussi améliorer les contrôles de qualité, de sécurité et de fiabilité. Cette mouvance vient fournir un cadre viable à une dynamique d’amélioration continue. C’est pour nous la clé qui permet de transformer l’épreuve de la mise en production en un non-évènement quasi-quotidien.

Si vous n’avez pas de visibilité sur ces sujets, ou si vous voulez simplement savoir où vous en êtes et obtenir des conseils personnalisés, n’hésitez pas à nous contacter.