what product managers need to know about agile development with scrum
DESCRIPTION
Agile development is more talked about than well understood. Product managers are often operating within a system that assumes a traditional waterfall approach to product development where product specifications can be nailed down early on in the product development process. Making agile development work requires educating managers so they will value fast development and the virtues of learning quickly from user interface testing, early test users and initial purchasers. Attracting the best developers requires having development processes that are considered state of the art by the best candidates. Laura will discuss being an employer of choice, using the best in agile and scrum to attract and motivate employees. Transitioning from waterfall to agile is a potentially difficult process and requires planning and knowledge. An often misunderstood aspect of the transition to agile is redefinition of the roles of product owner, product developer, product marketing and scrum master, along with their interactions with the rest of the development team and internal stakeholders. A clear understanding of best practices is likely to increase the probability of product development completion on time and on budget and increase the likelihood that products developed meet key user needs.TRANSCRIPT
1
What Product Managers Need to Know About Agile Development with Scrum
Laura Klemme, MSc IT, PMP, CSMMay 2013
Silicon Valley Product Management Meetup
2
Why Use Agile? Higher Productivity and Lower Costs Faster Time to Market Higher Quality Improved Stakeholder Satisfaction Improved Employee Engagement and Job
Satisfaction
What We’ve Been Doing Isn’t Working
From: http://www.versionone.com/pdf/3rdAnnualStateofAgile_FullDataReport.pdf
3
Reduced Risk
From: Scaled Agile Framework
4
Delivers Better Fit for Customer
From: Scaled Agile Framework
5
The Manifesto for Agile Software Development
Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
That is, while there is value in the items on the right, we value the items on the left more.
Kent BeckMike BeedleArie van BennekumAlistair CockburnWard CunninghamMartin Fowler
James GrenningJim HighsmithAndrew HuntRon JeffriesJon KernBrian Marick
Robert C. MartinSteve MellorKen SchwaberJeff SutherlandDave Thomas
© 2001, the above authorsThis declaration may be freely copied in any
form, but only in its entirety through this notice.
From: http://www.agilealliance.org/the-alliance/the-agile-manifesto/
6
The 12 Principles of Agile SoftwareWe follow these principles:
I. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
II. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
III. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
IV. Business people and developers must work together daily throughout the project.
V. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
VI. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
7
The 12 Principles of Agile Software Continued
VII. Working software is the primary measure of progress.VIII. Agile processes promote sustainable development. The
sponsors, developers, and users should be able to maintain a constant pace indefinitely.
IX. Continuous attention to technical excellence and good design enhances agility.
X. Simplicity--the art of maximizing the amount of work not done--is essential.
XI. The best architectures, requirements, and designs emerge from self-organizing teams.
XII. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
From: http://www.agilealliance.org/the-alliance/the-agile-manifesto/the-twelve-principles-of-agile-software/
8
Agile Tribes – Subway Map
Drawn by Laura KlemmeFrom: http:guide.agilealliance.org/subway.html
9
Agile Word Cloud
Rendered by Laura Klemme on wordle.net
10
Agile has been used for: Commercial software In-house development Contract development Fixed-price projects Financial applications ISO 9001-certified
applications Embedded systems 24x7 systems with
99.999% uptime requirements
Software as a Service
From: http://www.mountaingoatsoftware.com
•Video game development
•FDA-approved, life-critical systems
•Satellite-control software
•Websites
•Handheld software
•Mobile phones
•Network switching applications
•CMMI Model applications
•Some of the largest applications in use
11
What is Scrum?
•Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time.
•It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
•The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features.
•Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance it for another sprint.
From: http://www.mountaingoatsoftware.com
12
Origins of Scrum•Jeff Sutherland
•1993: Initial scrum at Easel Corp• IDX Systems Corp, a healthcare software
technology company, 500+ doing Scrum•Original signer of Agile Manifesto
From: http://www.mountaingoatsoftware.com
•Ken Schwaber•2006: Presented Scrum w/
Sutherland at ACM’s OOPSLA (Object-Oriented Programming, Systems, Languages & Applications)
•Author of 3 books on Scrum•Original signer of Agile
Manifesto
13
Origins of Scrum•Mike Beedle
•Co-author of first Scrum book•Original signer of Agile Manifesto
From: http://www.mountaingoatsoftware.com
•Mike Cohn•2002: Co-founder of Scrum
Alliance w/Ken Schwaber•Author of numerous books
on Scrum•Series editor for Addison-
Wesley Signature Series•Founder of Mountain Goat
Software
14
Characteristics of Scrum Self-organizing teams Product progresses in a series of month-long
“sprints” Requirements are captured as items in a list of
“product backlog” No specific engineering practices prescribed Uses generative rules to create an agile
environment for delivering projects One of the Tribes, “agile processes”
From: http://www.mountaingoatsoftware.com
15
Project Noise Level
From: http://www.mountaingoatsoftware.com
Simple
ComplexAnarchy
Complicated
Technology
Req
uir
em
en
tsFar from
Agreement
Close toAgreement
Clo
se t
oC
ert
ain
ty
Far
from
Cert
ain
tySource: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.
16
Scrum Flow Diagram
17
Triple ConstraintFlipping the Iron Triangle
Scope
Schedule CostScope
Schedule Cost
PlanDriven
ValueDriven
From: http://pmi.org
18
SDLC WaterfallAnalysis
Requirements Specification
Design
Implementation
Testing and Integration
Operations and Maintenance
19
Traditional Product Manager Role Loss of ‘Product Vision’ between idea and the launch No single person in charge of the product
Product Marketing
Does Market ResearchWrites Product Concept
Product ManagerWrites
Requirements Specification
Development TeamWrites CodeTests Code
Project Manager
Writes Project PlanManages Team
20
Case Study: Loss of ‘Product Vision’Martin Luther King, Jr Memorial
20 years of planning, fundraising and construction
Key Stakeholders: ◦ Alpha Phi Alpha fraternity◦ the MLK Jr National Memorial Project Foundation◦ the US Commission of Fine Arts◦ the National Capital Planning Commission◦ Design: ROMA Design Group, San Francisco◦ Artist: Lei Yixin, China◦ Council of Historians
2007: Council of Historians select the quotations, including Dr Maya Angelou
2008: Cost estimate $120 million
21
Martin Luther King, Jr Memorial 2009: Conflict between 3 gov’t
agencies and compromise, Construction begins
2011: Dedication ceremony
Located in a 4-acres site, near the National Mall in Washington, DC
Statue is 30’ high with the ‘Stone of Hope’ and ‘Mountain of Despair’ and a 450’ long Inscription Wall with 14 quotes.
22
Martin Luther King, Jr Memorial Decision to Paraphrase Quotation
◦ “I was a drum major for justice, peace and righteousness,”
King’s actual words◦ “If you want to say that I was a drum major,
say that I was a drum major for justice. Say that I was a drum major for peace. I was a drum major for righteousness. And all of the other shallow things will not matter.”
2011: Maya Angelou ◦ “The quote makes Dr Martin Luther King look
like an arrogant twit…”
2013: Solution approved to remove the quote for a cost of ~$800,000
From: http://en.wikipedia.org/wiki/Martin_Luther_King,_Jr._National_Memorial
23
Product Owner as ‘Product Visionary’
In Agile, the Product Owner is the product visionary and follows the product through the entire life cycle
24
Product Visioning
From: http://www.mountaingoatsoftware.com
Product Vision
Product Roadmap
Release Plan
Iteration Plan
Daily Plan
Yearly by the Product Owner
Bi-Yearly by the Product Owner
Quarterly by the Product Owner and Team
Bi-Weekly by the Team
Daily by the Individuals
25
Scrum FrameworkRoles
Product Owner
Scrum Master
Team
Ceremonies
Sprint Planning
Sprint Review
Sprint Retrospectiv
e
Daily Scrum Meeting
Artifacts
Product Backlog
Sprint Backlog
Burndown Charts
From: http://www.mountaingoatsoftware.com
26
Scrum FrameworkRoles
Product Owner
Scrum Master
Team
Ceremonies
Sprint Planning
Sprint Review
Sprint Retrospectiv
e
Daily Scrum Meeting
Artifacts
Product Backlog
Sprint Backlog
Burndown Charts
From: http://www.mountaingoatsoftware.com
27
Product Owner
From: http://www.mountaingoatsoftware.com
Define the features of the product Decide on release date and content Be responsible for the profitability of the
product (ROI) Prioritize features according to market value Adjust features and priority every iteration,
as needed Accept or reject work results
28
Scrum Master
From: http://www.mountaingoatsoftware.com
Represents management to the project Responsible for enacting Scrum values and
practices Removes impediments Ensure that the team is fully functional and
productive Enable close cooperation across all roles
and functions Shield the team from external interferences
29
Team
From: http://www.mountaingoatsoftware.com
Typically 5-9 people Cross-functional:
◦ Programmers, testers, user experience designers, etc.
Members should be full-time◦ May be exceptions (e.g., database administrator)
Teams are self-organizing◦ Ideally, no titles but rarely a possibility
Membership should change only between sprints
30
Rugby Scrum
From: http://www.goodenoughmother.com From: http://peterrhysthomas.wordpress.com
The behavior common to Scrum: ‘Moving the Scrum downfield’ Character of the team: it tries to go the distance as a unit, passing the ball back and forth
31
Scrum FrameworkRoles
Product Owner
Scrum Master
Team
Ceremonies
Sprint Planning
Sprint Review
Sprint Retrospectiv
e
Daily Scrum Meeting
Artifacts
Product Backlog
Sprint Backlog
Burndown Charts
From: http://www.mountaingoatsoftware.com
32
Sprint PlanningTeam
Capacity
Product Backlog
Business Conditions
Current Product
Technology
From: http://www.mountaingoatsoftware.com
Sprint Goal
Sprint Backlog
Spri
nt
Pri
ori
tiza
tion
Analyze and evaluate product backlog
Select sprint goal
Spri
nt
Pla
nnin
gDecide how to achieve
sprint goal (design)
Create sprint backlog (tasks) from product backlog items (user
stories/features)
Estimate sprint backlog
33
Sprint Planning
From: http://www.mountaingoatsoftware.com
Team selects items from the product backlog they can commit to completing
Sprint backlog is created◦Tasks are identified ◦Estimated using story points – Planning
Poker◦Collaboratively, not done alone by the
Scrum Master High-level design is considered
34
Planning Poker
From: http://www.mountaingoatsoftware.com
Team estimation for Story Points Agree on point scale Team briefly discusses a story Everyone silently selects a point card Team reveals all cards at once If outliers exist, discuss and re-vote
35
Daily Scrum Meeting
From: http://www.mountaingoatsoftware.com
Parameters◦ Daily
◦ 15-minutes
◦ Stand-up Not for problem solving
◦ Whole world is invited
◦ Pigs vs Chickens
◦ Only team members, Scrum Master, Product Owner, can talk
Helps avoid other unnecessary meetings
36
Daily Scrum Meeting
From: http://www.mountaingoatsoftware.com
Everyone answers 3 questions These are NOT status for the Scrum Master They are commitments in front of peers
What did you do
yesterday?
What will you do today?
Is there anything in your way?
1 2 3
37
Sprint Review
From: http://www.mountaingoatsoftware.com
Team presents what it accomplished during the sprint
Typically takes the form of a demo of new features or underlying architecture
Informal◦ 2-hour prep time rule
◦ No slides Whole team participates Invite the world
38
Sprint Retrospective
From: http://www.mountaingoatsoftware.com
Periodically take a look at what is and is not working
Typically 15–30 minutes Done after every sprint Whole team participates
◦ Scrum Master
◦ Product Owner
◦ Team
◦ Possibly customers and others Start / Stop / Continue
39
Scrum FrameworkRoles
Product Owner
Scrum Master
Team
Ceremonies
Sprint Planning
Sprint Review
Sprint Retrospectiv
e
Daily Scrum Meeting
Artifacts
Product Backlog
Sprint Backlog
Burndown Charts
From: http://www.mountaingoatsoftware.com
40
Product Backlog
From: http://www.mountaingoatsoftware.com
The requirements A list of all desired work on the project Ideally expressed such that each item has
value to the users or customers of the product
Prioritized by the Product Owner Reprioritized at the start of each sprint
This is the product backlog
41
Sprint Goal
From: http://www.mountaingoatsoftware.com
A short statement of what the work will be focused on during the sprint
Database Application
Make the application run on
AWS
Life Sciences
Support features necessary for
population genetics studies
42
Managing the Sprint Backlog
From: http://www.mountaingoatsoftware.com
Individuals sign up for work of their own choosing◦ Work is never assigned
Estimated work remaining is updated daily Any team member can add, delete or change
the sprint backlog Work for the sprint emerges If work is unclear, define a sprint backlog item
with a larger amount of time and break it down later
Update work remaining as more becomes known
43
Sprint Burndown Chart
From: http://www.scrumdesk.com
44
Scalability
From: http://www.mountaingoatsoftware.com
Typical individual team is 7 ± 2 people◦Scalability comes from teams of teams
Factors in scaling◦Type of application
◦Team size
◦Team dispersion
◦Project duration Scrum has been used on multiple 500+
person projects
45
Scrum of Scrums
From: http://www.mountaingoatsoftware.com
46
Going Agile Educate widely
◦ Management, stakeholders, team, customers Start small Pilot Continuous Improvement Use an Agile Coach Training – Scrum Alliance
47
References Agile Alliance Scrum Alliance mountaingoatsoftware.com PMI.org Version One
48
Contact Information
Laura Klemme, MSc IT, PMP, CSM
LinkedIn: http://www.linkedin.com/in/lauraklemmeTwitter: @lklemme