Les 7 phases du cycle de vie DevOps
En quoi consiste le cycle de vie DevOps ? Le cycle de vie DevOps est divisé en sept différentes phases de développement continu qui guident le processus de développement logiciel du début à la fin. Pour comprendre DevOps, il est important de connaître chaque phase du cycle de vie, ainsi que les processus et les exigences de chaque phase.
Le développement de logiciels commence par la planification et le codage. Dans DevOps, cela se fait par le biais du processus de livraison régulière dans le but d'une amélioration constante.
En s'appuyant sur des valeurs Agiles fondamentales, DevOps encourage la publication régulière et fréquente de logiciels. La façon standard d'y parvenir est d'automatiser l'intégration et le déploiement du code, un processus appelé intégration continue/déploiement continu (CI/CD).
Tout au long du développement, que ce soit en pré ou en post-production, les équipes tirent parti des commentaires pour identifier les problèmes et émettre des hypothèses de solutions dans la planification.
Après la phase de planification du cycle de vie DevOps, la création de code source et de ressources commence avec l'objectif de faire progresser la production. Quel que soit le langage de codage utilisé, la gestion de la base de code à l'aide d'outils de gestion du code source est une priorité.
L'intégration continue (CI) est une pratique de développement qui oblige les développeurs à intégrer du code dans un dépôt partagé plusieurs fois par jour. Chaque vérification ou branche est ensuite vérifiée par une compilation automatisée, ce qui permet aux équipes de détecter les problèmes dès le début, garantissant ainsi que la branche de code principale est toujours viable et prête pour la production.
L'IC est conçue pour prendre en charge de nombreuses modifications de petite taille et itératives plutôt que des modifications moins nombreuses et importantes. Il permet aux équipes d'évoluer grâce à des flux de production automatisés pour les compilations de code, les tests, la fusion et la vérification dans des dépôts partagés.
L'objectif ultime de l'intégration continue est de fournir un meilleur code, plus rapidement. Grâce à des modifications moins fréquentes associées à l'automatisation, les équipes peuvent trouver et corriger les bugs plus rapidement et réduire le temps passé à valider et publier de nouvelles mises à jour.
Les tests continus vont de pair avec l'intégration continue. Les pipelines CI/CD dépendent de tests automatisés plutôt que de la validation manuelle du code. Il s'agit de s'assurer que ce qui est déployé est de qualité et n'entraînera pas d'erreurs avant la sortie.
DevOps repose sur l'élimination d'un maximum de processus manuels. Plus les processus sont manuels et fastidieux, plus le temps est perdu et plus le risque d'erreurs augmente. L'objectif des tests continus des outils DevOps est non seulement de découvrir les bugs, mais aussi de les trouver au plus vite pour ne pas avoir à les résoudre en phase de production via un correctif ou un correctif, ce qui devient beaucoup plus compliqué et long.
Des tests automatisés sont mis en place avant la publication dans la compilation et également avant la production. Les équipes peuvent insérer une révision manuelle comme dernière étape avant la production et une fois les tests automatisés terminés.
Un contrôle continu garantit le bon maintien du cycle de vie DevOps, avec pour objectif final de fournir une expérience utilisateur de qualité. Les mises à jour et l'utilisation du logiciel sont suivies de près, et les informations recueillies sont utilisées pour s'assurer que le logiciel fonctionne correctement.
Pendant la phase de surveillance continue, les équipes cherchent à détecter et à résoudre les erreurs système le plus rapidement possible. Le suivi automatisé des erreurs est ici essentiel. Les automatisations peuvent également fournir une visibilité sur d'autres domaines tels que les performances logicielles globales, le comportement des utilisateurs, la stabilité de l'infrastructure de développement, etc.
En plus de superviser les automatisations, votre équipe DevOps est responsable de s'assurer que tous les aspects du pipeline sont conformes aux normes de sécurité. Le traitement manuel de la gestion des versions se produit également au cours de cette phase.
Un feedback continu nécessite la mise en place d'une boucle de feedback afin de recueillir des informations sur les performances logicielles auprès de votre équipe interne et de vos utilisateurs. Les commentaires sont ensuite partagés avec l'équipe DevOps pour vous aider à guider l'itération du produit. Les sources peuvent inclure des enquêtes, des questionnaires, des groupes de discussion, des médias sociaux, des forums, etc.
Il ne s'agit pas seulement de déterminer si votre logiciel fonctionne correctement, mais aussi de mesurer la satisfaction globale des clients pour orienter la stratégie commerciale et garantir les meilleurs résultats possibles. Les commentaires continus doivent être utilisés pour orienter la feuille de route de votre produit et vous aider à répondre aux souhaits, besoins et attentes de votre public.
Le déploiement continu fonctionne de pair avec l'intégration continue en complétant le cycle d'automatisation et en minimisant ou en supprimant l'intervention humaine dans le processus de déploiement. Les outils DevOps automatisés surveillent les mises à jour du code source et les déploient automatiquement dans l'environnement de production après avoir passé la phase de test, ce qui permet de gagner du temps et d'améliorer la satisfaction des utilisateurs.
Le déploiement continu accélère les boucles de feedback avec les utilisateurs grâce à l'automatisation. Des méthodes peuvent également être déployées pour séparer le déploiement d'une version, soit en les cachant aux utilisateurs (publications obscures), soit en les activant pour des utilisateurs spécifiques afin de tester de nouvelles fonctionnalités et solliciter des commentaires (bascules ou interrupteurs de fonctionnalités).
Comme le code est publié en petits lots, il réduit le risque que vous courriez avec des changements de code importants, le tout avec un minimum d'efforts grâce à l'automatisation.
Les opérations continues visent à minimiser les temps d'arrêt et à prévenir les interruptions de service fâcheuses pour les utilisateurs. Cette phase du cycle de vie DevOps est centrée sur l'optimisation des applications et des environnements pour la stabilité et les performances. Il complète également la boucle du cycle de vie DevOps en alimentant la phase de planification du développement continu avec des rapports de bugs et des commentaires utilisateurs pour les améliorations.
Grâce à une collaboration continue entre les équipes et avec les utilisateurs, les bugs, les commentaires et les problèmes de sécurité peuvent être transmis, évalués et itérés en permanence via le pipeline DevOps.
Le flux de production parfait
Dans cette courte vidéo, l'équipe Unity Version Control (anciennement Plastic Scm) montre comment son puissant outil de gestion du code source peut exécuter une chaîne d'outils stratégiques DevOps qui joue un rôle crucial dans la réalisation d'un flux de production fluide au sein du cycle de vie DevOps.
Le suivi et la gestion des modifications de votre code source sont essentiels. Découvrez comment les différents types de Version Control peuvent vous aider à préserver l'intégrité de votre code.
La mise en place des pratiques DevOps peut rationaliser votre pipeline de développement et faire le bonheur de votre équipe et de vos utilisateurs. Découvrez comment DevOps peut vous aider.
Tous les studios de jeux souhaitent accélérer leur production tout en réduisant les périodes de stress pendant la finalisation d'un projet et DevOps est le meilleur moyen d'y parvenir. Commencez par apprendre les principes clés de la méthodologie DevOps.
Découvrez les principes et les processus fondamentaux DevOps pour le développement de jeux, et écoutez le témoignage des studios qui ont rencontré le succès avec la gamme de solutions Unity.
Dans cet ebook, obtenez des informations de l'équipe Unity Version Control sur la façon de devenir un meilleur développeur logiciel et de maîtriser Version Control en implémentant le flux de production parfait.
Découvrez comment Halfbrick utilise Backtrace et Helpshift pour détecter les erreurs avant qu'elles ne deviennent un problème et garder les joueurs dans le jeu.
Version Control commence le cycle de vie DevOps. Mettez en œuvre l'intégration et le développement continus avec les solutions Unity DevOps.