La mise en œuvre d’une démarche DevOps au sein d’une entreprise est un processus long, complexe qui nécessite une phase de changements culturels et organisationnels alors même qu’elle a vocation à simplifier et à fluidifier les différentes étapes de la vie d’une application.
C’est tout le paradoxe de DevOps. Il s’agit de mettre en œuvre des processus relativement complexes pour simplifier le cycle de vie d’une solution logicielle, de sa conception à sa publication.
Lorsque nous menons une mission d’accompagnement à la démarche DevOps, nous nous attachons à créer de la richesse dès le début des développements de sorte que le ROI soit effectif plus rapidement. Concrètement, nous veillons à apporter de la valeur incrémentale sur l’ensemble des éléments de continuité de la chaine DevOps, de la planification jusqu’au monitoring en passant par les cycles de développement, d’intégration, de test et de déploiement.
Dans cet article, nous verrons :
Comment se déroule une expertise DevOps ?
Pour bien vous accompagner il nous est nécessaire de comprendre votre situation et la cible que vous vous êtes fixée afin de vous proposer le meilleur chemin pour y parvenir. Nous effectuons un audit de votre existant. Après avoir analysé les problématiques qui font l’unicité de votre projet, nous vous proposons de nous aligner sur les objectifs et les outils à mettre en place pour atteindre ces objectifs.
Réaliser un audit
La 1ère étape consiste à recueillir les informations qui nous permettent de comprendre l’existant, et le fonctionnement de votre organisation pour analyser la situation en regard des souhaits de la direction par rapport à la mission d’accompagnement. Nous identifions les parties prenantes, déterminons l’analyse de rentabilité, et effectuons la feuille de route de la livraison. C’est ce travail d’analyse préliminaire qui va nous permettre de se projeter avec vous sur les objectifs à atteindre sachant qu’il peut exister différents chemins pour y arriver. Nous choisissons avec vous le plus pertinent.
Définir des objectifs successifs facilement atteignables (étapes par étapes)
Les évolutions de l’organisation et la mise en place de l’automatisation doivent être réalisées par petits pas. C’est la raison pour laquelle on fixe des objectifs raisonnables, quitte à découper un objectif en plusieurs morceaux. L’atteinte de ces premiers objectifs est capitale, car elle va accroitre la motivation pour passer à l’étape suivante.
Les objectifs doivent être simples et clairs en ligne de mire de couvrir les axes suivants :
- Améliorer l’efficacité de l’automatisation et de l’intégration,
- Simplifier la conception du design et des applications,
- Intégrer de nouvelles applications dans l’existant,
- Améliorer l’accès aux environnements de développement et de tests,
- Automatiser les tests manuels.
Définir les outils nécessaires
L’efficacité des outils est très importante. Ils ne se valent pas tous et ne répondent pas toujours aux mêmes objectifs. Nous prenons le temps de les sélectionner, de les évaluer et de bien comprendre leurs fonctionnements pour utiliser toute leur puissance en fonction de votre problématique.
Nous vous accompagnons dans le choix de la meilleure méthodologie et la mise en place des outils qui répondent à vos besoins pour gérer efficacement votre Backlog mais aussi les plans de tests.
Que peut-on attendre d’un accompagnement DevOps avec SoftFluent ?
Lorsque les objectifs sont clairs avec la méthodologie et les outils associés, on prévoit généralement cinq phases principales dans la mise en place d’une démarche DevOps et/ou le déploiement des outils associés :
Planification et suivi
Nous proposons au client des outils et des solutions lui permettant d’injecter de l’agilité et de la continuité y compris dans son processus de planification, de suivi de la conception et de l’évolution de son application.
Développement, intégration, test
Nous nous attachons à automatiser tous les processus qui peuvent l’être et à optimiser les ressources. En réduisant l’intervention humaine, non seulement nous contribuerons à réduire les risques d’erreurs mais surtout, nous permettrons aux développeurs de se focaliser sur les tâches à plus haute valeur ajoutée.
Nous faisons en sorte que pour chaque modification introduite dans le système de gestion de configuration, des tests automatiques s’exécutent rapidement dans un environnement identique à celui utilisé en production et valident le bon fonctionnement du système.
Déploiement
Compte tenu des étapes précédentes, les déploiements sont effectués, sereinement et rapidement, en environnement de production avec des données réelles.
Etant effectués au sein de différents environnements d’exécution : développement, test, QA, UAT, production… Une bonne pratique consiste à commencer par la mise en place de l’intégration et du déploiement continus dans l’ordre dans lesquels on a besoin de les exploiter.
Feedback et monitoring
Nous accompagnons le client dans la mise en place de principes et d’outils destinés à :
- Proposer à l’utilisateur final des solutions lui permettant de remonter son feedback
- S’assurer du bon état de santé de l’application
Formation et documentation
Il est important d’instaurer une véritable collaboration entre les équipes y compris les équipes métier et celles en charge de la sécurité. La formation aux outils et aux méthodologies notamment agiles est également indispensable. Une documentation détaillée retrace l’historique, l’approche choisie et les raisons de ce choix, les objectifs, chacune des bonnes pratiques mises en place pour atteindre ces objectifs et les indicateurs de suivi des résultats.
Notre objectif est de vous aider à offrir rapidement à vos utilisateurs les applications dont ils ont réellement besoin, à mettre de l’agilité dans vos méthodologies, à assurer une qualité dans vos développements ou encore à déployer automatiquement en production des logiciels bien testés et sans régression. Les cycles de livraison plus courts permettent aussi une remontée plus rapide des éventuels bugs et erreurs aux équipes de développement.
Les principaux bénéfices observés et cités par nos clients sont :
- L’accélération du développement et/ou du déploiement
- L’augmentation de la qualité du code
- L’apport rapide de valeur
- L’amélioration de l’expérience utilisateur
- Le rapprochement des équipes développement et production
- Un meilleur lien avec les utilisateurs
- L’automatisation de nombreuses tâches répétitives.
Pourquoi choisir SoftFLuent ?
SoftFluent peut vous accompagner dans la mise en place d’une démarche DevOps au travers d’une approche personnalisée reposant sur sa connaissance des nombreux outils du marché, incluant par exemple Team Foundation Server et sa version cloud Azure DevOps Services.
Nous sommes d’ailleurs partenaire Microsoft Gold DevOps.
SoftFluent peut intervenir à plusieurs niveaux dans la mise en place d’une approche DevOps dans vos développements : de l’implémentation globale de l’approche à des expertises plus spécifiques comme la configuration de vos outils DevOps.
Fort de son expérience de terrain et de son activité d’éditeur de logiciels, SoftFluent offre une mise en place ajustée et un accompagnement pragmatique et proactif dans votre démarche DevOps et dans le déploiement des outils adaptés à votre problématique. Micaël est l’un de nos experts DevOps qui intervient à la demande chez nos clients.
Nous conseillons tous types d’entreprises et de secteurs d’activités dans la mise en place d’une approche DevOps. Vous trouverez ici le cas client d’un accompagnement DevOps que nous avons réalisé auprès d’une société d’investissement.