18.09.2019

Gestion de projet agile avec Microsoft Azure DevOps

Êtes-vous confronté au défi de devoir réagir rapidement à l'évolution du marché dans le développement de vos produits et voulez-vous mettre de nouvelles fonctionnalités à la disposition de vos clients le plus rapidement possible ? Dans notre série d'articles DevOps, vous découvrirez comment vous pouvez utiliser Microsoft Azure DevOps exactement à cette fin au moyen d'un cas d'utilisation concret - et pas seulement pour des projets logiciels, bien sûr.

De plus en plus de projets sont réalisés de manière agile. Les exigences en matière d'outils de gestion de projet changent au fil du temps. Avec le développement d'Azure DevOps, le successeur de Visual Studio Team Services (VSTS), Microsoft a mis un outil utile sur le marché. En tant que successeur de VSTS, la proximité d'Azure DevOps aux projets de développement logiciel est évidente. Mais Azure DevOps propose de nombreux avantages pour les projets non logiciels grâce à sa structure modulaire et supporte toutes les phases clés d'un projet agile.  

Qu'est-ce qu'Azure DevOps ?  

Microsoft Azure DevOps est un outil qui soutient les équipes de développement logiciel tout au long du cycle de développement, de la saisie des demandes à la mise en œuvre, en passant par les tests et le déploiement automatisé. Le nom DevOps est dérivé des abréviations Développement (Dev) et Opérations (Ops) et est considéré comme l'une des grandes tendances de l'industrie, qui attire de plus en plus l'attention.  Cette tendance est soulignée par des études qui montrent que la mise en œuvre de DevOps permet d'énormes gains d'efficacité. Selon le "Rapport sur l'état de DevOps 2018", le groupe de tête atteint 46 fois plus de déploiements fréquents, 2555 fois plus de temps pour passer de la validation au déploiement, 7 fois moins d'erreurs, et 2604 fois plus de corrections de bugs.

Ce serait une erreur d'assimiler Azure DevOps à DevOps. DevOps n'est ni un outil, ni un logiciel, ni une méthodologie, ni un processus. DevOps doit être compris avant tout comme une culture ou une philosophie qui met la collaboration du développement et de l'exploitation au premier plan. Cela s'accompagne souvent d'un changement de mentalité, d'un changement de type de collaboration et d'une intégration plus étroite du développement et de l'exploitation pour surmonter les silos existants. DevOps promet une confiance mutuelle accrue, des temps de réponse plus rapides, une génération de clients plus rapide, ainsi qu'un traitement plus efficace et plus fiable des travaux planifiés et non planifiés. Beaucoup de ces objectifs ressemblent à ceux des méthodes agiles. Azure DevOps en tant qu'outil de support de DevOps convient donc non seulement dans le cadre de sujets IT ou Dev et Ops, mais aussi dans le cadre de projets agiles sans lien avec l'IT. 

Dans cette série d'articles, nous vous montrerons comment Azure DevOps peut relever divers défis dans le cadre de projets agiles avec et sans orientation informatique.

Les modules Azure DevOps 

Azure DevOps a une structure modulaire. Ceci présente un avantage majeur : de nombreuses entreprises disposent déjà de bons outils pour les sous-disciplines, par exemple via une suite de gestion de tests. Cependant, il manque souvent des solutions intégrées pour la planification ou l'intégration continue (IC) et le pipeline de déploiement continu (DC) afin de permettre une approche cohérente. Dans certaines entreprises les métiers veulent, par exemple, mettre en place une solution simple pour organiser leur travail à l'aide de tableaux de tâches configurables. Dans ce cas, il est possible d'activer uniquement les cartes Azure et de masquer les autres modules, et de les ajouter ultérieurement. 

En général, Azure DevOps supporte toutes les phases d'un projet (IT). Les modules suivants peuvent être activés de manière flexible en fonction des besoins du projet. 

Idéalement, le processus de développement typique peut être mis en œuvre avec Azure DevOps comme suit. L'analyse initiale des besoins est prise en charge par « Azure boards » et l'intégration Wiki. Ensuite, la planification peut être très flexible, par exemple sous la forme de sprints - vous êtes totalement flexible en ce qui concerne la configuration et la représentation des champs, filtres et vues.  

Lorsqu'il s'agit d'implémenter les premiers artefacts et livrables logiciels, « Azure Artifacts » offre la gestion des paquets et Azure Repos fournit une puissante intégration du référentiel qui vous permet d'intégrer un système de contrôle de version.  

« Azure Test Plans » offre la possibilité d'intégrer complètement la gestion des tests, dont certains sont des cas de test réels. Celles-ci sont directement liées à vos besoins et permettent de saisir les retours d'expérience sur les différentes étapes de test ainsi que de créer des bugs, le tout sans quitter la suite d'outils. Les listes Excel multiples avec des étapes de test individuelles et des liens vers les environnements de test actuels appartiennent au passé. Une évaluation graphique au sein de tableaux de bord librement configurables est également disponible :

« Azure Pipelines » offre des IC/DC qui fonctionnent avec n'importe quel langage, plate-forme et environnement cloud. Ainsi, une connexion à GitHub ou à tout dépôt Git peut être établie et de nouvelles versions de produits peuvent être déployées en continu. Azure Pipelines offre des CI/CD qui fonctionnent avec n'importe quel langage, plate-forme et environnement cloud. Ainsi, une connexion à GitHub ou à n'importe quel référentiel Git peut être établie et de nouvelles versions de produits peuvent être déployées en continu. Le tableau de bord d'Azure DevOps, paramétrable et flexible, permet de réunir et visualiser les différents éléments d'information - par exemple, le graphe d’avancement (Burndown Chart), l'historique des versions (builds) ou l'historique de la velocité. 

Enfin, le « Microsoft Marketplace » vous offre la possibilité d'ajouter d'autres fonctionnalités à Azure DevOps. Nous vous le présenterons en détail dans un autre article de cette série sur Azure DevOps. 

De nombreuses entreprises font déjà confiance aux prédécesseurs d'Azure DevOps - Visual Studio Team Services (VSTS) ou Team Foundation Server (TFS). Les utilisateurs de VSTS reçoivent automatiquement une mise à jour vers les projets Azure DevOps. Il n'y a aucune perte de fonctionnalité pour les utilisateurs existants. Les clients qui ont déjà utilisé TFS peuvent migrer vers la nouvelle version d'Azure DevOps Server - grâce à l'assurance logicielle toujours incluse dans TFS, la mise à jour est gratuite. 

Nous vous invitons à lire les autres articles sur Azure DevOps que nous publierons d'ici la fin de l'année pour vous donner un aperçu des avantages de cette solution.