- 11.1 Defining Agile Development
- 11.2 Agile and Scrum in a Nutshell
- 11.3 Realization with Rational Team Concert
- 11.4 Realization with ClearQuest
- 11.5 Agile with the ALM Schema
- 11.6 Resources
- 11.7 Summary
11.3 Realization with Rational Team Concert
Out of the box, Rational Team Concert has a process template that enacts the Scrum process. This chapter will discuss what Scrum is in terms of how Rational Team Concert realizes it. By using a tool's out-of-the-box process, your organization can be more Agile, as you will spend less time designing, creating, and testing a custom solution. Within Rational Team Concert, the Scrum project starts with a definition of all the items that the system should include and address, including functionality, features, and technology. These items are called stories. Rational Team Concert has built in an Agile planning feature through its Web interface. The lists of stories are presented in a product backlog plan. This plan interface is the main focus during the team planning meeting to decide what to work on in the first sprint. The product backlog list is shown in Figure 11.3.
Figure 11.3 The product backlog of Release 2.0
The user stories can be submitted by any team member, affected users, or stakeholders. They are submitted against the backlog category and will show up in the product's backlog plan and are not assigned to any individual yet. The story content is elicited from various sources. A work item of type Story is shown in Figure 11.4.
Figure 11.4 The Story work item
The product backlog is dynamic; it changes and evolves as the project advances. Certain items may become more important than others during a sprint. Sometimes this process of prioritizing is called ranking. With Rational Team Concert you can easily drag stories around to rank them relative to their position in the list. You also get a visual display of unranked items. All stories should be ranked to make sure they are not missed. A product backlog ranked list is shown in Figure 11.5.
Figure 11.5 Ranking user stories
Within Rational Team Concert you have the ability to attach complexity of effort to a story. The attribute of the Story work item used to convey complexity is Story Points. The larger the Story Points, the more difficult it will be to implement the Story.
In Rational Team Concert you can set up multiple teams working on multiple releases; each release plan has its own current sprint (see Figure 11.6).
Figure 11.6 Sprints of different releases
Figure 11.7 shows the backlog and the sprints (iterations). The backlog contains a list of work items (in this figure of type Story) that should be assigned to teams in a specific sprint.
Figure 11.7 Release 2.0 backlog showing iterations
In Rational Team Concert you facilitate sprint planning meetings by simply dragging and dropping a story from the product backlog to your sprint; this is shown in Figure 11.8.
Figure 11.8 Assigning stories from the product backlog to a sprint
Rational Team Concert can easily show a plan of any iteration. Once a team creates its Sprint backlog, it can be easily communicated and worked further through the Web planning interface of Rational Team Concert. Figure 11.9 shows sprint backlog stories ordered by priority.
Figure 11.9 The sprint backlog
Through the use of Rational Team Concert's Agile planning through the Web interface, you can easily create child tasks from a story. You can drag and drop tasks to make them children of stories, and promote and demote them as needed; this is demonstrated in Figure 11.10.
Figure 11.10 Working with the sprint backlog
In order to make sure work gets done, you want to assign tasks to individuals. Rational Team Concert supports Agile assignment of work through drag and drop, making it easier to use the tool to run a sprint planning meeting. As you are assigning work to people, you can also easily enter the amount of task time remaining. This is used to calculate the burndown metric. This work breakdown view of the backlog and the progress bar is shown in Figure 11.11.
Figure 11.11 Assigning tasks to individuals
Within Rational Team Concert, the Scrum Master role and the other Scrum roles are part of the out-of-the-box process supporting Scrum as shown in Figure 11.12. The administrator can define new roles as required.
Figure 11.12 Process roles in Scrum
In Rational Team Concert's Scrum process, impediments are implemented as work items and follow a workflow of open resolved, so they can be submitted, assigned, and managed just like any other work item. Rational Team Concert also provides another useful view for Agile planning through the Web interface called the Developer Taskboard. This view is perfect for the Daily Scrum Meeting as you can easily see what team members are working on, what they have completed, and other data. The Developer Taskboard view is shown in Figure 11.13.
Figure 11.13 Using the Developer Taskboard in the Daily Scrum Meeting
Another Agile communication vehicle within Rational Team Concert is the dashboard. This is a way that stakeholders and executives can keep informed on the progress of any project. Much of the information contained within Rational Team Concert can be presented easily through feeds to a dashboard. Any Rational Team Concert user (assuming the user has authorization) can set up a dashboard to collect and present items of interest. A sample Rational Team Concert dashboard is shown in Figure 11.14.
Figure 11.14 Project dashboard showing real-time status of events of interest
One of the types of work items that Rational Team Concert supplies out of the box in the Scrum process is a retrospective. You use this work item to log and track the issues that you discuss during the Sprint Retrospective.