This tutorial walks you through creating, configuring and using Agile board in YouTrack for your project when you follow Scrum.
Scrum is about developing features in a project step by step, approaching the product release with smaller pre-releases, with each of them implementing specific features of the resulting product. The features are also known as user stories.
A product owner in Scrum negotiates a schedule for product releases. Each release has to meet a deadline. The period between the development start and the deadline is divided into smaller periods, usually two weeks each, and the periods are called sprints. Each sprint results in a pre-release of the product.
Every project in YouTrack has issues: bug reports, feature requests, tasks, etc.
You can view project issues in two ways: by looking at the issues list or at the Agile board. The cards on the board represent the same issues, and are just another view on the issues, complementing the issue list. Agile board gives you a better visualization of the current project state and its progress.
If there are feature requests (user stories) in the project, you can organize the issues hierarchically, with parent issues representing features and child issues representing particular tasks essential to implement the features.
You can have YouTrack show features as swimlanes, i.e. horizontally oriented areas on the board where underlying tasks are posted as cards.
Click the Agile Boards link at the top of YouTrack screen, then click the Create button. Choose which projects the board will belong to. You can specify an optional query to filter the cards on the board if needed, and/or define visibility settings.
Agile board has its own visibility settings which take over general project visibility permissions. If the 'Visible for' parameter is configured as 'Project based,' a user must have access to the project(s) to have access to the board. If the 'Visible for' parameter is set to the user group, a user must have access to the project(s) and be a part of the selected user group.
If you do not see settings on the screen, click the Agile Settings button in the top right-hand corner of the board, and then choose the field to represent the columns on the board. By default it is the ‘State’ field, but you can customize it. The values of the field will be used as column titles, thus the field has to be an enumeration.
You can limit a set of columns to be visible, selecting the checkboxes next to the column titles in the settings.
Sprints are configured via the ‘Fix versions’ field or another (custom) field of ‘Version’ type. The pre-releases that are to be built at the end of each sprint have a version. It's assumed that the version is the value of the ‘Fix versions’ field. When you create a new sprint, a new value is added automatically to the value set, and an issue can have this value in its ‘Fix versions’.
This means that you can add a new sprint and start planning it, adding more issues to the sprint by setting the ‘Fix versions’ field equal to the planned sprint name.
You can set the color for each column individually. Hover over the column and click the gear-shaped settings icon that appears in the right-hand corner of the column title.
In the settings dialog for the column, choose a color for the column:
There are two ways to color cards. The simple scenario is to have them colored depending on the value of one of the fields, for example, project or priority. If the card represents a critical task, it's red; if it has regular priority, it's green. To implement this, configure the Priority field to have color values from Administration > Project > Fields:
You can use this approach for any field of Enumeration type (i.e. a field having a limited set of possible values).
You may, on the other hand, want to have cards colored depending on various conditions, such as approaching deadline (the closer the deadline, the deeper the red color of the card). In that case please refer to the tutorial How to Create Workflows and Rules for YouTrack. You will need to program a logic you need with workflow language, and then have the card colored automatically as needed.
Some teams use large TV screens to display their Scrum board at their daily stand-up meetings. Darcula, a board color scheme with a dark background, has proven to look better on TV than the standard color scheme with white background.
To switch your Scrum board's color scheme, look for the setting in the upper right-hand corner of the screen:
Sprints are usually two weeks long. To create a new sprint, click the New button next to the progress bar, when the board shows "Unscheduled" tasks, then select the start and end dates for the sprint.
Alternatively, click the calendar button next to the sprint’s name, and click the New sprint link located on the bottom left of the dialog window:
Alternatively, you can create a sprint by clicking the Create button at the top of the page, and choosing Sprint in the drop-down menu.
Swimlanes in YouTrack can represent features or user stories, or attributes (e.g., Priority, if you wish to see one swimlane per each possible Priority, such as Minor, Normal, Major, and Critical).
By default, swimlanes are issues that have a Feature type. In principle, you can configure the Agile board to make swimlanes grouping issues differently; however, following Scrum assumes you keep this setup.
To create a new swimlane on the board, drag it from a backlog or just create it with Ctrl+Alt+Shift+Insert. You can also click the Create button at the top of the page, and choose what to create---a new Agile board, Sprint, Swimlane, or Task.
Alt+Insert is the most common way of creating a new task (i.e. a card) on an Agile board in YouTrack.
Creating a new issue in the issue list may create a new card on the Agile board, depending on how the board is configured. Please note that not all issues are always seen on the board, as their visibility depends on the board configuration (including the visible columns, the query used to filter cards for the board, and permissions for the board and the project) and the current view (the sprint showing on the board).
When you create a new task from the board, you actually create an issue of the type Task which will be visible both on the board and in the issue list.
You already know how to create a sprint, so now you can start planning it, i.e. fill the sprint with tasks to be completed during the sprint.
You can create tasks with Alt+Insert on the board displaying the tasks for a particular sprint. If any unresolved tasks remain from previous sprint, you can move them to the current sprint.
When you click a calendar button and then click the "New sprint" link, a new dialog offers you to choose the start and end date for the sprint, along with the option to move unresolved tasks to it. The previous sprint is offered as a source for unresolved tasks, but you can choose another if one exists.
To get a feature from the backlog and drag it to the board, click the backlog icon to the left of the board to open the backlog.
The items here can be features or tasks. Both of them are draggable to swimlanes. If you drag a feature to the board, and the board is configured to have swimlanes representing features, then a new swimlane will be made. If you drag a task rather than a feature, no new swimlane will be made, but you will be able to put the task to any swimlane on the board.
When you move a feature from the backlog, and the feature already has some tasks in it (they are child tasks, included in the feature), the new swimlane will be made, and the tasks will be visible on it. You may wish to reload the page in your browser if the board did not show the change after you created a new swimlane.
If the feature from the backlog is not yet broken down into smaller tasks, it's a good time now to do that. Create tasks within the swimlane (use Alt+Insert to create a new task).
In classic Scrum, real time tracking (in real hours) is not typically used to make estimations for your tasks and features. But if you want to do that, you can enable Time tracking for a Scrum project in YouTrack as an additional option, which provides you with spent time and remaining effort tracking.
When Time Tracking is enabled and estimation field is set up, Agile board shows estimations on the board. To set up Time Tracking, please refer to detailed instructions in the tutorial Time Management in YouTrack.
An estimate for each particular issue can be seen at the project’s Agile board (on each card), and the total estimation is shown for each column of Agile board next to the column title:
Agile board also shows total Estimation for the whole project (next to the project title, in the upper left-hand corner of the board), and for the swimlane if you are using swimlanes. Estimation is red if spent time exceeds the estimation. Otherwise, the Estimation circles are partially green in proportion to how much of the estimated time has been spent.
Hover over the estimation indicator on the Agile board for a while, to see a small bubble showing the time spent:
If estimations were not set for some of the tasks, they may have an estimation time equal to zero, which would make the total count inaccurate. To avoid this, try to always enter the estimation time for each card.
The board shows the cards with assignees' avatars (if they are present in the user profiles). Therefore, you can take a quick glance over the board and see who is doing what.
Unassigned tasks have no icons or avatars in the respective cards on the board.
As soon as a task is completed, you move the corresponding card to the ‘Done’ or ‘Fixed’ column, depending on your preferred name for the state of resolved tasks. When all tasks within a feature are done, and the cards occupy the last column on the board, you may wish to have the swimlane get automatically fixed.
If you need swimlane fix automation, download and attach jetbrains-youtrack-subtasks workflow from workflow repository to your project. For more details on workflow please refer to Custom Workflow Tutorials and What Is a Workflow and Why You Should Care in particular.
If time management is enabled in your project, you should log the time you have spent for each task. There are two options to log time.
First, select a card on the board and start typing "add work". Command auto completion will suggest what to write next. After you apply the command, the time will be logged for this task.
Alternatively, click the issue represented by the card and then log time on the Time Tracking tab.
Agile board shows the progress with circles that follow each task title in the swimlane, the swimlane title for the total value for the swimlane, and the project title for the whole project.
Red circle means the task, swimlane or sprint is overdue; green sectors indicate partial progress. For examples, see pictures above in Estimate time of the tasks and swimlanes.
The progress bar shows the distribution of issues among different columns.
The colors in the bar correspond to column colors, which you can set in the column’s settings (see the Board Columns Color section above). Note that it is combined with a sprint selector, meaning you can select another sprint to show it on the board by clicking on the progress bar and choosing the sprint you need.
The percentages shown below are calculated as a ratio of the total number of cards on the board.
You can collapse swimlanes when you no longer need them (e.g. after all tasks in the swimlane are completed).
Click the minus sign to the left of the swimlane to collapse it (expandable back again by clicking the plus sign).
Burndown chart compares ideal and real effort remaining to complete a sprint.
In YouTrack, Burndown chart for a sprint follows the principles of Scrum burndown.
Ideal burndown is a line from the total sum of all tasks' estimates to the zero estimates at the end time of the sprint. If no estimation is specified, ideal burndown is created based on the total number of sprint tasks.
Remaining effort graph shows the actual amount of remaining estimates or the number of incomplete tasks. To be precise, if time tracking is enabled, the remaining effort on each particular day for each particular issue is the estimation minus spent time. However, if spent time is equal or greater than estimation (i.e., something is overdue), remaining effort is set to zero so that it never becomes negative. If a task was fixed quicker than estimated, the remaining effort for it is counted as if it were fixed as estimated.
Spent time graph is displayed only when time tracking is enabled for one or more projects associated with the current board. This graph shows the actual time spent by the team and the number of work items logged by the team for sprint tasks.
In YouTrack burndown chart can take weekends into account. If your team does not work on weekends, you can exclude weekends from the chart.
You can define the days your team works by using Settings | Project | More settings | Time Tracking.
By default, Saturday and Sunday are designated as the weekend. Feel free to configure your project differently if you work schedule is different from this.
Creating the burndown chart is easy. Click the Charts icon on the Agile board:
A new burndown chart will be created. If time management is not enabled in your project and no estimation is set for the tasks, burndown chart takes only the number of tasks on the board into account:
Horizontal regions in the ideal burndown are weekends, when no work has to be performed.
If time management is enabled in your project, you can make a burndown chart with time metrics as well. Ideal burndown shows the estimation for the current sprint, while remaining effort shows how much time is needed to complete the sprint (if the estimation was accurate), and Spent Time graph shows how much time is already spent.
Ideal burndown graph is an ideal distribution of spent time on the sprint period. It assumes you spend equal time every day on the project proportionally to the number of days in the estimation. Ideal burndown assumes that you do not work on weekends.
Spent time graph is literally the total time spent each day on all tasks you worked on that day.
Remaining effort graph is a bit more complicated. The remaining effort on each particular day is the estimation minus spent time. However, if spent time is equal or greater than estimation (i.e. something is overdue), remaining effort counts it equal to estimation. If a task was fixed quicker than estimated, the remaining effort for it is counted as if it were fixed as estimated.
Sprints shown on the chart may be completed or incomplete. A completed chart means all tasks were resolved before the sprint end. An incomplete sprint means it continues after the planned sprint end. However, the best practice is to carry over all unresolved tasks to the next sprint. This is why YouTrack limits the burndown chart: the graph ends on the last day of the completed sprint, or, for incomplete sprints, is extended by up to 1/2 of the sprint time.
The graph above shows what happens if tasks are not resolved before the planned sprint end: the graph shows effort overdue, which effectively extends the line of remained effort. As is clear from the graph, ideal burndown shows the planned sprint end.
If the sprint is completed on time, the remained effort and ideal burndown graphs converge when the sprint ends.
Thus, you can observe the sprint progress at any time, checking to see if the actual work is close to the estimation.