ScrumMaster Training Book
ScrumMaster Training Book
Michel Goldenberg
Is Scrum an acronym?
Acronym?
Name refers to a Rugby Scrum where adaptive team behavior moves a ball up the field toward a common goal
Michel Goldenberg
Scrum Introduction
Scrum is not a methodology that will make you develop better products; Scrum does not provide the answers to how to build quality software faster; Scrum is a tool, a framework, you can use to find out what you need to do to build quality software faster. Scrum does not require team collocation; However, with Scrum, you can measure the productivity of collocation.
Ken Schwaber (Scrum But)
Michel Goldenberg 3
Michel Goldenberg
Certification Levels
The Scrum Alliance certification program bridges the gap between theory and practice. The journey to mastery begins with a Certified ScrumMaster or Certified Scrum Product Owner course. These courses provide a solid foundation to help you make the paradigm shift to managing a project using Scrum.
As shown in the flow chart, a CSM or CSPO course is essential for moving toward the more advanced certifications of Certified Scrum Practitioner, Certified Scrum Coach, and Certified Scrum Trainer.
Michel Goldenberg
What is Scrum?
Scrum is an agile framework 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 to four weeks (Sprints); The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features. In every sprint, anyone can see real working software and decide to release it as is or continue to enhance it for another sprint.
Michel Goldenberg 7
Scrum
Empirical process for managing the development and deployment of complex products; Empiricism is dependent on frequent inspection and adaptation to reach goal; Inspection is dependent on transparency; Scrum rests on the four legs of iterative development that generates done increments of functionality using self-managing teams that are cross-functional.
Ken Schwaber
Michel Goldenberg 8
Agile Methods
Scrum Ken Schwaber, Jeff Sutherland Extreme Programming (XP) Kent Beck, Ward Cunningham, Ron Jeffries Crystal Alistair Cockburn Lean Software Development Mary Poppendieck Dynamic System Development Method (DSDM) Dane Faulkner Adaptive Software Development (ASD) Jim Highsmith Feature Driven Development (FDD) Jeff DeLuca Others?
Michel Goldenberg 10
Agile Manifesto
Manifesto for Agile Software Development
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 documentation 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.
Michel Goldenberg
11
Michel Goldenberg
12
Michel Goldenberg
14
Scrum origins
Jeff Sutherland:
Initial scrums at Easel Corp in 1993; IDX and 500+ people doing Scrum.
Ken Schwaber:
ADM; Scrum presented at OOPSLA 96 with Sutherland; Author of three books on Scrum.
Scrum patterns in PLOPD4. Co-founded Scrum Alliance in 2002,initially within the Agile Alliance.
Michel Goldenberg 15
Mike Beedle:
Scrum Characteristics
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 agile processes.
Mike Cohn
Michel Goldenberg 16
Requirements
Anarchy Complex
Close to Certainty
Technology
Michel Goldenberg
Close to Agreement
Simple
Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.
17
Traditional Waterfall
Analysis
Design
Develop
Test
Deploy
Michel Goldenberg
18
Analysis
Design
Develop
Test
Deploy
Stories Remaining
Scrum
Release 1
Sprint 6
Release 2
7 8
11
12
13
14
R4
Michel Goldenberg
21
Inputs
Process
Output
Empirical process assumes Assumes inputs and process steps will vary each time yielding an unpredictable outcome Inspect and Adapt
Inputs
Process
Output
Michel Goldenberg
22
Agile
The Vision creates feature estimates Cost Schedule
Fix These
Features
Estimate These
Cost
Schedule
Features
Michel Goldenberg
23
Michel Goldenberg
24
Scrum Framework
Michel Goldenberg
25
Why Scrum?
Improve ROI(Return Of Investment):
Traditional methods take too long to satisfy business needs; Earlier delivery yields earlier ROI.
Flexibility:
Respond to changing business requirements; Respond to changing technical landscape.
Product Quality:
Deliver the right product (the first time); Deliver fewer defects (test early; test often).
Visibility:
Measure of progress = completed product;
Rapid Feedback:
Get frequent feedback from customer, stakeholders, team members.
Michel Goldenberg 26
Team Focused
Three roles: Product Owner, ScrumMaster, Team Member;
This means taking on a broader set of tasks than in a role-based organization.
Each individual brings skills and experience to the team; The teams self-organize to determine how to best apply the people on the team to achieve the goals of the project; Low ceremony, simple set of rules; High discipline needed because of time boxes.
Michel Goldenberg
27
Michel Goldenberg
28
3 Roles
ScrumMaster
Team
Product Owner
Michel Goldenberg
29
Michel Goldenberg
30
Michel Goldenberg
31
Michel Goldenberg
32
The ScrumMaster
The sheepdog for the team Ken Schwaber
Michel Goldenberg
34
ScrumMaster
Responsible for knowing the Scrum readiness of the team
and the organization Ensures that the Scrum process is followed Educates the team and Product Owner Educate others outside the team about how the team is working Ensures that the team is fully functional and productive Enables close cooperation across all roles and functions Shields the team from external interferences Removes impediments Servant Leader
Michel Goldenberg 35
ScrumMaster Skills
Leading
Learn to lead (it does not always come naturally)
Facilitating
Enhancing communications always, everywhere Meetings, one-on-one, in the team, between teams, across the organization, management/executive Get a facilitation toolkit Read, practice, improve
Servant Leader
What is a servant leader? Unlike leadership approaches with a top-down hierarchical style, Servant Leadership instead emphasizes Collaboration Trust Empathy and the ethical use of power At heart, the individual is a servant first, making the conscious decision to lead in order to better serve others, not to increase their own power. The objective is to enhance the growth of individuals in the organization and increase teamwork and personal involvement.
Michel Goldenberg
37
Servant Leadership
Characteristics of Servant-Leaders, Traits (Greenleaf, R.K. 2003) Listening Empathy Healing Awareness Persuasion Conceptualization Foresight Stewardship Commitment to the growth of people Building community
Michel Goldenberg
38
Servant-leadership Discussion
Discussion Form into groups Discuss how servant-leadership differs from traditional leadership styles What benefits do you see? What challenges do you see? Report back to the class
Michel Goldenberg
39
The ScrumMaster
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;
Michel Goldenberg 40
The Team
Michel Goldenberg
41
Development Team
Cross-functional; 5 to 9 members; Commits to deliver the Sprint Backlog; Selects the sprint goal and specifies work results; Organizes itself and its work; Self organizing and self-managed; Demos work results to the Product Owner.
Michel Goldenberg 42
Self-Directed Teams
A self-directed team differs from a traditional work group by taking full advantage of all team members talents, skills, abilities, ideas, and experiences
Michel Goldenberg
43
Self-Directed Teams
In traditional work groups, members often do not have the opportunity to express their ideas because management usually makes the decisions Even if members know a better way to get the job done! Although traditional work groups can be highly effective with the right dynamics, in reality there are often limitations It doesnt make full use of each group members talent, experience, knowledge, common sense, and It DOESNT encourage teamwork! This can be wasteful and ineffective It wastes the brainpower, experience, abilities, and practical knowledge of those who actually produce and deliver the organizations products and services
Succeeding As A Self-Managed Team Chang and Curtin
Michel Goldenberg
44
Self-Directed Teams
Self-directed teams are quite different from traditional work groups Employees need to learn new skills (or use existing skills differently) to succeed as members of a self-managed team These skills involve performing multiple work assignments They also involve new ways of interacting with each other and with people outside the team
Michel Goldenberg
45
Self-Directed Teams
Skills that contribute to the success of self-managed teams: Leadership; Communication; Process improvement; Team dynamics; Project management; Conflict management; Consensus decision making; Peer coaching and feedback; Group problem solving; Interpersonal.
Michel Goldenberg
46
Self-Directed Teams
Team members must also have certain individual abilities However, these abilities are not job skills because they are often subjective and emotional in nature They are personal decisions and choices. They include a WILLINGNESS to: Accept change Try new things Take on more responsibilities Be held accountable for results Take action, instead of waiting to be told what to do Act in the best interests of the team rather than oneself Work responsibility without the need for supervision Help other team members succeed Take risks Be open-minded
Succeeding As A Self-Managed Team Chang and Curtin
Michel Goldenberg
47
The team
Typically 5-9 people; Cross-functional:
Programmers, testers, user experience designers, etc.
Pigs are fully committed (Delivery Team, Product Owner, ScrumMaster) Chickens can make contributions Only the fully committed can speak in the daily scrum Contributors only get to observe the daily scrum They are active contributors in Planning and Review meetings
Michel Goldenberg 49
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 50
Vision
Michel Goldenberg
51
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 52
Others
Indentify:
the risks; Issues; Dependencies; Integration areas;
The Team:
Set up and validate environments; Identify initial definition of done; Identify Initial system and architecture requirements.
Etc
Michel Goldenberg 54
Michel Goldenberg
55
Michel Goldenberg
56
Product Backlog
A prioritized list of functional and nonfunctional requirements and features to be developed with items of most business value and/or risk listed first. The product backlog items of highest priority are granular enough to be readily understood by the Scrum Team and developed into an increment within a sprint. Lower priority product backlog items are progressively less well-understood and granular. This list transcends any one release and is constantly emerging and changing.
As a Product Owner, I want to the best ROI. As a CSM, I want to have a senior Team. As a Product Backlog, As a Team Member, I want to work in a I want to change all great team the time that is need, As a Team Member, I to be able to become As a Team Member, I want to work in a a great product. in a want to work great team great team As a Product Owner, I As a Teamwant to the best ROI. Backlog, Member, As a Product I want to work in a I want to change all the time that is need, great team As a Product Backlog, to be able to become I want to change all a great product. the time that is need, to be able to become a great product. As a CSM, I want to As a Team Member, I have a senior want to work in As a CSM, I want to Team. a great team have a senior Team.
As a Product Owner, I As a Team Member, I ROI. want to the best As a Team Member, I want to work in a want to work in a great team great team
Michel Goldenberg
57
Product Backlog
Product backlog items (PBI) or Stories are further into the future can be larger; Each PBI should be described in just enough detail that the team can complete it in one sprint:
May attach things like:
User interface designs Mathematical algorithms Tests
Michel Goldenberg
58
Priority
Theme
Epic
Future Releases
A theme is a collection of related backlog items An Epic is a large backlog item
User Stories
Michel Goldenberg 59
Priority
H H M M M H H
Estimate
8 5 3 3 2 5 13
Michel Goldenberg
60
User Stories
User Stories: As a <actor>, I would like to <action>, so that <value>. Attributes: Size (points, ideal days), Business Value ($, H/M/L), Functional area, etc.; Conditions of Satisfaction. Use a simple declarative statement of function that follows the INVEST model: Independent; Negotiable; Valuable to users or customers; Estimatable; Small; Testable.
As a Team Member, I As a Team Member, I want to work in a want to work in a great team great team As a Team Member, I want to work in a great team As a CSM, I want to As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. have a senior Team. As a Team Member, I want to work in a great team
Michel Goldenberg
61
Michel Goldenberg
62
Michel Goldenberg
63
User Roles
Who will use this product? First step toward user stories; Brainstorming workshop, PO and Team: Generic user; Specialty users; Administrators; New Users; Read-only users.
Michel Goldenberg
64
Michel Goldenberg
65
Conversation
A reminder to have a conversation Represent requirements not document them Details come out during conversation
Confirmation
Ron Jeffries www.xprogramming.com
Acceptance tests to confirm story was coded correctly Documents the details of the conversation
Michel Goldenberg 66
Optional
Michel Goldenberg
67
As an addicted gambler, I want links to self-help sites so that I can get control of my habit.
Michel Goldenberg
(back) Verify a the same user cannot reserve more than one seat at the same tourney Verify the user can cancel their reservation up to the start of the tourney Verify the user receives an email confirmation etc
Michel Goldenberg
69
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
Michel Goldenberg
71
Business Value
As a Team Member, I want to work in a great team As a CSM, I want to have a senior Team.
As a Product Owner, I As a Product Owner, I want to the best ROI. want to the best ROI.
Complexity
Michel Goldenberg 72
High ROI
As a Team Member, I want to work in a As great team a Product Owner, I want to the best ROI. As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. As a Team Member, I want to work in a As great team a CSM, I want to have a senior Team. As a Team Member, I As a Product Backlog, want to workI in a to change all want great team time that is need, the to a Product become As be able to Backlog, As a Product Owner, I a great I want product. want to the best ROI. to change all the time that is need, to a Product become As be able to Backlog, As a CSM, I want to a great I want product. have a senior Team. to change all the time that is need, to be I As a Team Member,able to become aa want to work in great product. As great team a Product Owner, I As a Product Backlog, want to the best ROI. I want to change all the time that is need, As a Product Owner, I to be able to become want to the best ROI. As a great product. I a Team Member, want to work in a As great team a Product Owner, I want to the best ROI. As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. As a Team Member, I want to work in a As great team a CSM, I want to have a senior Team. As a Team Member, I As a Product Backlog, want to workI in a to change all want great team time that is need, the to a Product become As be able to Backlog, As a Product Owner, I a great I want product. want to the best ROI. to change all the time that is need, to a Product become As be able to Backlog, As a CSM, I want to a great I want product. have a senior Team. to change all the time that is need, to be I As a Team Member,able to become aa want to work in great product. As great team a Product Owner, I As a Product Backlog, want to the best ROI. I want to change all the time that is need, As a Product Owner, I to be able to become want a great product. to the best ROI.
Should be Done
Nice To have
To Avoid
Low ROI
Michel Goldenberg
73
73
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 74
Release Planning
Release planning is the process of creating a high-level plan that determines how much must be developed and how many Sprints it will take before there is a releasable product. The release plan includes: A goal for the release A prioritized set of stories/features/product backlog items that will be developed in the release A relative estimate for each story in the release The sprints that make up the release A date for the release (Can be an internal or external release) Simply a line in the product backlog that indicates something will be released
Michel Goldenberg
75
As a Team Member, I want to work in a As great team a Product Owner, I want to the best ROI. As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. As a Team Member, I want to work in a As great team a CSM, I want to have a senior Team. As a Team Member, I As a Product Backlog, want to workI in a to change all want great team time that is need, the to a Product become As be able to Backlog, As a Product Owner, I a great I want product. want to the best ROI. to change all the time that is need, to a Product become As be able to Backlog, As a CSM, I want to a great I want product. have a senior Team. to change all the time that is need, to be I As a Team Member,able to become aa want to work in great product. As great team a Product Owner, I As a Product Backlog, want to the best ROI. I want to change all the time that is need, As a Product Owner, I to be able to become want to the best ROI. As a great product. I a Team Member, want to work in a As great team a Product Owner, I want to the best ROI. As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. As a Team Member, I want to work in a As great team a CSM, I want to have a senior Team. As a Team Member, I As a Product Backlog, want to workI in a to change all want great team time that is need, the to a Product become As be able to Backlog, As a Product Owner, I a great I want product. want to the best ROI. to change all the time that is need, to a Product become As be able to Backlog, As a CSM, I want to a great I want product. have a senior Team. to change all the time that is need, to be I As a Team Member,able to become aa want to work in great product. As great team a Product Owner, I As a Product Backlog, want to the best ROI. I want to change all the time that is need, As a Product Owner, I to be able to become want a great product. to the best ROI. As a Team Member, I want to work in a As a Product Owner, I great team to the best ROI. want As a Product Owner, I As a Product Backlog, want to the best ROI. I want to change all the time that is need, Asto Product to become a be able Backlog, a great product. I want to change all the time that is need, As a CSM, I want to to be able to become have a senior Team. product. a great As a Team Member, I want to work in a great team As a Team Member, I want to work in a As a Team Member, I As great team a CSM, I want to want to work in a have a senior Team. great team As a CSM, I want to have a senior Team.Product Owner, I As a As a Product Backlog, wantIto the best ROI. As a Team Member, As a Product Owner, I to change all I want want to As a Product Backlog, work in a want to the best ROI. that is need, the time great team I want to change all As to become to that isa Product Backlog, the time be ableneed, change all want to a to Ibecome product. to be able great time that is need, the As a CSM, I want to a great product. As a Product Owner, I to have a senior Team. be able to become want a great product. to the best ROI.
Release Plan
Sprint 1
Sprint 2
Sprint 3 to N
As a CSM, I want to have a senior Team. As a CSM, I want to have a senior Team. As a Team Member, I want to work CSM, I want to As a in a great have a senior Team. team
Michel Goldenberg
76
Estimation
Estimate Size; Derive Duration Story Points Unit of measure for expressing the overall size of a user story, feature, or other piece of work Relative values Ideal Team Days Differs from elapsed time Velocity Measure of a teams rate of progress
Michel Goldenberg
77
Story Points
The Size of a user story or backlog item; Influenced by:
How hard it is; How much of it there is.
Relative values:
A login screen is a 2; A payment feature is an 8; A 2 takes twice as long as a 1.
Ideal Time
How long something would take if:
its all you worked on; you had no interruptions; and everything you need is available.
Michel Goldenberg
79
Michel Goldenberg
80
Planning Poker
Michel Goldenberg
81
After the Planning poker, we need to look back to all the Stories that we estimated Triangulation is the best way to know if we did a good planning poker or not
As a Product Backlog, I want to change all the time that is need, to be able to become a great product.
2 pts
As a Product Owner, I want to the best ROI.
1 pt
As a Team Member, I want to work in a great team
Michel Goldenberg
82
Velocity
To do a release plan, you need to know or have an estimate of velocity; Three ways to get velocity:
Use historical averages; Run 1-2 iterations and see what you get; Forecast it.
Definition of Done
Does your team know their definition of done? Discuss what done means to your organization and report back to the class Why is it so important?
Example Definition of Done
Code produced (all 'to do' items in code completed) Code commented, checked in and run against current version in source control Peer reviewed (or produced with pair programming) and meeting development standards Builds without errors Unit tests written and passing Deployed to system test environment and passed system tests Passed UAT (User Acceptance Testing) and signed off as meeting requirements Any build/deployment/configuration changes implemented/documented/communicated Relevant documentation/diagrams produced and/or updated Remaining hours for task set to zero and task closed
Velocity = 20
300/20 = 15 Sprints
Michel Goldenberg
85
At our slowest velocity well finish here At our current velocity well finish here At our long-term average well finish here
Lowest Priority
Michel Goldenberg
86
Release 1
Michel Goldenberg
Release 2
87
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 88
Sprint Priorization Analyze and evaluate product backlog Select sprint goal Sprint Planning
Sprint Goal
Product Backlog
Business Condition
Current Product Velocity
Decide how to achieve sprint goal (design) Create sprint backlog (tasks) from product backlog items (user stories / features) Estimate sprint backlog in hours
Sprint Backlog
Michel Goldenberg
Mike Cohn
89
Sprint Planning
Team selects items from the product backlog based in the team capacity; Sprint backlog is created:
The Stories are decomposed on Tasks; Each Task is estimated (1-16 hours); Collaboratively, not done by the ScrumMaster.
Code the middle tier (8 hours) Code the user interface (4) Write test fixtures (4) Code the foo class (6) Update performance tests (4)
Michel Goldenberg 90
Sprint Goal
Defined in the sprint planning meeting A short statement of what the work will be focused on during the sprint Example: Demonstrate new customer address validation to improve customer information accuracy
Michel Goldenberg
91
Sprint Backlog
A detailed list of all tasks needed in order to deliver the features chosen from the product backlog for the current Sprint. It includes who owns the task, its status and estimated time to completion. Individuals sign up for work Work is never assigned Estimated work remaining is updated daily Estimated in hours Work for the Sprint can emerge
Michel Goldenberg
92
A sprint backlog
Tasks
Code the user interface Code the middle tier Test the middle tier Write online help
8
8
8
4
Mike Cohn
Michel Goldenberg 93
Michel Goldenberg
94
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 95
Sprints
1 to 4 week consecutive time period (once the length is selected, it should not vary) where the team builds the features they committed to during Sprint Planning. The Sprint includes all activities needed to produce a potentially shippable product increment. Analysis Design Code Test And so on No changes allowed during the Sprint Do not miss the end of the Sprint The end of the Sprint if fixed
Michel Goldenberg
96
Michel Goldenberg
97
Tasks
Code the user interface Code the middle tier Test the middle tier Write online help
Fri
50
40 30
20 Hours 10 0 Mon Tue Wed
Michel Goldenberg
Mike Cohn
Thu
Fri
98
Task Board
Michel Goldenberg
99
Abnormal Termination
A tool to be used rarely Extreme circumstances Interruptions are preventing the team from meeting its goal Business priorities change Visibility into organizational impediments A new Sprint Planning meeting to be conducted
Michel Goldenberg
100
Michel Goldenberg
101
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 102
Michel Goldenberg
104
Address one another, NOT the ScrumMaster this meeting is for YOUR benefit.
Michel Goldenberg 105
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 106
Scrum Framework
Vision
Sprint Review
Release Planning
Sprint Planning
Michel Goldenberg 108
Sprint retrospective
Periodically take a look at what is and is not working Typically 1530 minutes Done after every sprint Whole team participates
ScrumMaster Product owner Team Possibly customers and others
Michel Goldenberg 109
Continue doing
Michel Goldenberg 110
Separate Reviews
Customer focus groups:
Review product, not documents; Focus on discovering and recording desired changes, not on gathering detailed requirements (for new features).
Technical reviews:
Reflect on overall quality and make recommendations for re-factoring, additional testing, more frequent integration, tools, etc.; Invite only reviewers who are really competent for the material.
Michel Goldenberg 111
DO
Implement the new processes.
CHECK
Measure the new processes and compare the results against the expected results to ascertain any differences.
ACT
Analyze the differences to determine their cause. Each will be part of either one or more of the P-D-C-A steps. Determine where to apply changes that will include improvement. When a pass through these four steps does not result in the need to improve, refine the scope to which PDCA is applied until there is a plan that involves improvement.
Michel Goldenberg
113
Michel Goldenberg
114 114
Michel Goldenberg
115
Michel Goldenberg
117
Michel Goldenberg
119
Michel Goldenberg
120
Sprint 1 Retrospective
Hold a Sprint retrospective 10 minutes
Michel Goldenberg
121
Michel Goldenberg
122
Michel Goldenberg
123
Michel Goldenberg
124
Contact Info
Michel Goldenberg Agile Coach for GoldenCorp, Certified Scrum Trainer
Michel.goldenberg@scrumusergroup.ca Scrum Alliance: http://www.scrumalliance.org/profiles/38596michel-goldenberg/ LinkedIn: http://www.linkedin.com/in/mgoldenb
Michel Goldenberg
125