Configuring agile boards

Now that we have seen how to use JIRA Software to run both Scrum and Kanban projects, let's take a look at how to customize our agile board. Since JIRA Software is built on top of JIRA Core, many of its customization options leverage the core features of JIRA. So if you are not familiar with some of these features, such as workflows, do not worry, we will cover these in high level in context of agile board, and dive into the details of each in later chapters.

Configuration columns

For both Scrum and Kanban, the board's columns are mapped to the workflow used by the project and the default workflow created is very simple. For example, the default Scrum workflow contains three statuses: To DoIn Progress, and Done. However, this is often not enough, as projects will have additional steps in their development cycle, such as testing and review. To add new columns to your board, follow these steps:

  1. Browse to your project's agile board.
  2. Click on the Board menu and select the Configure option.
  3. Select the Columns option from the left navigation panel.
  4. Click on the Add Column button.
  5. Enter the name for the new column and select its category. Generally speaking, your new column would fall into the In Progress category, unless you are replacing the To Do or Done column.
  6. Drag and drop the new column to place it in the correct location within your development workflow.

For projects using the workflows created along with your new project (also known as Simplified Workflow), this is all you need to do to customize your columns. If you have an existing workflow and want to adapt your columns to that, we will cover workflows in Chapter 7Workflow and Business Process.

Configuration columns

Setting up column constraints

In the previous Kanban section, we discussed that one of the key aspects of Kanban is to control the amount of work.

Tip

While work constraint is a concept used in Kanban, sometimes people also adopt it with Scrum. This allows you to use Scrum for planning and Kanban for execution in a hybrid methodology called Scrumban.

To set up column constraints for your agile board, perform these steps:

  1. Browse to your project's agile board.
  2. Click on the Board menu and select the Configure option.
  3. Select the Columns option from the left navigation panel.
  4. Select how you want constraint to be calculated in the Column Constraint option. By default, Kanban board will use the Issue Count option, while Scrum board will not have any constraint.
  5. Enter the minimum and maximum value for each of the columns you want to apply constraint to.

You do not have to set both the minimum and maximum for a constraint. Consider our example shown in the following screenshot, where we have set the constraint for Selected for Development to be at least three issues and no more than 10 issues. For the In Progress column, we have only limited it to be no more than five issues, but there is no minimum vale, meaning it can have no issues at all. We also placed a maximum limit of 15 issues for the Done column, so we can be alerted when the team has reached the threshold of completed issues and a release needs to be made:

Setting up column constraints

After you have set the column constraints for your board, every time the rules are violated, JIRA will immediately alert you on your agile board. For example, in the following screenshot, we have two issues in the Selected for Development column, which has a minimum of three issues, so the column is highlighted in yellow. In the In Progress column, we have six issues, and since it has a maximum limit of five issues, the column is highlighted in red.

Note that while JIRA will highlight the columns when a constraint is violated, it does not actually stop you from breaking the constraints. It is simply a way to alert the team that something has gone wrong in the process and it needs to be reviewed and corrected:

Setting up column constraints

Configuring swimlanes

As we saw in earlier sections, JIRA's agile board lets you group similar issues together in horizontal rows called swimlanes. Unlike columns, which are mapped to workflow statuses, you can define swimlanes based on any criteria, including custom fields you have added yourself. To set up swimlanes for your board, you need to perform the following steps:

  1. Browse to your project's agile board.
  2. Click on the Board menu and select the Configure option.
  3. Select the Swimlanes option from the left navigation panel.
  4. Select how you want to define your swimlanes in the Base Swimlanes on field.
  5. If you choose the Queries option, you will need to define the query for each swimlane you want to add to the board.

There are five options when choosing how swimlanes will be defined:

  • Queries: Swimlanes will be based on the JQL queries you define. For each swimlane, you need to define the JQL query that will return the issues you want for the swimlane. Issues that match more than one query will only be included in the first swimlane. JQL will be covered in Chapter 10Searching, Reporting, and Analysis.
  • Stories: Swimlanes will be based on user stories. Subtasks that belong to the same story will be displayed in the same swimlane.
  • Assignees: Swimlane will be based on each issue's assignee. Issues with the same assignee will be grouped in the same swimlane. The sample Scrum board we have shown in the Scrum section uses this option.
  • Epics: Swimlanes will be based on epics each issue belongs to. Issues in the same epic will be grouped into the same swimlane.
  • No Swimlanes: The agile board will not be using swimlanes, all issues will be grouped together in one single row.

As shown in the following example, we are using the Queries option and we have defined two swimlanes (and the default Everything Else lane). For the JQL query, we are searching based on a custom field that we have created called Source to determine whether the feature request comes from a customer or as a result of an internal review. Custom fields will be covered in Chapter 5Field Management.

As you can see, there is lot flexibility when it comes to configuring your swimlanes, and with JQL, we can define any arbitrary rule for our swimlanes.

Configuring swimlanes

Defining quick filters

By default, your agile board will display all issues. For Scrum, it will be all issues in the sprint, and for Kanban, it will be all issues that have been released. This can be quite distracting when you want to hone in on specific issues, such as top priority ones. While swimlanes can help with that, having too many issues on the board can still be very "noisy".

One useful feature JIRA has is that you can create a number of predefined filters for your board. With these, you can quickly filter out the issues you do not care about and only have the issues that matter to you shown on the board. Note that this does mean the other issues are removed from the board, they are simply hidden from view.

JIRA already comes with two built-in quick filters, called Only My Issues and Recently Updated. You can create your own by following these steps:

  1. Browse to your project's agile board.
  2. Click on the Board menu and select the Configure option.
  3. Select the Quick Filters option from the left navigation panel.
  4. Enter a name for the new filter and the JQL query that will return the filtered issues.

In the following example, we are creating a new filter called Customer Requests and using the JQL to search for issues with Source field set to Customer:

Defining quick filters

After you have added your new filter, it will be displayed next to the existing ones, ordered alphabetically. Clicking on the filter will immediately filter out the issues that do not fit the criteria. You can also chain filter the issues by selecting multiple filters, as shown in the following screenshot. We have enabled both Customer Requests and Recently Updated filters to get a view on recently updated customer requests:

Defining quick filters

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset