Développeurs

L’importance d’une culture DevOps au sein d’une entreprise

Share this post:

DevOps ne concerne pas uniquement les phases d’intégration et de déploiement d’application et l’automatisation de celles-ci mais tout le cycle de vie d’une application.

 

DevOps ? Kezako ? Pourquoi ?

Historiquement, les équipes de développement et opérations étaient organisées en silo, chacune travaillant uniquement sur leur scope avec une communication limitée. Avec l’arrivée de la méthodologie Agile, et la notion de sprint afin de pouvoir accélérer le time to market, ce fonctionnement a atteint ses limites. C’est ainsi que la culture DevOps est apparue.

Le terme DevOps provient de la contraction de Developer & Operation et a pour but de rapprocher ces équipes afin d’industrialiser tous les processus utilisés lors d’un projet informatique. Depuis plusieurs années, la plupart des entreprises migrent vers la mise en place de cette culture.

Le schéma ci-dessous rappelle toutes les composantes de DevOps :

 

 

On peut voir qu’il s’agit d’un cycle continu qui adresse toutes les étapes majeures à traiter pour le cycle de vie d’une application.

Des informations complémentaires peuvent être trouver dans l’article « Accélere la transformation digitale via DevOps » (https://www.ibm.com/blogs/ibm-france/2022/01/26/accelerer-la-transformation-digitale-via-devops/)

 

Culture

Néanmoins, nous avons pu observer, chez différents clients, que la mise en place de ce cycle passe par un focus sur les étapes de « build » (construction) et « deploy » (déploiement) alors que ce n’est qu’une partie de l’histoire. Il ne suffit pas de mettre en place quelques ingénieurs dits « DevOps » pour faire du DevOps. Cela passe par la transformation de son organisation et notamment par la formation. Une culture DevOps efficace va permettre d’industrialiser efficacement TOUTES les étapes du cycle de vie du développement d’applications, avec des nouveaux processus techniques mais aussi de communication entre les différentes équipes. La communication est d’ailleurs un élément clé dans la culture DevOps, surtout aujourd’hui, où depuis le COVID, il n’est pas rare d’avoir une équipe composée d’un environnement de travail hybride avec du travail à distance.

Un dernier élément est qu’il est souvent utopique de laisser ces différents sujets à une équipe spécifique DevOps. Il faut impliquer plusieurs métiers : du développeur à l’opérateur en passant par le testeur et même le chef de projet. Il faut donc que tous les travaux impliquent ces différentes équipes.

 

Automatisation

Le maitre mot lors de la mise en place de culture DevOps est l’automatisation. De nouveaux outils permettent maintenant de gérer toutes les étapes de la vie d’une application sous forme de code (ex: tests, infrastructure) ou l’utilisation d’API (ex: check des vulnérabilités d’une image Docker).

Tous ces nouveaux outils doivent surtout être pris en main par les différentes équipes car un bon outil mal maitrisé n’apporte rien : la formation est très importante et il faut accompagner les équipes existantes pour monter en compétences sur ces nouveaux outils. Dans le rôle d’architecte chez IBM, nous participons à la mise en place de culture DevOps sur différents projets et notamment toute la partie de formation.

Il faut aussi commencer à travailler sur les axes Dev & Ops en même temps. Le focus est souvent mis sur la partie Dev pour mettre en place des processus CI/CD efficaces mais la partie Ops est aussi importante : livrer des nouvelles versions en production tous les 15 jours impliquent d’avoir une observabilité efficace. On ne peut pas commencer à mettre en place ces processus à postériori. Il y aura des points de blocage, donc c’est très important d’avancer en synergie.

 

DevOps et le Cloud

Une migration vers le cloud est également une opportunité d’engager une transformation des organisations vers DevOps. Cela ajoute une nouvelle complexité à prendre en compte.

Prenons exemple avec le rôle Ops, sa responsabilité va évoluer si une application est hébergé sur un cloud provider. Il faut bien connaître le RACI de chaque offre avant de choisir l’offre de service ciblée. Par exemple, l’hébergement sur machine virtuelle (IaaS), sous forme de container (Kubernetes par exemple) ou encore du serverless. Chacune de ces technologies implique un rôle différent pour les Ops. En plus des nouveaux outils, les équipes doivent avoir une acculturation au cloud. Les avantages du cloud vont leur permettre de se focaliser sur l’observabilité de leur application et pouvoir mettre en place des processus industrialisés autour de l’alerting par exemple pour être encore plus réactif.

Un point également à surveiller autour de la mise en place d’automatisation dans le cloud est le choix des différents outils. Il en existe maintenant un nombre très important et il faut garder à l’esprit qu’utiliser un service implique régulièrement de partager des données avec lui. Etes-vous prêts à confier vos données à un prestataire externe ? Seront-elles protégées efficacement ? Est-ce que mon client accepte de stocker ses données chez un éditeur tiers ?

Pour le choix des outils, une cartographie est disponible sur le site CNCF (Cloud Native Computing Foundation). Cette représentation est utile pour identifier des outils et voir s’ils vont répondre à notre besoin. IBM Consulting peut aussi vous aider à choisir ces outils selon votre besoin.

 

Conclusion

En conclusion, mettre en place une culture DevOps efficace au sein d’une entreprise ne se fait pas du jour au lendemain et nécessite la mise en place d’une gestion de projet comme pour n’importe quel projet de développement d’applications. Des expertises variées sont requises ainsi qu’un plan de formation clair et efficace. Ce sont des activités que nous mettons en place chez nos clients au sein d’IBM Consulting.

N’hésitez pas à nous contacter pour de plus amples renseignements.

IT Architect, IBM Consulting

More Développeurs stories
18 avril 2024

La CSRD, un changement de paradigme pour les entreprises européennes

La Corporate Sustainability Reporting Directive (CSRD) inaugure un nouveau paradigme et marque le début d’une nouvelle ère en matière de « rapportage » de durabilité et de soutenabilité. En instaurant un cadre définissant les principes de l’analyse de double matérialité, l’Union Européenne (UE) offre aux entreprises une nouvelle opportunité d’opérer leur transformation stratégique durable, tout […]

Continue reading

28 février 2024

L’intelligence artificielle et l’analytique avancée dans le système de santé français (Partie 2)

Face aux défis auxquels sont confrontés les systèmes de soins de santé, l’analytique avancée (AA) et l’intelligence artificielle (IA) sont des technologies à haut potentiel d’impact. Ces technologies peuvent équiper les systèmes de santé d’outils avancés pour renforcer les soins des patients et améliorer l’efficacité opérationnelle. La deuxième partie de cet article reprend le fil […]

Continue reading

15 février 2024

L’Intelligence Artificielle et l’Analytique avancée dans les systèmes de santé français (Partie 1)

Dans le paysage complexe de la Santé, les systèmes médicaux du monde entier sont confrontés à une multitude de défis. Ceux-ci vont de la gestion délicate des maladies chroniques jusqu’à la quête d’accès égaux aux services de santé. Dans ce contexte spécifique, l’émergence de l’Analytique avancée et de l’Intelligence Artificielle (IA) joue un rôle de […]

Continue reading