The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
Agile planning with Rational Team Concert
1. Agile Planning with
Rational Team Concert (RTC)
Reedy Feggins Jr
Agile Coach / CSM / WW Solution Architect
rfeggins@us.ibm.com
December 1, 2014
2. 2
Rational Software
Overview
Agile planning is one of the key strengths of RTC
Supported Agile Practices
– Agile Planning (Product, Release and Sprint Planning)
– Whole Team (self-managed teams, sustainable pace,
estimating)
– Shared Vision (Project Transparency)
Demo
– In this webinar, see how to get started with RTC Agile Planning,
as well as tailoring plans to suit your needs
3. 3
Rational Software
Query
Storage
Collaboration
Discovery
Administration:
Users, projects,
process
JAZZ SERVICES
Business Partner
Extensions Your Extensions
Rational Developer for z
Rational Software Architect
Rational Systems Developer
Rational Business Developer
Rational Developer for i
Eclipse Clients Web Clients
Visual Studio
Microsoft .NET Clients Rational Desktop Clients
Rational Team Concert
Web 2.0Jazz Client Extensions
Eclipse Platform
IBM Rational Extensions
Best Practices
Presentation:
Mashups
Rational Team Concert: An open, extensible architecture
Supporting a broad range of desktop clients, IDE’s and languages
4. 4
Rational Software
Rational Team Concert User Interfaces
Feature RTC Eclipse
Client
RTC Visual
Studio Client
RTC Web
Client
SCM Command
Line
Source Control
Yes Yes
View, Upload,
Download
Yes
IDE Integration
Yes Yes No No
Work Item
Management
Yes Yes Yes No
Planning
Yes Yes
(Embedded Web UI)
Yes No
Build
Yes Yes Yes No
Reports Yes
(Embedded Web
UI)
Yes
(Embedded Web UI)
Yes No
Dashboards Yes
(Embedded Web
UI)
Yes
(Embedded Web UI)
Yes No
5. 5
Rational Software
Agile Teams
5
Open Lifecycle and Service Management Integration Platform
Continuously Integrate
Define Vision
Leverage Agile Practices
Rational Team Concert. Integrated by Design
Plan and Track Projects Manage Change
StakeholdersProduct
Owners
The Rational solution for Agile ALM
Integrated capabilities to support your agile delivery needs
6. 6
Rational Software
The Rational solution for Agile ALM
Integrated capabilities to support your agile delivery needs
6
Open Lifecycle and Service Management Integration Platform
Rational Team Concert. Integrated by Design
Agile Templates In-tool Process Guidance
Epics & User Stories
Product Backlogs
Collaborative Source Code Management Multi-level Build Automation
Collaboration & Team Awareness
Leverage Agile Practices
Define Vision
Release & Sprint Plans
Sprint Reviews &
Demos
Retrospectives
Plan and Track Projects Manage Change
Dashboards & Reports
Issues & Tasks
Defects & Risks
Impediments
Continuously Integrate
7. 7
Rational Software
The Rational solution for Agile ALM
Adopt components as your practice matures
7
Rational Team Concert. Integrated by Design
Agile Templates In-tool Process Guidance
Epics & User Stories
Product Backlogs
Leverage Agile Practices
Define Vision
Release & Sprint Plans
Sprint Reviews &
Demos
Retrospectives
Plan and Track Projects
Open Lifecycle and Service Management Integration Platform
Collaboration & Team AwarenessDashboards & Reports
Manage Change
Issues & Tasks
Defects & Risks
Impediments
Collaborative Source Code Management Multi-level Build Automation
Continuously Integrate
Equip your
teams with
Scrum practices
and tools
Add
comprehensive
change
management
Complete the
solution with
collaborative
code and build
automation
Each component
comes with the
capabilities of
Jazz
8. 8
Rational Software
Team advisor for defining / refining “rules”
and enabling continuous improvement
Process enactment and enforcement
In-context collaboration shows team
members and status of their work
Single structure for project related artifacts
World-class team on-boarding / off-boarding
including team membership, sub-teams and
project inheritance
Role-based operational control for flexible
definition of process and capabilities
Jazz Team Server
Integrated stream management
with flow relationships
Component level baselines
Server-based sandboxes
Identifies component in streams
and available baselines
ClearCase connector
SCM (Version Control) Work Items
Defects, enhancements
and conversations
Query results view and share
queries with team or member
Support for approvals and
discussions
ClearQuest connector
Query editor interface
Work item and change
set traceability
Local or remote build servers
Supports ant and command
line tools
Integration with Build Forge
Build definitions for team
and private builds
Build
Agile Planning
Integrated iteration planning and execution
Task estimation linked to key milestones
Out of the box agile process templates
Project Transparency
Customizable web based dashboards
Real time metrics and reports
Project milestone tracking and status
Rational Team Concert – Overview
10. 10
Rational Software
Agile Planning Onion*
• Strategy – defines the vision
associated with a business need or
direction.
• Portfolio – defines the overall product
offering that consists of applications
and tools and
how they integrate.
• Product – defines a product vision
and
outlines the road-map for the product.
Strategy
Portfolio
Product
Release
Iteration
Day
(*) Mike Cohn, Agile Estimating and Planning
11. 11
Rational Software
Agile Planning Onion*
Product – defines a product vision
and outlines the road-map for
the product.
Release – represents a prioritized
backlog of product features that
are committed to be delivered ina
given time period.
Sprint / Iteration – defines short,
fixed-length subsets of releases,
typically 2-4 week time frame.
Day – represents the actions taken
in a day to achieve the iteration
goals.
Strategy
Portfolio
Product
Release
Iteration
Day
(*) Mike Cohn, Agile Estimating and Planning
Agile team plans at the innermost
three levels.
RTC offers support for all these
levels
13. 13
Rational Software
Rational Team Concert (RTC) Plan Definition
• Unified view of Information
– What - Work Items
– Who – Project Area / Team Area
– When – Iteration
• Plans are owned by a team or project and
are associated with an iteration
• Plan content is derived from
All work items which have a Filed Against
value set to a category owned by the Plan’s
team or project and are planned for plan’s
iteration.
• Plans have a plan type, which define the layer
in the planning “onion”.
14. 14
Rational Software
TIP: Named Iterations vs Calendar-based Iterations
Use calendar-based iterations when
individual teams have their own sprint
schedules that differ from other teams
Lowest common denominator is the
calendar
All teams need to reach the same end
point but get there at their own pace
Use named iterations when all teams are
sync’d to the same schedule
NOTE:
•Iterations are displayed and sorted by name
•Iterations with the same names will not be
easily differentiated during selection
•TRICK: Use a naming convention that makes
selection easy!
15. 15
Rational Software
Rational Team Concert (RTC) Planning Support
Process neutral
– Out of box templates (works with Scrum, OpenUp, Formal Project Management)
– Customized templates
No separation between planning/implementing of features and bug fixing
– Both planning and defect management share a common data model
– They are supported in the same tool and are highly integrated
– Plans are in fact a query for work items
Supports:
– Top down planning (project manager, product owner, team leads, …) AND
– Bottom Up (team members) AND
– Plan consolidation (Sprint planning meetings, stand-ups, …)
16. 16
Rational Software
What is a backlog?
The product backlog is an ordered list of "requirements"
that is maintained for a product.
The release backlog is an ordered list of "requirements"
that is planned for the next release.
The sprint backlog is the list of work the Development
Team must address during the next sprint.
– The stories/features are broken down into tasks by the
Development Team
– Tasks on the sprint backlog are never assigned; rather, tasks are
signed up for by the team members
Product ‘Backlog’ iteration
(no dates)
Sprint ‘Backlog’ iteration
Release ‘Backlog’ iteration
TIP: Until a work item is
actively being worked on it is
really on ‘the backlog’ at some
planning level
17. 17
Rational Software
Planning Onion Layer: Product Backlog
• Prioritized feature list
• Plan Views
• Ranked List
• Work Breakdown
• Work Item Types
• Plan items: Work items that are relevant for
planning. Ex: Epics, Stories, etc.
Product
Release
Iteration
Day
• Reports
• How your product backlog is evolving?
• How many items are there on the product
backlog?
• Can we find out how long it would take to
complete the product backlog?
• Top down Planning
18. 18
Rational Software
Managing a Product Backlog
• High-level plan that contains stories not planned for any release or iteration yet
• Targeted for the iteration marked as Backlog Iteration
• Prioritized feature list based on risk,
business value, etc.
• Plan items – include only non execution
items such as Epics and Stories
• Customize with themes,
business value, etc
• Define the Done Criteria
19. 19
Rational Software
Managing a Product Backlog
• Sizing in Story points - rough estimates based on complexity and development
effort
• Ranking - ensure that the most valuable functionality is delivered first
TIP: Plans are an actionable interface. Drag and Drop, in-context
editing and new work item creation are supported
20. 20
Rational Software
Planning Onion Layer: Release Backlog
• Planned/Committed features for the release of the product
• Plan Views
• Iterations
• Ranked List
• Roadmap
• Teams
• Traceability (optional)
• Work Breakdown
• Work Item Types
• Plan items: Work items that are relevant for the
planning. Ex: Themes, Epics and Stories
• Reports
• Team Velocity
All the story points that were 'achieved' grouped by the iteration they were targeted for.
• Release Burndown
Amount of outstanding work for the release, broken down by iteration.
• Top down Planning
Product
Release
Iteration
Day
21. 21
Rational Software
Managing a Release Backlog
• Connects the business value and the execution items.
• Iterations view: holistic view of which stories are planned for which iteration.
• Drag and drop: assign the stories to specific iterations.
• Progress/Load bars: avoid overloading an iteration considering the team's velocity and to
track overall progress.
• Coarse grained: Estimation in size; estimated in relative values such as Story Points, lines
of code, function points, etc.
24. 24
Rational Software
Track progress
• Team velocity: measures a team rate of progress.
• Completing 2 Stories of 5 story points in one iteration gives a velocity of 10
• Good guess is to assume the same velocity for the next iteration
25. 25
Rational Software
Planning Onion Layer: Sprint Backlog
• Tasks planned for the iteration
• Plan Views
• Planned Time
• RankedList
• Roadmap
• Taskboard / Kanban
• Workbreakdown
• Work Item Types
• Execution items: Work items which have work assigned.
Ex: Task and Defect.
• Reports
• Sprint Burndown
Estimated hours required to complete remaining
work items.
Product
Release
Iteration
Day
26. 26
Rational Software
Planning a Sprint
• Focus on Execution: large stories broken down into smaller sub-stories and
execution items
• Fine grained: Estimation of effort: typically estimated in Ideal Hours/Days
• Custom view: Does the execution task rank relate to the business value expressed
on the product backlog?
27. 27
Rational Software
Planning a Sprint …
• Roadmap view: illustrates the schedule of the execution items (e.g. defects and
tasks) and the rolled-up schedule of the plan items (e.g. stories and epics).
28. 28
Rational Software
Planning a Sprint …
• Taskboard view:
• shows plan items in the left column and execution items in the state group columns.
• visualize the progress of the stories and their children.
• ability to adjust the state quickly with drag and drop from this view.
• color tags can be used to show the state of the plan items.
29. 29
Rational Software
Planning a Sprint …
• Kanban
• Define limits (counts or complexity or estimates).
• Deviations from the ideal are shown as a small box in the column header. The further you are from your
ideal, the more red the box gets.
• Shows where capacity is available as well as when capacity limits might be exceeded
30. 30
Rational Software
Planning a Sprint …
• Load Bars : capacity planning
• Do I have enough time to finish all my work in this iteration?
• Progress Bars : track progress
• Considering all my work for this iteration. Where am I now?
Aids in assessment of the health of the Plan
31. 31
Rational Software
Planning a Sprint …
Quality of Planning:
• The more work items you estimate the more precise the work can be computed.
• The quality is excellent if all work items are estimated, it is good if the majority is
estimated, ...
• Visually, the percentage of estimated work items is represented as a fill-level.
• The height of load and progress bars shows how many work items have an estimate.
• If no work item is estimated, the bar is not visible, if all work items are estimated, the
bar is fully visible.
32. 32
Rational Software
TIP: Plans Are Fancy Queries & Queries Answer Questions
Primary query/filter parameters are:
– Owner (i.e. Team)
– Iteration
– Plan item types or all items (Plan & Execution)
Additional parameters for filtering,
grouping and display can be defined in a
Plan View
– Setup views to help answer specific questions
or to draw attention to anomolies
Example:
Verification
View
33. 33
Rational Software
TRICK: Work Item Exclusion vs Inclusion in Plan Views
Plan default is to EXCLUDE work items
based on selected parameters
Behavior is to show only current and
future work, which burns down over time
Show work items
that include
this string
Exclude work
items meeting
this criteria
How many
work items are
not shown
Expression Syntax:
type:Defect [Excludes]
!type:Defect [Includes]
34. 34
Rational Software
TIP: Performance recommendations
Large plans unmanageable
Build simpler view modes (outsource other plan view modes into separate plans and link
them together so that navigation is easier)
35. 35
Rational Software
Planning Onion Layer in Rational Team Concert: Day
• My Work View: Developers plan their assigned work and adjust estimates
• Managing new work
• Managing current work
• Managing future work
• Work Load
• Find, filter, and colorize planned work items
• Daily Stand ups: Developer Taskboard view to see what people are working on.
• Planned Time: Developers sort the work items in the order in which they intends to work on
them
• Bottom Up Planning
Product
Release
Iteration
Day
36. 36
Rational Software
How does an individual developer work during a sprint?
• My work view: in place estimation, feeds, …
• Planned time view: Developers sort the work items in
the order in which they intend to work on them in my work
view.
• Warnings/errors are shown if the work is lagging behind
the schedule
• My work view approximation in the web: Customized
Planned Time View show a specific owner.
37. 37
Rational Software
How does an individual developer work during a sprint? …
• One place to view queries that
impact my work
38. 38
Rational Software
Additional Information
Effective Planning with Rational Team Concert 5.x
–https://jazz.net/library/article/594
Cross-Project Tracking with Rational Team Concert, Version 5.x
–https://jazz.net/library/article/1152
39. 39
Rational Software
Tips & Tricks: Summary
A plan is an actionable interface
Iterations
– Names vs Calendar
Cross project planning
Work Item Exclusion vs Inclusion
Performance recommendations
– Large plans unmanageable
– Build simpler view modes (outsource other plan view modes into separate plans and link them together
so that navigation is easier)
Dashboards
– Dashboard in a plan
– Plan in a dashboard
Additional information:
– Effective Planning with Rational Team Concert 5.x: https://jazz.net/library/article/594
41. 41
Rational Software
Scrum
Get the team off to a fast start with pre-defined project artifacts
Roles, Dashboards,
Plans and Work Items
created
Dashboard populated
with widgets including
burndown, velocity and
plan status
Commonly used Scrum
and development work
items created
42. 42
Rational Software
42
In-Tool Process Guidance
Practice and tool guidance available at your fingertips
Links to process guidance are
provided from within the RTC
work item
Comprehensive Scrum
practice guidance supports
the organization to deliver
consistent results
43. 43
Rational Software
Agile planning linked to execution
Spend your time deciding where to go, instead of determining where you are…
Project
Estimating &
Tracking
Project
Planning
Evolutionary
Plans
Tasks linked
to execution
Real-time Status
Status
Reporting
Business As Usual
Real-time Agile Planning
Ad-hoc estimating and
manually intensive tracking
efforts
Self directed teams
continuously plan their
releases and sprints
Lengthy status meetings and
reliance on email
All team members understand
project status at any given time.
Estimates are integrated into
the planning and tracking
process allowing for continuous
improvement
43
Static plans in spreadsheets
or disconnected tools
SpreadsheetsEmail
45. 45
Rational Software
45
Find all discussions
and decisions
within the related
task, including
instant messages.
Agile team collaboration and team awareness
Collaborate in real-time and in context of project work to maximize progress
Subscribe to work items that
are impact your work
46. 46
Rational Software
Collaborative source code management
Can your tool do this?
Easily suspend and
resume work
Reproduce the exact
workspace of any build
Work in parallel
without making
branch copies
Maintain copy of
workspace on Jazz
server to assure
changes are protected
Personal builds allow
developers to test their
code against the latest
baseline
47. 47
Rational Software
47
Continuous build integration
Keep your builds healthy with Personal, Team and Integration builds
Stream based SCM
allows multi-level
build that scales to
Scrum of Scrums
Teams can see what
builds there are,
inspect build results,
monitor builds in
progress, and request
builds at any time
Developers can compare
builds to quickly
troubleshoot issues
48. 48
Rational Software
48
Full Transparency for Project Stakeholders
Web interfaces allow the team to proactively manage risks
Open Lifecycle Integration Platform
Mini-Dashboard allows
Managers to quickly see and
act on issues or defects that
could jeopardize the release
Track the
throughput or
“velocity” of
project teams
Visibility to which
sprints and
releases are
behind schedule
Track the throughput or
“velocity” of project teams over
time and remaining effort with
“burndown” of projects in flight