Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
1
How Agile Works Agile defined…
Agile ‘Process’
Breaks work into chunks
Prioritize chunks by business value
Builds highest value chunks in a time-boxed
iteration called a Sprint
Delivered chunks are working, ready to be
deployed software
Deployed when stakeholder says there is
enough business value to go to market
Agile Manifesto
We are uncovering better ways of developing
software by doing it and helping others do it. Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive docs
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
www.agilemanifesto.org© 2001
2
Agile ‘process’Agile ‘Process’Key Ideas in Agile
From Ron Jeffries
Key Ideas in Agile
Putting people with needs in direct
contact with people who can fulfill those
needs
Populating projects with all the needed
people and capabilities to get the job
done
Building work incrementally and
checking results as you go
Key Ideas in Agile
Preparing for and influencing the future but not predicting it
Making tasks concrete and quickly finishing them
Giving people work to do and the knowledge to do it, not pushing them around like pawns on a chessboard
Focusing on providing value frequently and rapidly, not solely on cost
3
Scrum
Release
Backlog
Scrum on a Page
Roles
Product Owner
ScrumMaster
TeamStakeholders
Artifacts
Meetings
Product
Backlog
Release
Backlog
Sprint
Backlog
Blocks
List
Information Radiator
Sprint
Planning
Daily
Scrum
Sprint Review
Meetings
Concept inspired by William Wake’s “Scrum on a Page,” http://xp123.com/xplor/xp0507/index.shtml
ReleasePlanning
ProductPlanning
Definitions
Who does what?Roles and Responsibilities
Stakeholders
Input to product business objectives
Product Owner
Defines the ‘what’ and ‘why; checks team
addresses the problem completely
Delivery Team
Owns the solution
Scrum Master
Help Product Owner Team and Delivery Team
work together
4
Anyone who
can give input
to the business
objectives of
the product.
Stakeholders Types of Stakeholders
Principals Champion the need for your software and
have the authority to acquire and deploy it.
End Users Personally interact with your software.
Partners Make your product work in real life, such
as operations teams and also business
partners and system integrators.
Insiders Are in your own organization; such as
developers, support engineers, sales,
architecture, and marketing teams.
Get inside
consumer’s mindOutside In Development
Understand your stakeholders
Align with stakeholder goals
Define success in your stakeholders’ terms
Understand organizational context
Make products consumable
- Outside-in Software Development, Carl Kessler and John Sweitzer
5
The customer is always moving, changing,
and if you’re not out there all the time trying
to understand the functional and emotional
needs of consumers, your design will simply
fall flat.
- Matthew May
“
“
Product Owner
Builds the roadmap and prioritizes features in
collaboration with:
Business Leaders
Stakeholders
Scrum Master
Functional representatives from the team
Interfaces with the Product Manager
Owns the product and release backlog but
does not decide alone what is in it and how
it’s prioritized
Organizes and facilitates product planning
sessions with Product Manager,
stakeholders and team to generate themes
and epics
Product Owner Does What?
Organizes and facilitates the release
planning session with stakeholders and
team to generate the user stores
Attends the Sprint planning session to
answer any team questions
Does not decide what is in the Sprint
backlog
Connects team with customers
Product Owner Does What?
6
Product Owner Does What?
Clarifies questions from team from a
business point of view
Removes blockers from business view
Should attend the retrospective when
invited.
The product owner does not manage the
team. They manage themselves.
PM? PO?
PMs and POs form a team.
They have responsibilities to serve the
delivery team.
They collaborate on how to meet these
responsibilities.
Must always meet the 20 minute rule.
Product Owner Responsibilities
Assess product opportunities
Define the problem from the
customer and user point of view
Do NOT define the solutions
Do NOT take delivery responsibility
from the team
Scrum Master Does What?
Facilitates Sprint Planning, Retrospectives
& Daily Standups
Is the conscience of the team
Keeps blocked list and solves blocking
issues with and for the team
Makes sure the team has what they need to
succeed
Keeps the information radiator up to date
7
Is not a project manager
(Team manages itself)
Does not have authority over the team
(Team makes decisions)
Always asks the question:
“How are the Product Owner and the Team doing?”
Challenges the organization,
Plays a key role in the change
Scrum Master Team
Add self organizing and ownership bits here.Teams
Unleashing Innovation
Collaboration Process
Exercise1. Form pairs
2. Assign one as boss, the other as worker
3. The boss can give the following commands:
Go, Stop, Right, Left, Faster, Slower
4. The worker must follow the boss’s
commands
5. Goal: 60 steps in two minutes, circle the
room at least once
6. The boss can command the worker, but
can’t touch the worker
Quick Exercise (A)
8
1. Everyone is a worker and responsible for
figuring out how to proceed during the
exercise
2. Goal: 60 steps in two minutes, circle the
room at least once
Quick Exercise (B) Unleashing Innovation
Collaboration Process
Exercise
Retrospective
Leadership, management, and team
involvement very different:
Encourages a collaborative
environment
All roles support one another
Everyone stands and falls
together
“Self Directed” or “Self Organizing”
stakeholdersmarketing
sales
line of business
delivery team
( dev & test & …)
architecture
support
Whole Team Concept
9
Whole Team: Involved but not personally
committed to delivery May be involved in planning
& retrospectives May observe daily standups
Delivery Team: Committed to delivery Active participants in planning &
retrospective Active participant in daily
standup
Whole Team
Delivery Team
Whole Team and Delivery Team
Takes ownership of delivery
Identifies and removes obstacles
Estimates the “bigness” of the user stories
Decides what stories should be completed in the sprint
Delivers “done, done, done” stories
Keeps technical debt low
Helps each other succeed
Holds each other accountable
Improves their process
Delivery Team Does What?
When you're in a ‘trusted’ environment,
teams tend to innovate better, more
quickly and overall transaction costs are
much lower.
“ “
Sue McKinney
Create a Trusting Environment
Command &
Control
Team Does as Instructed
No Ownership
Leader / Process
is Bottleneck
Conflict
Team Demotivated
Mired in Bureaucracy
& Wasted Effort
Energy &
Innovation
Team Trusted
Team Accountable
Leader Freed
Failure
No One Cares
HighTeam/Individual Ownership
Control
Trust
Low
Le
ad
ers
hip
& B
us
ine
ss
Pro
ce
ss
Trust and Ownership Model
10
Leader’s View
The team won't let me down
The team understands what we need
They will do the right thing
They will tell me if they need help
Requires a Trusting Environment
Individuals within the Team
We understand the vision and the need
We are jointly committed to meeting our
goals
We stand or fall together
We have ownership
Requires a Trusting Environment
Business Owner
Stakeholder
Product Owner 80%
Interaction Designer 20%Developer / Arch 20%
Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint n
Continuous Innovation
Product Owner 20%
Interaction Designer 80%Developer / Arch 80%
Discovery Team
Responsible for
continuous innovation
Works ahead of the
delivery team
May be temporary
Set up when needed
Disband when not
needed
Discovery Team
11
Dev
Product Owner
Discovery TeamProduct Manager
Product StrategyProduct RoadmapLaunch Readiness
Product Backlog Release Backlog
Drives Continuous Innovation on Project
Sprint Backlog
Scrum Master, Developers and Testers
ArchitectUX Developer
Delivery Team
Agile Organizational Structure
Dev
Product Owner
Discovery TeamProduct Manager
Product StrategyProduct RoadmapLaunch Readiness
Product Backlog Release Backlog
Drives Continuous Innovation on Project
Sprint Backlog
Scrum Master, Developers and Testers
Development Manager
External UnblockingResource Management
ArchitectUX Developer
Delivery Team
Program Manager
Agile ReadinessRisk, Dependency and
Interlock Mgmt
SYM Organizational Structure
Program Manager
Ensures team readiness
Ties business processes together
Ensures business processes and systems
support engaged
Works with Development Manager to:
Identify and mitigate
dependencies and risks
Ensure interlocks are
well understood
Process optimization
Program Manager Role Development Manager
Ensures Delivery Team is connected to
customers
Facilitates team resource management,
dependency management, team interlocks,
and syncing of sprints
Collaborates with Scrum Master on agile
process optimization
Provides development Test Tools and
Systems.
Focuses on sprint risks.
Development Manager Role
12
Release PGM
Focuses on release
risks.
Works with
Development
Manager on agile
process optimization.
Facilitates
Stakeholder meetings.
Release PGM Role Launch PGM
Tying all the business
processes together to
get to market.
Ensures all business
processes and
supporting systems are
engaged for the
release.
Manages the Launch
PGM checklist.
Launch PGM Role
Agile @ Scale
Product Manager
Program Manager
Delivery Team 1
Delivery Team 2
Delivery Team n
Product Owner 1
Dev. Manager 1
Delivery Team n+1
Delivery Team n+2
Delivery Team n+m
Scrum of Scrums
Product Owner 2
Dev. Manager 2
Product Team
PDT Leader
(Product
Manager)
Stage Gating
Services
Customers
Marketing
Development
Support
FinanceSales
IT
Reporting
Stage Gate
UpdatesProject Status PMTEngineering
13
BnR Agile @ Scale
Definitions
Roles
Summary Stakeholders: give input on the product
business objectives
Product owner: facilitates understanding
and prioritizing based on business value
Scrum Master: ensures that the team is
functional and productive
Team: self-organizes to get the work done
Roles in a Nutshell
14
Your
Questions?
Roles
Where are my
requirements?
Leading Agile
Collaboration Model
Collaboration Process
User StoriesUser Stories Two Kinds of User Stories
Epic User Stories (aka Epics)
• High level features of a product
• Fit into a release
• All epics form the Product Backlog
User Stories
• Breakdown of Epics into smaller features
• Fit into a sprint (iteration)
• User Stories form Release Backlog
15
What does a
user story look like?
User Story Defined
A concise, written description
of a piece of functionality
that will be valuable to a stakeholder.
As a <role>,
I can <goal>
so that <business value>
Roles
As a <role>,
I want <goal>
so that <business value>
Avoid “the user” as different stakeholders
have different needs
Use roles so that you do not “miss” epics
Teams may develop a set of user roles to
help define relevant epics (personas)
Uer
Principals Stakeholders who champion the need for your
software and have the authority to acquire and
deploy it.
End Users Stakeholders who personally interact with your
software.
Partners Stakeholders who make your product work in
real life, such as operations teams and also
business partners and system integrators.
Insiders Stakeholders within your own organization; such
as developers, support engineers, sales,
architecture, and marketing teams.
Don’t focus only on the end-user role.
Consider other stakeholder types as well.
Roles
16
Goals
As a <role>,
I want <goal>
so that <business value>
Goal is “what the role can do”
Valuable to a stakeholder
Doesn't say “how”, but “what”
Business Value
As a <role>,
I want <goal>
so that <business value>
Justifies the value of the epic
Clarifies why a feature is useful
Can influence how a feature should function
Helps prioritize the epic in the backlog
Can lead to other useful features that
support stakeholder’s goals
Example: NASA Epic
As an < astronaut >
I want to < write easily with a ball point
pen while in Zero gravity >
So that < I can record key information that I
might otherwise forget >
Epic Example
NASA specified and developed, at great
expense, a ball point pen that Apollo
astronauts could use in space where gravity
would not make the ink flow.
Russian cosmonauts used crayons.
Moral: specify what you want to achieve,
not how to achieve it.
17
Where’s my plan?
It is based on estimates like this:
Student syndrome
Task Local Safety
It is based on estimates like this:
But we do this:
Student syndrome
Task Local Safety
TaskLocal Safety
20-30% time increase to do each
task
Greater loss on complex tasks
Multitasking
Task 1 Task 2 Task 3
1 2 31 2 3 1 2 31 2 3 1 2 31 2 3 1 2 31 2 3
18
To do two things at
once is to do neither.- Publilius Syrus
The Effects of Multitasking
Short Planning Cycles - Immediate
Action
Rapid Releases
Iterations – every 2 weeks
Scrum Meeting Daily
Tasks < 16 hours
How does Agile help?
What’s a
good
plan?
19
“It is a bad plan that admits to no
modifications.”-- Publilius Syrus (ca. 42 BCE)
Project Management
In the form of three backlogs:
Product Backlog
Epics and Themes for Product
Release Backlog
Release Theme and User Stories
Sprint Backlog
User Stories and tasks planned
for the Sprint (iteration)
What’s an Agile plan?
Product Planning
Product Backlog:
Develop Release Themes
Develop Product Epic User Stories
Categorize Product Epics by Release
Themes
Prioritize based on Business Value
Place Epics into releases
Who: Stakeholders, Business and Team
What’s a Theme?
20
What are Themes?
Release themes are based on business
objectives
Themes should embody highest business
value needs of the stakeholders and the
product
Focus on stakeholder success
Focus on product welfare: reduce
technical debt, increase maintainability,
etc.
Why Create Themes?
Provide a common goal for the “whole
team”
Used to provide focus for a release
Used to prioritize and de-prioritize work
A well-known release theme provides a
vision to team
Theme Examples
Galapagos Themes:
No Unprotected Data
Appliance Scalability
Performance Improvements
New Platforms
Theme Examples
Stop wasting time on backups.
Your data is safe with Symantec.
Example
Theme: Appliance Scalability
Epic:
As a Backup Admin, I want to store my
backup images on a single high-capacity
appliance so that …
What is the business value for this epic?
21
Example
Theme: No unprotected data
Epic:
As an IT admin I can readily discover my
unprotected data
So that …..
What is the business value for this epic?
Example
Theme: New Platforms
Epic:
As an IT Exec, I want to NBU to backup all
my data regardless of backup system or
application type so that …..
What is the business value for this epic?
H
H
M
M
M
L
Opportunities
& Ideas
Product
Backlog Input Opportunities and
Ideas
Output Prioritized
Product Backlog(Themes and Product
Epics)
Who Business, Product
Owner, Dev Team
representatives
Product Planning Start Up
Exercise: Pick a project.Practicum
Pick a project
22
Select a Product Owner
Identify themes for your product
Write 1-2 epics for your product
As a <role>,
I want <goal>
so that <business value>
Create a Product Backlog
H
H
M
M
M
L
Input Product Backlog
Output Prioritized
Release Epics marked as
differentiating or parity
Who Business,
Product Owner,
Delivery Team
Release Planning, part 1
Product Backlog
Release
Backlog
Theme
H/D
H/P
H/P
H/D
H/P
M/D
M/P
M/PM/P
M/D
M/P
M/P
L/P
L/D
…. to read
the latest
Harry Potter
book?
…. to drive to
Austin, TX?
Exercise: How long will it take … Agile Measure of Size
Agilemeasures of size:
Story Points
Agile Measure of Size
23
Story Points
The “bigness”
of a task
Points are unit-less
Influenced by
How hard it is
How much there is
As a buyer, I
want to be able to have some but not all items in my cart gift wrapped.
8
Release Planning Meeting 2Release Planning, part 2
Input Prioritized Epics
Output Estimated and
Prioritized
Release Backlog (story points)
Who Delivery Team
using planning
poker
Release
Backlog
Theme
H/D
H/P
H/P
H/D
5
5
3
8
5
2
5
8
3
1
Release Burn Up Chart
Done for sprint results against total release backlog.
0
50
100
150
200
250
300
350
400
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Goal
Plan Velocity
Sto
ry P
oin
ts
Iterations
The Goal
The sum of
points for all
stories
The Plan
What we hope for
before validating
team velocity
Original Plan End Date
Using Story Points – The Plan
Hig
her
Valu
e
Low
er
24
0
50
100
150
200
250
300
350
400
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Original Goal
New Goal
Plan Velocity
Actual VelocitySto
ry P
oin
ts
Iterations
Additional Stories
Actual Delivery
Original Plan End Date
New Planned End Date
Using Story Points – Adding to The Plan
Hig
her
Valu
e
Low
er
0
50
100
150
200
250
300
350
400
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Original Goal
New Goal
Plan Velocity
Actual Velocity
Outlook
Sto
ry P
oin
ts
Iterations
Using Story Points - A Realistic Outlook
Mean Velocity
Hig
her
Valu
e
Low
er
0
50
100
150
200
250
300
350
400
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Original Goal
New Goal
Reduced Goal
Plan Velocity
Actual Velocity
Outlook
Sto
ry P
oin
ts
Iterations
Option End Dates
Using Story Points - What are our Options?
Hig
her
Valu
e
Low
er
WP WIP WD
New User Stories
Sprint Planning
Input Release
Backlog
Output • Sprint Backlog
• Definition of
Done3
• Architecture
Spike
• Information
Radiator
Who Delivery Team
25
Visual representation of progress
Display of:
Work Planned (Product, Release and Sprint)
Work in Progress
Work Done
User Stories to mitigate risk
User Stories to gather information to make
future decisions
Information Radiator Information Radiator
Release
Backlog
Epic:
Sprint 2
WP WIP WD
New User Stories
Release
Backlog
Epic:
Sprint 2
WP WIP WD
New User Stories
BH
AK
CO
Information Radiator
Release
Backlog
Epic: WP WIP WD
New User Stories
BH AK
COCO
AK
Sprint 2
Information Radiator
26
ExampleInformation Radiator Example Daily scrums
Each team member answers:
What did you do
yesterday?
What are you doing today?
What are your blocking
issues?
No problem solving!
Leave after 15 minutes!
Consider:
No showstoppers
All errors that the team has not agreed to
are removed
Code is unit tested, function tested,
system tested, performance tested, tested
end-to-end
A meaningful stakeholder review has
been conducted
Team Defines “Done, Done, Done”
This puts a high premium on:
Valuable, maintained, nested automation
Appropriate coverage (e.g. 80%)
True test-driven development
Avoiding technical debt
Continuous integration
Really understanding what quality looks
like
Can “Done3” Really be Done?
27
Jeff Sutherland (co-creator of Scrum), said
while @ PatientKeeper:
“It took us four years to get done,
done, done, done.”
Patientkeeper provides safety critical patient
management software
Example: Done4
What does “Done”, “Done”, “Done” , “Done”
mean?
It is fully developed
It is fully tested
It has no Severity 1s or 2s
It has been deployed before a release in a client
environment
Example: Done4
They ship
A major release every 3 months
A minor release every month
And minor updates once a week
Consider the competitors, teams of 600-700
developers and they cannot achieve the
work flow Patientkeeper does.
Example: Done4 Sprint review meeting
Held the last day of the sprint
Attended by team and stakeholders
Team demos “done” user stories to
stakeholders Requests feedback
Team holds retrospective Updates the process for the next sprint
28
retrospective
Keep? Drop? Add?
What surprised you?
Leadership Role
Agile is continuous learning
and adaptive planning.
- M. Buckingham
Leadership Role
A good agile project will build
something that meets customers
needs but may be different from
original plans.
- Jim Collins
Summary
summary
29
Agile defined (IBM)…
Uses continuous stakeholder
feedback to deliver high-quality,
consumable code through user
stories and a series of short,
stable, time-boxed iterations.
Scrum on a Page
Roles
Product Owner
ScrumMaster
TeamStakeholders
Artifacts
Meetings
Product
Backlog
Release
Backlog
Sprint
Backlog
Blocks
List
Information Radiator
Sprint
Planning
Daily
Scrum
Sprint Review
Meetings
Concept inspired by William Wake’s “Scrum on a Page,” http://xp123.com/xplor/xp0507/index.shtml
ReleasePlanning
ProductPlanning
Defines needs from a customer point of view
Delivers business value in “chunks”
Relies on stakeholder feedback
Embraces change
Continuous learning
A framework for conversation
No accumulation of technical debt
Agile …
Decreases time to value
Increases revenues
Reduces cost and waste
Delivers products and services that
customers love
Increases customer loyalty
Delivers the right value
Agile …
30
Leadership Role
Agile is continuous learning and
adaptive planning.
- M. Buckingham