In the previous chapter, we introduced DevOps and covered the six principles. We also briefly covered the key concepts and the different services of Azure DevOps. Finally, we introduced the scenarios that we will be using throughout this book.
In this chapter, we are going to cover Azure Boards in more detail. We will start with the different processes and process templates that are available in Azure DevOps. Then, we will create a new organization in Azure DevOps. We imported a sample project and organization called Tailwind Traders in the previous chapter. We will use this example for the rest of this chapter. We will use this Tailwind Traders project to create a new project and learn how to create and manage the different project activities using Azure Boards.
The following topics will be covered in this chapter:
To follow this chapter, you need to have an active Azure DevOps organization. The organization that we'll be using in this chapter was created in Chapter 1, Azure DevOps Overview.
With Azure Boards, you can manage the work of your software projects. Teams need tools to support them that can grow and that are flexible. This includes native support for Scrum and Kanban, as well as customizable dashboards and integrated reporting capabilities and tools.
At the start of the project, teams must decide which process and process templates need to be used to support the project model that is being used. The process and the templates define the building blocks of the Work Item tracking system that is used in Azure Boards.
Azure DevOps supports the following processes:
Now we have covered some basic information about the different processes and process templates that are available in Azure DevOps, we will cover how to create a new organization.
An organization in Azure DevOps is used to connect groups of related projects. You can plan and track your work here and collaborate with others when developing applications. From the organization level, you can also integrate with other services, set permissions accordingly, and set up continuous integration and deployment.
In the previous chapter, we introduced the scenarios that we will be using throughout this book. Tailwind Traders is an example retail company that is showcasing the future of intelligent application experiences. By generating a project using the DevOps generator, the organization and the project were automatically created.
However, there are cases where you might need to create an organization manually, such as when you first start to use Azure DevOps in an organization, or when it is a logical fit to create a separate organization based on permission requirements. So, we are going to cover this step as well. Therefore, you need to perform the following steps:
With that, the organization has been created. In the next section, we are going to learn how to add a new project to this organization.
After creating a new organization, Azure DevOps automatically gives you the ability to create a new project. Perform the following steps:
We have now covered how to create a new organization and add a project to it. For the remaining sections of this chapter, we are going to leave this organization and project as-is, and we are going to use the Tailwind Traders project that we imported in Chapter 1, Azure DevOps Overview.
In the next section, we will cover how to create and manage different project activities.
Azure DevOps offers different project features that can be used by teams to manage their software development project, such as Work Items, backlogs, sprints, boards, and queries. These will be covered in the following sections.
Teams use artifact Work Items to track all the work for a team. Here, you will describe what is needed for the software development project. You can track the features and the requirements, the code defects or bugs, and all other items. The Work Items that are available to you are based on the process that was chosen when the project was created.
Work Items have three different states: new, active, and closed. During the development process, the team can update the items accordingly so that everyone has a complete picture of the work related to the project.
Now, let's create a new Work Item.
From now on, we are going to use the Tailwind Traders sample project that we generated in the previous chapter. We are going to create a new Work Item in this project. To do this, perform the following steps:
Now, let's create a new User Story. To do so, click on User Story from the list. Now, follow these steps:
a) Title: As a user, I want to edit my user profile.
b) Assigned: Here, you can assign the Work Item to a specific person.
c) Add tag: You can also add tags to this Work Item. These tags can be used for searching later. I've added a tag called Profile Improvements.
d) State: Because this is a newly created item, the state is automatically set to New.
e) Iteration: Here, you can specify which sprint you want to add this User Story to. You can also do this later from the backlog. I've added it to iteration 2.
f) Description: As a user, I want to edit my user profile. This is a rich text editor where you can also format the description to your needs.
g) Discussion: Here, you can add additional comments related to this Work Item. You can link it to another Work Item using "#" followed by "the name of the Work Item", link a particular pull request using "!" followed by the "name of the pull request", or mention a person using "@" followed by the "name of the person".
h) Priority: You can prioritize your User Story here. The priority here is just a number to indicate the importance of the Work Item, not the priority of it. The priority can be decided from the board by dragging the User Story up and down.
i) Classification: You can also classify this item. The generator created two different categories for the Tailwind Traders project. Here, you can select Business or Architecture. In this case, the item is more business-related.
j) Development: Here, you can link the item to a specific branch, build, pull request, and so on.
k) Story points: Using story points, you can estimate the amount of work required to complete a User Story using any numeric unit of measurement. The value in this field is based on the velocity of the team:
We have now successfully created a new Work Item. I highly encourage you to create some different Work Items, such as bugs, features, tasks, and so on. This way, you will become familiar with the different types of forms that come with each.
Important Note
For more information on how to create the different Work Items, refer to the following website: https://docs.microsoft.com/en-us/azure/devops/boards/work-items/about-work-items?view=azure-devops&tabs=agile-process. For more information about the different fields that are used in the Work Item forms, refer to this website: https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/work-item-field?view=azure-devops.
In the next section, we are going to look at backlogs and sprints in more detail.
The product backlog is a roadmap for what teams are planning to deliver. By adding User Stories, requirements, or backlog items to it, you can get an overview of all the functionality that needs to be developed for the project.
From the backlog, Work Items can be easily reordered, prioritized, and added to sprints.
Let's take a look at how backlog works:
In this section, we covered the backlog and how to prioritize User Stories, as well as how to add them to sprints. You can also create a view with a parent-child relationship based on the different Work Items you have.
In the next section, we are going to look at Boards in more detail.
Another way to look at the different Work Items you have is by using boards. Each project comes with a preconfigured Kanban board that can be used to manage and visualize the flow of the work.
This board comes with different columns that represent different work stages. Here, you can get a comprehensive overview of all the work that needs to be done and what the current status of the Work Items is.
Let's look at Boards in Azure DevOps in more detail:
The Work Items are displayed according to the status of the items. In the New column, the items that the team has not committed to yet are displayed. Then, there's items that are currently being picked up by the team. These are displayed in the Active column.
There are also Work Items that are being Resolved, which means the development part has finished but they still need to be tested. Items that have passed these tests and meet the Definition of done are moved to the Closed column.
With that, we have provided an overview of what boards have to offer. In the next section, we are going to look at sprints in more detail.
According to the project template that is chosen, sprints can have a different name. In our Tailwind Traders project, the Agile project template is being used. This changes the name to Iterations. However, Azure DevOps treats these the same as Sprints.
Iterations or Sprints are used to divide the work into a specific number of (mostly) weeks. This is based on the velocity that a team can handle; that is, the rate at which the team is burning the User Stories.
Let's look at the Sprint View in Azure DevOps in more detail:
You can also drag the User Stories to another sprint in here and reprioritize them if needed.
The sprint board is mostly used by the team during daily standups. Items are dragged to different lanes according to the progress that has been made by the team. The team also briefly discusses these items and asks for help with executing or creating them when needed. At the end of the sprint, most of the items will be moved to the Closed column.
In this demonstration, we looked at managing and creating project activities in Azure Boards. In the next and last section of this chapter, we are going to look at queries in Azure DevOps.
You can filter Work Items based on the filter criteria that you provide in Azure DevOps. This way, you can easily get an overview of all the Work Items that are in a particular type, state, or have a particular label. This can be done within a project, but also across different projects.
To create different queries and search for Work Items, perform the following steps:
Important Note
This was a basic example of the search queries that you can create. For more in-depth information, you can refer to https://docs.microsoft.com/en-us/azure/devops/project/search/overview?view=azure-devops.
With that, we have covered the basics of how to run a query to filter Work Items. This concludes this chapter.
In this chapter, we covered Azure Boards in more depth. We started by looking at the different project templates that you can choose from based on the methodology that your organization embraces. Based on that project template, different Work Items are created that can be used for planning the project. These Work Items can be added to backlogs and relationships can be created for a logical view of the project items. They can also be added to sprints.
In the next chapter, we are going to focus on source code management in Azure DevOps.
Check out the following links for more information about the topics that were covered in this chapter:
18.216.83.240