Azure DevOps is a cloud based software development life cycle management service provided by
Azure. Azure DevOps is one of the
most popular project management tools among all. Millions of software dev teams use Azure DevOps to manage, build, deploy, and test their software applications. In this article, I will explain what Azure DevOps is all about and how you can get started with Azure DevOps in no time.
A typical software development team is comprising of software developers, testers, DevOps engineers, architects, and project managers. Azure DevOps is a set of tools that allows software development teams to plan and collaborate on software development life cycle including creating features, coding, build, and deployment, testing, and provide feedback on the product.
Requirements gathering, analysis and design, coding, testing, and deployment are common functions of software development life cycle. Azure DevOps is a cloud platform that provides tools to manage entire software development life cycle in the cloud.
Azure DevOps offers two options. First, Azure DevOps Services in the cloud and on-premises using Azure DevOps Server.Azure DevOps provides integrated features that you can access through your web browser or IDE client.
The following is a list of Azure DevOps services that includes Azure Artifacts, Azure Boards, Azure Pipelines, Azure Repos, and Azure Test Plans.
Azure DevOps also offers collaboration tools such as to create documentation via wikis, and customizable team dashboards with configurable widgets to share information, progress, and trends
Azure DevOps supports adding extensions and integrating with other popular services, such as: Campfire, Slack, Trello, UserVoice, and more, and developing your own custom extensions.
Watch this video to learn more about Azure DevOps.
Azure Boards
Azure Boards delivers a set of tools that allows development teams to keep track of development features in Agile process. The tools include Kanban boards, backlogs, sprints, queries, and plans. There are also options to add code defects, keep track of issues, and generate reports.
In a typical agile software development process, requirements are added to a backlog and moved to sprints. In a backlog, you can create epics, features, and tasks.
Now we know that Azure Boards has all the features your team needs to successfully manage your work. Azure boards allows you to visualize work with Kanban boards, execute in sprints, manage your backlog, and use queries to find work and visualize results. In this video, learn how to get started with Azure Boards.
Azure Repos
Source code version control is a common need of software projects to keep track of different versions and changes in the code. Azure Repos is a set of version control tools hosted in Azure cloud. Azure DevOps service includes free unlimited private Git repos.
Azure Repos provides two types of version control, Git and Team Foundation Version Control (TFVC).
Git is one of the most popular distributed version control system that allows developers to have a local copy their source code on their development machine as local repositories and a copy stays on the server. This helps developers to work locally offline and developer commit their work locally, and then the changes are sync with the copy on the server. Unlike Git, which is distributed, TFVC is a centralized version control system.
Azure Repos UI looks like the following that allows users to pull requests of projects. Azure portal looks like the following where
Watch this video to learn how to get started with Git in Azure Repos and how your team can use pull requests to work together to collaborate on code.
Azure Pipelines
Continuous integration (CI) and continuous delivery (CD) of software projects is a major task that is automated where tools are used to get latest versions of the code, build it, and deploy to the destinations. Azure Pipelines of Azure DevOps is a set of tools that provides build and release services for software development teams.
Azure Pipelines support build, test, and deploy Node.js, Python, Java, PHP, Ruby, C/C++, .NET, Android, and iOS apps. Run in parallel on Linux, macOS, and Windows.
Azure Pipelines supports containers and Kubernetes that allows teams to easily build and push images to container registries like Docker Hub and Azure Container Registry.
Deploy containers to individual hosts or Kubernetes.
Azure Pipelines are extensible and allows a wide range of community-built build, test, and deployment tasks, along with hundreds of extensions from Slack to SonarCloud.
Azure Pipelines allows teams to deploy their apps to any cloud including Azure, AWS, and GCP.
Watch this video tp learn why Azure Pipelines is the best tool on the planet for Continuous Integration and Continuous Deployment (CI/CD) of your code.
Azure Test Plans
Azure Test Plans are for software testing and QA teams to create test cases, test and report results, and generate reports. Azure Test Plans support manual testing and continuous testing.
The four key functionalities of Azure Test Plans are,
- Planned manual testing
Manual testing by organizing tests into test plans and test suites by designated testers and test leads.
- User acceptance testing
Testing carried out by designated user acceptance testers to verify the value delivered meets customer requirements, while reusing the test artifacts created by engineering teams.
- Exploratory testing
Testing carried out by development teams, including developers, testers, UX teams, product owners and more, by exploring the software systems without using test plans or test suites.
- Stakeholder feedback
Testing carried out by stakeholders outside the development team, such as users from marketing and sales divisions.
Watch this video to learn the basic aspects on how to get started with Azure Test Plan, so you can start testing your application today.
Azure Artifacts
Azure Artifacts allows teams to share packages such as Maven, npm, NuGet and more from public and private sources and integrate package sharing into your CI/CD pipelines
In this video, learn how to get started with Azure artifacts and start creating a feed for an npm package to use in your Azure Pipeline.
Azure DevOps, Azure Pipelines, Azure Boards + Github
Azure DevOps integrates seamlessly with GitHub. Watch this video to learn how you can easily track our work with the Azure Boards and GitHub integration and how we can easily create CI/CD pipelines for our code in GitHub using Azure Pipelines.
Summary
Azure DevOps is one of the recent products of Azure that allows development teams to collaborate and mange their tasks and releases. In this article, we learned about basics of Azure DevOps and its various products.
Azure DevOps and entire cloud ecosystem is a growing and changing space. Make sure to learn about latest changes in Azure DevOps that may not have mentioned here.
References
- Content and images: azure.microsoft.com