C’est une plateforme SaaS qui offre aux utilisateurs une chaîne d'outils DevOps de bout en bout pour développer et déployer des logiciels.
Azure DevOps n'est pas un programme unique mais se compose plutôt des services suivants :
Azure Boards : Couvre la planification agile, le suivi des éléments de travail, ainsi que les outils de visualisation et de reporting.
Azure Pipelines : Plateforme CI/CD indépendante du langage, de la plateforme et du cloud, qui prend en charge les conteneurs ou Kubernetes.
Azure Repos : Dépôt Git privé hébergé dans le cloud, avec des demandes de retrait, une gestion avancée des fichiers et d'autres avantages.
Azure Artifacts : Les artefacts en question fournissent aux développeurs une gestion intégrée des paquets, y compris la prise en charge des flux de paquets Maven, npm, Python et NuGet provenant de sources publiques ou privées.
Azure Test Plans : Ce service fournit une solution intégrée et tout-en-un de tests planifiés et exploratoires.
Ces nouveautés ne doivent pas être confondues avec les mises à niveau :
Pas de mise à niveau à craindre
Les utilisateurs n'ont pas à s'inquiéter de la mise à jour ou de la correction de la chaîne d'outils, car Azure DevOps est un produit SaaS.
Fiabilité
Azure DevOps bénéficie d'une assistance 24 heures sur 24, 7 jours sur 7, et d'un accord de niveau de service de 99,9 %.
Plate-forme agnostique
DevOps est conçu pour fonctionner sur n'importe quelle plateforme (Linux, macOS et Windows) ou n'importe quel langage (par exemple, Android, C/C++, Node.js, Python, Java, PHP, Ruby, .Net et applications iOS).
Compatible avec le cloud
Azure DevOps fonctionne avec AWS et GCP.
Azure Pipeline
Azure Pipeline est une combinaison d'intégration continue (CI) et de livraison continue (CD) qu’on peut utiliser pour créer et tester votre code automatiquement et en donner l'accès à d'autres utilisateurs. On peut produire un code cohérent et de qualité avec CI et CD et travailler avec des langages de programmation tels que Python, Ruby, Java, PHP, C# et Go. Pour utiliser Azure Pipelines, le code source doit être stocké dans un système de contrôle de version tel que Git.
Azure Boards
Les tableaux Azure permettent de suivre facilement les tâches, les bogues et les fonctionnalités. Il existe trois types d'éléments de travail :
Un élément de travail épique permet de suivre les exigences ou les fonctionnalités, un problème permet de suivre les bogues ou les petites modifications, et une tâche permet de suivre les travaux encore plus petits. Il est facile d'ajouter ou de mettre à jour l'état de son travail et classer ses travaux par ordre de priorité.
Azure Artifacts
Azure Artifacts est un store qui contient tous nos artefacts produits lors du développement et du déploiement. Les artefacts sont des fichiers exécutables, c'est-à-dire qu'ils ne contiennent pas de code. On peut utiliser plusieurs flux pour organiser et contrôler l'accès à ses paquets. Un flux est un conteneur pour les paquets qui facilite la consommation et la publication. Azure Artifacts fournit un flux rapide, sécurisé et facile pour les paquets binaires.
Azure Artifacts garantit que les pipelines sont entièrement intégrés à la gestion des paquets.
Azure Repos
Avant de parler d'Azure Repos, voyons d'abord ce qu'est un système de contrôle de version. Les systèmes de contrôle de version sont des logiciels qui aident à suivre les modifications apportées au code, en prenant des instantanés des fichiers. Azure Repos est une collection d'outils de contrôle de version qui sont utilisés pour gérer son code.
Plans de test Azure
Il est possible d’améliorer la qualité de son code en le testant. Avec les plans de test Azure, on peut tester son code manuellement ou de manière exploratoire. On peut demander, donner et suivre les commentaires et effectuer des tests unitaires et fonctionnels. L'exécution continue des tests est également possible grâce aux tests continus.
JIRA
JIRA est une suite de gestion du cycle de vie des applications (ALM) de premier ordre qui présente des avantages tels que les notifications automatiques, la planification des sprints et les tableaux de bord personnalisés. Cependant, les utilisateurs rencontrent des problèmes avec l'administration des projets, les permissions, la difficulté relative à la création de listes de versions et la faiblesse des rapports.
GitLab
GitLab est un autre outil de cycle de vie DevOps basé sur le Web, open-source. Dans une comparaison côte à côte, Azure DevOps possède toutes les fonctionnalités de GitLab, et même plus. GitLab n'est pas à la hauteur en ce qui concerne la prise en charge d'autres formats de test courants, la création de rapports et l'intégration avec d'autres outils et extensions.
Jenkins
Bien que Jenkins soit open-source et excellent pour le développement asynchrone, il présente des problèmes de compatibilité avec les plug-ins, la nécessité de contourner les exigences de base et un manque relatif de support. Si Jenkins est globalement plus facile à utiliser, cette simplicité limite son utilité.
TFS
La suite de gestion du cycle de vie des applications (ALM) TFS dispose de fonctionnalités respectables et de fonctions de gestion des builds. Mais son inconvénient est un tableau de bord peu personnalisable, une interface de test peu intuitive et un prix un peu élevé par rapport à d'autres outils de gestion de projet.
Ces comparaisons ne signifient pas qu'Azure DevOps est parfait car, en dernière analyse, aucun produit ou outil ne l'est. Certaines organisations peuvent avoir des exigences spécifiques qui sont mieux servies par un autre outil DevOps. Ce qui ressort d'Azure, c'est l'ensemble complet d'outils et de fonctionnalités qui permettent aux équipes DevOps de mener des projets du début à la fin à partir d'un seul fournisseur. Cela dit, Azure est hautement agnostique, de sorte que les équipes peuvent travailler avec d'autres outils et services si elles le souhaitent.