29 1 1MB
Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
We are about to cover a lot of ground... • Please hold your questions until the end.
2 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Our Agile Journey… • “Enabling Agile in a Large Organization Our Journey Down the Yellow Brick Road” – Agile 2007 conference.
• June 2005 - Two pilot Scrum project •
teams began Currently – most teams use Agile practices or a combo of Agile & Waterfall.
• Spring 2008 started a local Agile Users Group that meets bi-monthly.
3 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Agile
4 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
The Agile Manifesto Individuals Individuals and and interactions interactions
over
Process Process and and tools tools
Working Working software software
over
Comprehensive Comprehensive documentation documentation
Customer Customer collaboration collaboration
over
Contract Contract negotiation negotiation
Responding Responding to to change change
over
Following Following aa plan plan 5
Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Lean Principles of Agile Development • Eliminate Waste
• Spend time only on what adds real customer value • Amplified Learning
• When you have tough problems, increase feedback and collaboration
• Leave Options Open as Long as Possible
• Maintain multiple options and decide on options as late as practical, but no longer
• Deliver as Fast as Possible
• Deliver value to customers as soon as they ask for it • Empower the Team
• Let the people who add value use their full potential • Build Integrity in
• Don’t try to tack on integrity after the fact – Build it in • See the Whole
• Beware of the temptation to optimize parts at the expense of the whole
6 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Agile Process
• The basic phases of an Agile development project are really no different from those of any other project. • You still must define and initiate the project, plan for the project, execute the plan and monitor and control the results. • What differs, however, is the manner in which these steps are accomplished. 7 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Opportunities for… • Strong partnerships between Business/Sponsor and Project Team
• Joint commitment to achieving business results • Empowered, participating Product Owner • Requirements that adapt to business needs
• Continual re-prioritization of backlog to meet changing •
business needs Greater clarity and understanding of requirements through shorter development cycles
• Delivering Business Value
• Deliver incremental business value earlier within projects • Increase Employee Satisfaction
• Empowered, self-directed teams • Sustainable Pace 8 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Agile Methodologies / Techniques
9 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Scrum
10 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
What is Scrum? • The term ‘scrum’ originally derives from a strategy in the game of rugby where it denotes getting an “out-of play” ball back into the game with teamwork. • Scrum is a project management technique based on the principles of agile • Scrum consists of processes and measurements to manage the development process.
11 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Sequential vs. Overlapping Development Define
Analyze
Code
Test
Deliver
Rather than doing all of one thing at a time... ...Scrum teams do a little of everything all the time
Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986. 12 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Scrum in 100 Words An agile process that:
•Allows us to focus in the shortest time.
on delivering the highest business value
•Allows us to rapidly and repeatedly inspect actual working software. •The business sets the priorities. Development teams self-manage to determine the best way to deliver the highest priority features. (They must agree on the definition of “done”) •Every iteration (Sprint) anyone can see real working software and authorize a release of the demonstrated functionality or continue to enhance for another Sprint. (Sprints are typically 2wks to 30 days)
13 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Sprints • Scrum projects make progress in a series of “Sprints” (iterations). • Target duration is no longer than 30 days:
• The team can set the exact duration based on what works the best for them.
• A constant duration leads to a better rhythm (velocity). • Do not miss the end of the sprint, the deadline is sacred. • Features are designed, coded, tested and documented during the sprint. • Priorities can only change between Sprints, unless the Product Owner terminates the Sprint and starts a new one. • Product is potentially shippable after each sprint.
14 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Potentially shippable • At the end of each sprint, the team must produce a potentially shippable product increment • High quality • Tested • Complete • Done • What it does it does well • Potentially shippable ≠ shippable 15 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Scrum Roles
16 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Scrum roles and responsibilities Product Owner
• • • • •
Defines the features of the product, decides on release date and content Is responsible for the profitability of the product (ROI) Prioritizes features according to market value Can change features and priority every sprint Accepts or rejects work products
• Ensures that the team is fully functional and productive • Enables close cooperation across all roles and functions and removes
Scrum Master
• •
barriers Shields the team from external interferences Ensures that the process is followed. Participates in daily scrum, sprint review and planning meetings. Servant Leader.
• Cross-functional, seven plus/minus two members • Selects the sprint backlog • Has the right to do everything within the boundaries of the project guidelines
Team
• •
to reach the iteration goal Organizes itself and its work Demos work results to the Product Owner 17
Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Does Agile mean don’t plan? No, just the opposite, Agile puts a premium on planning Planning Level
How Often
Who
Focus
Product (Roadmap)
1 – 2 Times per Year
Product Owner / Executive
Product Evolution Over time
Release
3 – 4 Times per Year
Product Owner & Team
Features
Sprint (Iteration)
Every Iteration
Product Owner & Team
Features
Daily (Stand-Up)
Every Day
Team
Tasks
18 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
w e i v r e v Sprint O
19 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Summary of Sprint Meetings • Sprint Planning • Determine the sprint goal and which backlog items to
address and then develop the plan to accomplish the work.
• Daily Stand ups • 15 min mtg in which team reports to each other: what they
did yesterday, what they’re working on today, what’s in the way of their progress. This is NOT a status/problem solving mtg.
• Sprint Review • Review the sprint goal/deliverable with the product owner to show accomplishments.
• Sprint Retrospective • Team meeting held at the end of each sprint to discuss process improvement within the scope of the project
20 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Birds Eye View of a Sprint
Color Key
Daily Daily Scrums Scrums
SPRINT
Sprint Review Review Meeting Meeting Sprint Sprint Retrospective Retrospective Sprint Sprint Planning Planning Meeting Meeting Sprint
Sprint Planning Planning Meeting Meeting Sprint
SPRINT
21 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
s t c a f i t Ar
22 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Summary of Artifacts Note: Artifacts can be as simple as an excel doc through commercially available Agile software! The team chooses what they want to use. • Product Backlog (All Requirements)
• List of requirements / features, prioritized by business value, by the product owner. • Updated and Prioritized by the product owner.
• Sprint Backlog (Requirements for a Sprint & Tasks)
• List of tasks to be addressed during the active sprint. • Owned and updated frequently by the scrum team • Impediments log (Daily Standup – What’s in my way?)
• List of impediments identified by that team that require resolution • No specific format is mandated for this, teams should determine what works for them
• Retrospective (Lessons Learned)
• Results from the retrospective meeting should be captured and shared in a manner that is beneficial to all team members.
• Creation of additional artifacts becomes a matter of judgment and the requirements of your company’s Project Lifecycle. Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
23
& g n i r u s M ea g n i r o t i n Mo Progress
24 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Burndown Charts • Primary method of tracking progress • A burndown chart shows how much work remains to be done. • Agile focuses on remaining effort vs. completed effort. –
Note: Recognize that things such as tracking Financials & Time reporting may still be required – PM does that outside of the scrum process.
Burndown charts: • Two types of charts: ● Show net progress • Sprint Burndown - report on sprint ● Raise questions; they
don’t answer them ● Facilitate early • Product (release) Burndown – discussions report on project progress against ● Make it impossible to hide the truth schedule. progress against schedule.
25 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
A Sprint Burndown Chart
Hours
•Sum of all remaining hrs totaled and plotted each day as a result of the team updating the sprint backlog. •Need to evaluate the trend lines (will they impact being ‘done’?) Team is learning Underestimated or overestimated
•The value comes from the team discussing why it looks that way. 26 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
A Product Burndown Chart
Estimate (Story Points) Story Points
600
450
300
150
0
1
2
3
4
5
Sprints 27 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
Wrap Up
28 Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.
How do I learn more? • Today’s handouts include:
1. Reading List 2. Websites 3. Coaching Contacts Upstate NY Agile User Group: • Bi-monthly at Key, Albany. •
Group home page: • http://groups.yahoo.com/group/UNYAUG • http://www.scrumalliance.org/user_groups/60 29
Dec 2009 KeyCorp Public
Copyright (c) 2006, Mountain Goat Software, Inc. and Innolution, LLC. All Rights Reserved.