Close

Bonnes pratiques DevOps

DevOps nécessite des virages culturels, des processus automatisés ainsi que des investissements dans les bonnes technologies

Portrait de Tom Hall
Tom Hall

Expert DevOps


Les bonnes pratiques DevOps incluent la gestion de projet Agile, l'autonomisation des équipes grâce à la CI/CD, à l'automatisation, à la surveillance, à l'observabilité et au feedback continu.

Qu'est-ce que DevOps ?


Il est préférable d'interpréter DevOps comme une volonté de l'entreprise d'améliorer la communication et la collaboration entre les équipes de développement et opérationnelles afin d'accélérer le déploiement des logiciels et de le rendre plus qualitatif. C'est une nouvelle méthode de travail qui a d'importantes répercussions sur les équipes et les organisations qui la pratiquent.

L'importance de DevOps


Bien qu'une transformation DevOps nécessite une refonte des structures et des processus métier, l'effort en vaut la peine. Dans notre enquête sur les tendances DevOps de 2020, 99 % des personnes interrogées ont déclaré que DevOps avait un impact positif sur leur organisation.

Une autre étude DevOps, le rapport State of DevOps 2019 rédigé par l'équipe DORA, a révélé que les meilleurs experts livrent 208 fois plus souvent et 106 fois plus rapidement que les équipes peu performantes. Il n'est pas juste question d'accélérer la commercialisation. En effet, DevOps renforce la qualité et donne naissance à des équipes « de choc » dont le taux d'échec des changements est sept fois inférieur à celui des équipes peu performantes.

Icône représentant des cercles entremêlés
Matériel connexe

Essayez la solution gratuitement

Icône de trophée
Matériel connexe

Découvrez les avantages de DevOps

Bonnes pratiques pour implémenter DevOps


Une gestion agile de vos projets

Agile est une approche itérative de la gestion de projets et du développement qui aide les équipes à apporter de la valeur aux clients plus rapidement et plus facilement. Les équipes Agile se concentrent sur la livraison du travail par petits incréments, au lieu d'attendre une seule date de livraison massive. Les exigences, les plans et les résultats sont évalués en continu, ce qui permet aux équipes de répondre aux feedbacks et de réagir en conséquence.

Voici les concepts clés de la gestion de projet Agile :

  • Commencez par un workflow en quatre phases : à faire, en cours, revue de code et terminé. En savoir plus sur les workflows.
  • Les équipes doivent diviser les projets à grande échelle en tâches plus petites et répondre à l'évolution des besoins ou du périmètre à mesure de leur avancement. Découvrez comment utiliser des epics, des stories et des thèmes pour délimiter et structurer le travail.
  • Comment planifier, suivre et mesurer le travail incrémentiel ? Scrum et Kanban sont des frameworks fondamentaux pour les équipes qui pratiquent la méthodologie Agile.

​​​​​​​Renforcez l'autonomie (shift left) grâce à la CI/CD

Lorsque les équipes sont autonomes (shift left), les tests sont introduits de façon anticipée dans leurs processus de développement de code. Au lieu d'envoyer plusieurs changements à une équipe de test ou de QA distincte, divers tests sont effectués tout au long du processus de programmation afin que les développeurs puissent corriger des bugs ou améliorer la qualité du code pendant qu'ils travaillent sur la section correspondante de la base de code. La pratique d'intégration, de livraison et de déploiement continus (CI/CD) appuie la capacité d'autonomisation. En savoir plus sur la CI/CD.

​​​​​​​Développez grâce aux bons outils

Une chaîne d'outils DevOps nécessite les bons outils pour chaque phase du cycle de vie DevOps, avec des fonctionnalités clés pour améliorer la qualité des logiciels et accélérer la livraison. Découvrez comment choisir vos outils DevOps et passez en revue les fonctionnalités de chaque phase du cycle de vie DevOps.

​​​​​​​Implémentez des règles d'automatisation

L'intégration et la livraison continues permettent aux développeurs de merger du code régulièrement dans le dépôt principal. Au lieu de vérifier manuellement le code, la CI/CD automatise ce processus, du traitement par lots durant un intervalle donné jusqu'aux commits fréquents. En plus de la CI/CD, les tests automatisés sont essentiels à l'adoption fructueuse des pratiques DevOps. Les tests automatisés peuvent inclure des tests de bout en bout, des tests unitaires, des tests d'intégration ainsi que des tests de performance. Découvrez-en plus sur l'intégration de l'automatisation dans vos processus de développement logiciel en cliquant ici.

​​​​​​​Surveillez le pipeline et les apps DevOps

Il est important de surveiller le pipeline DevOps afin qu'un build interrompu ou un test échoué n'entraîne pas de retards inutiles. L'automatisation accélère considérablement le développement, mais si un processus automatisé échoue sans que personne ne s'en aperçoive, il vaut mieux effectuer le travail manuellement. Dans le même ordre d'idées, il est important de surveiller les apps de production afin d'identifier les défaillances ou les problèmes de performance avant que vos clients ne vous en fassent part.

​​​​​​​Observabilité

Puisque le secteur a préféré aux systèmes et apps monolithiques sur site des apps cloud natives, basées sur des microservices, la surveillance est désormais bien plus complexe. Résultat : l'intérêt pour l'observabilité augmente. On dit souvent que les trois piliers de l'observabilité sont les journaux, les traces et les métriques. La plupart des composants de systèmes et des apps génèrent des journaux, qui consistent en un ensemble de données chronologiques sur le fonctionnement du système ou de l'app. Les traces suivent le flux logique au sein de l'app. Les métriques incluent la réservation ou l'utilisation du processeur (CPU) et de la RAM, l'espace disque, la connectivité réseau, et plus encore. Pour faire simple, l'observabilité signifie que l'on utilise ces trois sources d'information agrégées afin de faire des découvertes et de formuler des prédictions sur le fonctionnement d'un système complexe, ce qui serait autrement difficile à réaliser. En savoir plus sur l'observabilité.

​​​​​​​Recueillez du feedback continu

Un feedback continu garantit que les membres de l'équipe disposent des informations nécessaires pour faire leur travail en temps voulu. Du point de vue du développement, cela implique que l'équipe soit immédiatement alertée de toute défaillance de pipeline. Cela signifie également que les résultats des tests de code clairs et complets sont mis à la disposition des développeurs le plus rapidement possible. Du point de vue de la gestion de produits, l'équipe est informée de tout défaut de production, de tout problème de performance, ou de tout bug signalé. Par le passé, on croyait généralement qu'une équipe de développement ne pouvait optimiser que la vitesse ou la qualité. Le feedback continu est l'un des éléments de DevOps qui permet d'optimiser ces deux aspects.

​​​​​​​Changez la culture

DevOps exige de la collaboration, de la transparence, de la confiance et de l'empathie. Si votre organisation est l'une des rares où ces qualités sont déjà établies, vos équipes devraient pouvoir adopter les pratiques DevOps assez facilement. Si ce n'est pas le cas, des efforts seront nécessaires pour développer ces qualités. Les structures organisationnelles les plus courantes sont cloisonnées, ce qui signifie que les différentes équipes ont des domaines de responsabilité distincts et que la communication ou la collaboration entre les équipes est minimale. Pour garantir une implémentation fructueuse de DevOps, ces obstacles doivent être éliminés en adoptant la pratique YBIYRI. Cela ne signifie pas que les personnes ou les équipes ne se spécialisent pas, mais seulement que les canaux de communication et de collaboration entre les équipes sont ouverts et utilisés. En savoir plus sur le développement d'une culture d'équipe.

Le perfectionnement de vos pratiques DevOps est un parcours continu. Concentrez-vous sur les personnes et les processus au début de votre transformation DevOps, et introduisez des outils avancés, des intégrations ainsi que des fonctionnalités à mesure que votre équipe gagne en maturité.

Tom Hall
Tom Hall

Tom Hall est un expert DevOps, un lecteur avide et un pianiste amateur.
Au cours des 20 dernières années, il a notamment obtenu les certifications Novell, EMC, VMware et AWS. Il a participé à l'organisation des DevOpsDays à Atlanta en 2016 et à Austin, au Texas, dans les années qui ont suivi.


Partager cet article
Thème suivant

Lectures recommandées

Ajoutez ces ressources à vos favoris pour en savoir plus sur les types d'équipes DevOps, ou pour les mises à jour continues de DevOps chez Atlassian.

Illustration Devops

Communauté DevOps

Illustration Devops

Atelier de simulation

Illustration d'une carte

Essayez la solution gratuitement

Inscrivez-vous à notre newsletter Devops

Thank you for signing up