supporting agile development with qualitycenter 9 agile_using_qc.pdfpage 8 hp test user group...
TRANSCRIPT
Page 1 November 2008HP test user group – Copenhagen - Denmark
Supporting agile development with QualityCenter 9.2
Using HP Quality Center with Agile Practices
Using QC 9.2 with agile practices
2 November 2008
Agile fundamentals, SCRUM
Agile development in HP
Tool expectations for agile support
Using QC 9.2 for agile product development
Experiences, conclusions
HP Test User group, Copenhagen
Page 2 November 2008HP test user group – Copenhagen - Denmark
The agile manifesto
3 November 2008
Source: http://www.agilemanifesto.org
HP Test User group, Copenhagen
Agile methods and …
4 November 2008
Lean
Scrum
FDD
DSDM
xP
ASD
Crystal
HP Test User group, Copenhagen
Page 3 November 2008HP test user group – Copenhagen - Denmark
… practices
• Scrum− Self-directed and self-organizing teams
− Each iteration (Sprint) scope is totally frozen
− Daily stand-up (the Scrum meeting)
− 30-calendar-day iterations
− Demo to external stakeholders at the end of each iteration
• XP−Whole team
−Pair programming
−Constant refactoring
−Test-driven development
5 November 2008 HP Test User group, Copenhagen
Agile terminology
6 November 2008
Lean-agile
Sprint
BacklogDaily Scrum
Scrum Master
Constant refactoring
Test driven development
Pair programming
Velocity
Burn down
Retrospective
Chicken
Pig
http://www.netobjectives.com/glossary
Product owner
HP Test User group, Copenhagen
Page 4 November 2008HP test user group – Copenhagen - Denmark
Agile terminology – roles
7 November 2008
Lean-agile
Sprint
Backlog
Constant refactoring
Daily Scrum
Test driven development
Pair programming
Velocity
Burn down
Retrospective
http://www.netobjectives.com/glossary
Scrum Master
HP Test User group, Copenhagen
Chicken
Pig
Product owner
Lean-agile
Sprint
Daily Scrum
Scrum Master
Constant refactoring
Test driven development
Pair programming
Velocity
Burn down
Retrospective
Chicken
Pig
Product owner
Agile Terminology – work to be done
8 November 2008
http://www.netobjectives.com/glossary
Backlog
HP Test User group, Copenhagen
Page 5 November 2008HP test user group – Copenhagen - Denmark
Backlog unit
9 November 2008 HP Test User group, Copenhagen
Backlog management
10 November 2008 HP Test User group, Copenhagen
Top Priority
Low Priority
Product
Backlog
Release
Backlog
Sprint
Backlog
Sprint
Result
In- Out Borderline
Page 6 November 2008HP test user group – Copenhagen - Denmark
Backlog management
11 November 2008 HP Test User group, Copenhagen
Top Priority
Low Priority
Product
Backlog
Backlog management
12 November 2008 HP Test User group, Copenhagen
Top Priority
Low Priority
Product
Backlog
Release
Backlog
In- Out Borderline
Page 7 November 2008HP test user group – Copenhagen - Denmark
Backlog management
13 November 2008 HP Test User group, Copenhagen
Top Priority
Low Priority
Product
Backlog
Release
Backlog
Sprint
Backlog
In- Out Borderline
Backlog management
14 November 2008 HP Test User group, Copenhagen
Top Priority
Low Priority
Product
Backlog
Release
Backlog
Sprint
Result
In- Out Borderline
Page 8 November 2008HP test user group – Copenhagen - Denmark
Scrum overview
15 November 2008
Scrum is used widely
in HP since years
HP Test User group, Copenhagen
Agile development within HP
• More than 21% of HP projects use agile approaches
• Several methods in use: xP, Scrum, lean, ..
• Rapidly growing community
• Sponsored by HP corporate
• Training curriculum set up and available across the company
• Experience sharing: forums, webinars and reports
Data from HP agile sig (2006)
November 200816 HP Test User group, Copenhagen
Page 9 November 2008HP test user group – Copenhagen - Denmark
Disclaimer
The following material elaborates
one possibilityhow to develop agile with QC
There are
other waysto do this in QC depending on the needs of agile teams
17 November 2008 HP Test User group, Copenhagen
Tool expectations for agile
Must support key agile practices
Can be tailored to team needs
Can be used by all members of agile team
Must provide progress and value reporting
based on iterations
based on release
July 15, 200818
Page 10 November 2008HP test user group – Copenhagen - Denmark
QC releases and cycles
19 November 2008
Product
Release
Cycle (Sprint)
HP Test User group, Copenhagen
20 November 2008
QC releases and cycles – details
HP Test User group, Copenhagen
Page 11 November 2008HP test user group – Copenhagen - Denmark
21 November 2008
Structure of an agile project
Multi-Backlog handling for enabling Scrum-of-Scrum
First Level contains Backlogs and Cycles
All items are assigned to a specific Release and Cycle
Aggregated Effort for Estimates, Actuals and Remaining
HP Test User group, Copenhagen
Product backlog
22 November 2008
Uniq
ue B
acklo
g O
rder
HP Test User group, Copenhagen
Page 12 November 2008HP test user group – Copenhagen - Denmark
23 November 2008
User Story – definition
• A user story is a software system requirement formulated as one or two sentences in the everyday language of the user.
− User stories are used for the specification of requirements together with acceptance tests in the software engineering method Extreme Programming (XP)
− Less than 3 week of work
Wikipedia May 15, 2006
HP Test User group, Copenhagen
24 November 2008
User Story – how we use it
• A user story is used to organize all development activities that are required in order to produce the desired product.It can be
− A product requirementE.g.: Console runs with Mozilla Firefox web browser
− An internal deliverableE.g.: Investigate use of technology X
− A container for any kind of tasksE.g.: Integrate all component tests into the build
− ….
• Each user story is broken down into tasks
• A user story must be small enough that it can be completed in one cycle
HP Test User group, Copenhagen
Page 13 November 2008HP test user group – Copenhagen - Denmark
25 November 2008
User Story – key properties
• Name− meaningful to give an idea what the user story is about
• Description− understandable by all project members
− leaves no ambiguity about the customer’s expectations and the exact result of the implementation
• Fit Criteria (Acceptance Test):− describes a precise scenario to show that the User Story is working
• Owner:− responsible to manage the user story, ensure it’s properties are set correctly, it is
broken down into tasks and tasks are assigned to owners
• Original estimated effort:− macro level estimate that is done before it is broken down into tasks
• Tasks:− list of tasks that are necessary to create what is described in the user story
HP Test User group, Copenhagen
26 November 2008
User Story - details
High level user
story estimate
HP Test User group, Copenhagen
Modeled as a
requirement type
Page 14 November 2008HP test user group – Copenhagen - Denmark
27 November 2008
Two level planning (at least)
Ta
sk s
ize
User
sto
ry s
ize
Before Sprint Within Sprint
HP Test User group, Copenhagen
28 November 2008
Cycle planning – top down
• High level initial estimates based on user stories before the Sprint begins
User story
estimates
HP Test User group, Copenhagen
Page 15 November 2008HP test user group – Copenhagen - Denmark
29 November 2008
Task – key properties
• Name
− meaningful to describe the task
• Description
− if the name is not self descriptive, explain here in more detail what the task is about
• Owner
− responsible to implement the task
• Effort Estimates
− Original Estimated Effort: detailed original estimate for the task, will never be updated once set
− Current Estimated Effort: overall effort estimate for the task; initially set to the original estimated, but is updated as the owner learns more about the tasks
− Actual Spent Effort: how much is already spent on the task, should be updated daily
− Remaining Effort: is calculated
• Origin:
− How was the task added? As part of the task breakdown of the user story (Planned) or discovered during the work on the user story (Discovered).
HP Test User group, Copenhagen
30 November 2008
Task – in QC
Task modeled as
requirement type
HP Test User group, Copenhagen
Page 16 November 2008HP test user group – Copenhagen - Denmark
31 November 2008
Cycle planning – bottom up
Detailed estimates are based on tasks during Sprint
Detailed estimates
based on tasks sum up
to 56
High level user story
estimate at 40 hours
HP Test User group, Copenhagen
32 November 2008
Original Estimated Effort: Manual Entry
Current Estimated Effort: Calculated (sum of Tasks)
Actual Spent Effort: Calculated (sum of Tasks)
Remaining Effort: Calculated (sum of Tasks)
Story Level
Original Estimated Effort: Manual Entry
Current Estimated Effort: Calculated (sum of User Stories)
Actual Spent Effort: Calculated (sum of User Stories)
Remaining Effort: Calculated (sum of User Stories)
Cycle Level
Original Estimated Effort: Manual Entry
Current Estimated Effort: Calculated (sum of Cycles)
Actual Spent Effort: Calculated (sum of Cycles)
Remaining Effort: Calculated (sum of Cycles)
Release Level
Original Estimated Effort: Manual Entry
Current Estimated Effort: Manual Entry
Actual Spent Effort: Manual Entry
Remaining Effort: Calculated
Task Level
Effort estimation and calculation
HP Test User group, Copenhagen
Page 17 November 2008HP test user group – Copenhagen - Denmark
33 November 2008
Effort aggregation
All items are assigned to a specific target Release and Cycle
Aggregated Effort for Estimates, Actuals and Remaining
HP Test User group, Copenhagen
34 November 2008
Sprint burn-up
Available via Integrated QC Excel Reporting and QC BTO Project Dashboard.
Effort to burn down
Sprint Start Sprint End
HP Test User group, Copenhagen
Page 18 November 2008HP test user group – Copenhagen - Denmark
35 November 2008
Release burn-up
HP Test User group, Copenhagen
36 November 2008
Built in coverage by cycle
2 Filters need to be aligned!
Coverage and View Filter
HP Test User group, Copenhagen
Page 19 November 2008HP test user group – Copenhagen - Denmark
37 November 2008
Quality user story – fixing defects
Work left
HP Test User group, Copenhagen
Experiences
• Team experience with agile has a large impact on the tool customization
− Start simple
− Grow structure and process
• Quality Center has a solid base to start agile
• Quality Center allows flexible adaptations
November 200838 HP Test User group, Copenhagen
Page 20 November 2008HP test user group – Copenhagen - Denmark
39 November 2008
QC agile support for HP Software
• Introduced types: User Story and Task
• Effort calculation
• Backlog organization− automatic inheritance of key values in tree via drag & drop
− backlog reordering
• Reports (project dashboard & Excel report generator)
− Efforts per Engineer
− Sprint Burn-up graph
− Release Burn-up burn-down
− Cycle progress
− Release progress
• Framework supports − story points
− real efforts
− scrum of scrum (multi team development)
HP Test User group, Copenhagen
Summary: QC agile support
Must support key agile practices
E.g. Scrum: Sprint, Backlog, User story
Can be tailored to team needs
Tasks, estimation, planning, spent hours
Can be used by all members of team
Product manager, project engineers, system tester …
Must provide progress and value reporting
Project and sprint progress via burn-up charts, coverage
November 200840 HP Test User group, Copenhagen
Page 21 November 2008HP test user group – Copenhagen - Denmark
Thank you!
Q&A
November 200841 HP Test User group, Copenhagen
Supporting agile development with QualityCenter 9.2
Gerald Heller, HP Software, [email protected]
December 1st, 2008: [email protected]
Page 22 November 2008HP test user group – Copenhagen - Denmark
Backlog – cycle planning and tracking
1. Initially estimate effort based on User story
2. Add tasks to User story
3. Add details to tasks
4. Estimate the tasks(original estimate)
5. Track spent effort on task level
43 November 2008 HP Test User group, Copenhagen