Certified ScrumMaster

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

2

2

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

• Scrum master – coach facilitates the process and productivity. • Sprint – a thirty day iteration resulting in functionality. • Daily scrum – standup status meeting.Basic Scrum glossary • Product owner – responsible for maximizing value of the product. • The Team – Multi-functional (includes testers. architect…). • Sprint planning and Sprint Review Meeting. • Increment – a piece of potentially shippable product built during every sprint. • Sprint backlog – list of tasks to be completed to turn the backlog into working functionality during the sprint. prioritized list of user stories. Michel Goldenberg 4 . • Product backlog – emerging.

You have just invited her to come live with you. Michel Goldenberg 5 .Scrum is like the Mother-In-Law The person who knew that her son/daughter could have married better. and who intends to help you be good enough.

a CSM or CSPO course is essential for moving toward the more advanced certifications of Certified Scrum Practitioner. Certified Scrum Coach. 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.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. Michel Goldenberg 6 . and Certified Scrum Trainer®.

What is Scrum? • Scrum is an agile framework that allows us to focus on delivering the highest business value in the shortest time. Teams self-organize to determine the best way to deliver the highest priority features. Michel Goldenberg 7 . • In every sprint. • The business sets the priorities. • It allows us to rapidly and repeatedly inspect actual working software every two to four weeks (Sprints). anyone can see real working software and decide to release it as is or continue to enhance it for another sprint.

• Inspection is dependent on transparency. Ken Schwaber Michel Goldenberg 8 . • Empiricism is dependent on frequent inspection and adaptation to reach goal. • Scrum rests on the four legs of iterative development that generates done increments of functionality using self-managing teams that are cross-functional.Scrum • Empirical process for managing the development and deployment of complex products.

product managers. Improving the morale and pleasure of the developers. customers and stakeholders.Scrum is a tool that you can use to: • • • • • • Increase productivity. Increase risk management capabilities. Increase quality. Michel Goldenberg 9 . Increase predictability. Increase the value of products and systems.

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 . Ward Cunningham. Jeff Sutherland • Extreme Programming (XP) – Kent Beck.Agile Methods • Scrum – Ken Schwaber.

while there is value in the items on the right.Agile Manifesto Manifesto for Agile Software Development We are uncovering better ways of developing software by doing it and helping others do it. we value the items on the left more. 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. Michel Goldenberg 11 .

• Deliver working software frequently. even late in development.Agile Manifesto Principles (1) • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Agile processes harness change for the customer's competitive advantage. Give them the environment and support they need. with a preference to the shorter timescale. from a couple of weeks to a couple of months. • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Michel Goldenberg 12 . and trust them to get the job done. • Welcome changing requirements. • Business people and developers must work together daily throughout the project. • Build projects around motivated individuals.

• Simplicity--the art of maximizing the amount of work not done--is essential. • Agile processes promote sustainable development.Agile Manifesto Principles (2) • Working software is the primary measure of progress. • The best architectures. • Continuous attention to technical excellence and good design enhances agility. developers. and designs emerge from self-organizing teams. then tunes and adjusts its behavior accordingly. Michel Goldenberg 13 . • At regular intervals. the team reflects on how to become more effective. requirements. and users should be able to maintain a constant pace indefinitely. The sponsors.

g. • Etc… Michel Goldenberg 14 . • Know and appreciate other personality type preferences. • Avoid to refer to history (e.. if you are late. "three months ago. • Everyone's opinion is important and needs to be understood and taken into account.. you said. • Remember: Feelings are Facts.. • Use a talking stick.!").Agile rules of etiquette (examples) • Avoid to use the word "you" because the other person may feel on the spot and defensive. apologize and pay a late "penalty ". • Be on time for meetings.

Michel Goldenberg 15 • Mike Beedle:  • Ken Schwaber and Mike Cohn:  . IDX and 500+ people doing Scrum.Scrum origins • Jeff Sutherland:   Initial scrums at Easel Corp in 1993. Scrum presented at OOPSLA 96 with Sutherland. • Ken Schwaber:    ADM. Author of three books on Scrum.initially within the Agile Alliance. Co-founded Scrum Alliance in 2002. Scrum patterns in PLOPD4.

• Uses generative rules to create an agile environment for delivering projects.Scrum Characteristics • Self-organizing teams. • One of the “agile processes”. • Product progresses in a series of month-long “sprints”. • No specific engineering practices prescribed. Mike Cohn Michel Goldenberg 16 . • Requirements are captured as items in a list of “product backlog”.

Project noise level Far from Agreement Requirements Anarchy Complex Close to Certainty Technology Michel Goldenberg Far from Certainty 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 .

Agile Value Profile Delivers value only at the end Waterfall Analysis Design Develop Test Deploy Stories Remaining Delivers value Delivers value at every at every release Sprint 1 Sprint 2 Sprint 3 Sprint 4 Scrum Release 1 Sprint 6 Release 2 7 8 9 11 12 13 14 Time Michel Goldenberg 19 R4 .

Defined Process Control • The defined process control model requires that every piece of work be completely understood. the same outputs are generated every time. • Given a well-defined set of inputs. • A defined process can be started and allowed to run until completion. with the same results every time Michel Goldenberg 20 .

Empirical Process Control • Complex problems are those that behave unpredictably • Not only are these problems unpredictable. but even the ways in which they will prove unpredictable are impossible to predict • When defined process control cannot be achieved because of the complexity of the intermediate activities. But software development isn’t a process that generates the same output every time given a certain input. something called empirical process control has to be employed • For many years software development methodologies have been based on the defined control model. Michel Goldenberg 21 .

Empirical and Defined Process • Defined process assumes – Consistent input and consistent process steps yield a definable output Do we ever have the same inputs? Is every task ever completely understood? Can we expect predictable output? 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 Adapted from the Oobeya Group. LLC 2008 Michel Goldenberg 22 .

From Plan Driven to Value-Driven Development Waterfall The Plan creates cost/ schedule estimates Agile The Vision creates feature estimates Cost Schedule Fix These Features VALUE/VISION DRIVEN PLAN DRIVEN Estimate These Cost Schedule Features Michel Goldenberg 23 .

– The Scrum framework constantly challenges its users to focus on improvement. – Scrum is an iterative.Scrum Elevator Pitch • Scrum: A team-based framework to develop complex systems and products. and its Sprints provide the stability to address the ever-changing needs that occur in any project. Michel Goldenberg 24 . incremental framework for developing any product or managing any work. It allows teams to deliver a potentially shippable set of functionality every iteration. providing the agility needed to respond to rapidly changing requirements.

Scrum Framework Michel Goldenberg 25 .

Why Scrum? • Improve ROI(Return Of Investment): – Traditional methods take too long to satisfy business needs. – Respond to changing technical landscape. test often). team members. • Flexibility: – Respond to changing business requirements. Michel Goldenberg 26 . • Visibility: – Measure of progress = completed product. – Earlier delivery yields earlier ROI. – Deliver fewer defects (test early. • Product Quality: – Deliver the right product (the first time). • Rapid Feedback: – Get frequent feedback from customer. stakeholders.

• The teams self-organize to determine how to best apply the people on the team to achieve the goals of the project. • High discipline needed because of time boxes. • Low ceremony. Team Member. simple set of rules.Team Focused • Three roles: Product Owner. Michel Goldenberg 27 . ScrumMaster. • Each individual brings skills and experience to the team. – This means taking on a broader set of tasks than in a role-based organization.

Michel Goldenberg 28 . Time between daily meeting is just one day. Tasks in hours. Sprint length are one to four weeks.Time Box Everything • • • • Daily scrum in minutes.

3 Roles ScrumMaster Team Product Owner Michel Goldenberg 29 .

The Product Owner “The single wringable neck” – Ken Schwaber Michel Goldenberg 30 .

The Product Owner • Responsible for representing the interests of everyone with a stake in the project and its resulting product • Achieves initial and ongoing funding for the project by creating: – Initial overall requirements – Return on investment objectives – Release plans – dates and content • Responsible for using the Product Backlog to ensure that the most valuable functionality is produced first and built upon – This is achieved by frequently prioritizing the Product Backlog to queue up the most valuable requirements for the next sprint Michel Goldenberg 31 .

The Product Owner • The Product Owner represents the customer’s vision of the product – Often IS the customer – OWNS the Product Backlog • Should provide “one” voice to the team • Participates in test planning • Defines overall product goals and vision • Maintains enough detail in the Product Backlog to support the next level of planning • Accepts or rejects work results Michel Goldenberg 32 .

The Product Owner
• 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 Business value; • Adjust features and priority every iteration, as needed; • Accept or reject work results.
Michel Goldenberg 33

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. management/executive – Get a facilitation toolkit – Read. improve • Fostering self-directed/organizing teams by: – Asking questions – Listening – Observing Michel Goldenberg 36 . between teams. practice. across the organization. in the team.

Servant Leader • What is a servant leader? • Unlike leadership approaches with a top-down hierarchical style. not to increase their own power. Michel Goldenberg 37 . Servant Leadership instead emphasizes – Collaboration – Trust – Empathy – and the ethical use of power • At heart. the individual is a servant first. • The objective is to enhance the growth of individuals in the organization and increase teamwork and personal involvement. making the conscious decision to lead in order to better serve others.

2003) – Listening – Empathy – Healing – Awareness – Persuasion – Conceptualization – Foresight – Stewardship – Commitment to the growth of people – Building community Michel Goldenberg 38 . R.Servant Leadership • Characteristics of Servant-Leaders.K. Traits (Greenleaf.

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 .

• Responsible for enacting Scrum values and practices. • Ensure that the team is fully functional and productive. • Shield the team from external interferences. • Removes impediments.The ScrumMaster • Represents management to the project. Michel Goldenberg 40 . • Enable close cooperation across all roles and functions.

The Team Michel Goldenberg 41 .

Commits to deliver the Sprint Backlog. • Self organizing and self-managed. 5 to 9 members. Michel Goldenberg 42 . • Demos work results to the Product Owner.Development Team • • • • Cross-functional. Selects the sprint goal and specifies work results. • Organizes itself and its work.

Self-Directed Teams • A self-directed team differs from a traditional work group by taking full advantage of all team members’ talents. and experiences Succeeding As A Self-Managed Team – Chang and Curtin Michel Goldenberg 43 . skills. abilities. ideas.

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. and – It DOESN’T encourage teamwork! • This can be wasteful and ineffective – It wastes the brainpower. experience. and practical knowledge of those who actually produce and deliver the organization’s products and services Succeeding As A Self-Managed Team – Chang and Curtin Michel Goldenberg 44 .Self-Directed Teams • In traditional work groups. experience. common sense. abilities. in reality there are often limitations – It doesn’t make full use of each group member’s talent. knowledge.

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 Succeeding As A Self-Managed Team – Chang and Curtin Michel Goldenberg 45 .

– Communication. – Peer coaching and feedback. – Project management. – Interpersonal. Michel Goldenberg 46 . – Group problem solving.Self-Directed Teams • Skills that contribute to the success of self-managed teams: – Leadership. – Consensus decision making. – Conflict management. – Team dynamics. – Process improvement.

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 .

user experience designers. • Membership should change only between sprints. etc. testers. – Ideally. • Teams are self-organizing.The team • Typically 5-9 people. database administrator).g. – May be exceptions (e. Michel Goldenberg 48 . • Cross-functional: – Programmers. no titles but rarely a possibility.. • Members should be full-time.

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 .Pigs and Chickens • Pigs and Chickens – Ken Schwaber – – – – – Pigs are fully committed (Delivery Team.

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 50 .

Vision Michel Goldenberg 51 .

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 52 .

Preparation for Action • Product Owner. – Others … Michel Goldenberg 53 . – Identify the user roles. – Define the user stories. – Derive the product themes. – Estimate the user stories. ScrumMaster and the Team work together to: – Define the product vision and product roadmap.

• Etc… Michel Goldenberg 54 .Others… • Indentify: – – – – the risks. Integration areas. • The Team: – Set up and validate environments. – Identify initial definition of done. Issues. – Identify Initial system and architecture requirements. Dependencies.

Product Vision and Product Roadmap • Product Vision – Ken Schwaber – What can those funding the project expect to have changed when the project is finished? – What progress will have been made by the end of each Sprint? – Why should these people fund us.Sliger and Broderick Michel Goldenberg 55 . and why should they believe that we can deliver the predicted benefits? • Product Roadmap – A high-level representation of what features or themes are to be delivered in each release. and the business value the release is expected to meet • “The Software Project Manager’s Bridge to Agility” . the customer targeted. the architecture needed to support the features.

I to be able to become As a I Member. to be able to become As a CSM. I want to work in a want to work in a great team to be able to become I want to change all great team great team a great product. I want to As a CSM. I want to have a senior Team. As a Product Owner. I want to As a Product Backlog. to be able to become a great product. the time that is need. Teamwant to the best ROI. the time that is need. As a CSM. As a Product Owner. I want to have a senior Team. I As a Team Member. I want to change all the time that is need. I want to have a senior Team. As a Team Member. I want to change all the time that is need. I want to the best ROI. have a senior Team. have a senior Team. I want to a great product. As a Product Backlog. want to the best ROI. As a Team Member. to be able to become As a CSM. I As a CSM. have a senior Team. great team great team As a Product Backlog. have a senior Team. As a Product Owner. As a CSM. As a Team Member. want to work in a great team As a Product Backlog. I want to work in a great team As a Product Owner. I want to change all As a Team Member. I As a CSM. As a Product Owner. I want to the best ROI. As a Product Backlog. As a CSM. I want to the best ROI. I want to a great product. I want to want to the best ROI. have a senior Team. I want to work in a want to work in a great team great team Michel Goldenberg 56 . I want to work in a the time that is need. I want As a Team Member. I As a Team Member.The Product Backlog As a Team Member. As a CSM. I want to the best ROI. As a Product Owner. As a CSM. As a CSM. As a Product Owner. I to want to work inwant to work in a a want to the best ROI. As a Product Owner. As a Product Owner. I want to have a senior Team. I want to have a senior Team. I a great product. I I want to change all want to the best ROI. have a senior Team.

As a Product Backlog. I want to Team. I want to have a senior Team. Member. I want to the best ROI. As a Team Member. Backlog. I to be able to become As a Team Member. • 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. • This list transcends any one release and is constantly emerging and changing. As a CSM. As a Product Owner. I want to work in a a great product.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. to be able to become I want to change all a great product. As a Product Owner. I ROI. As a CSM. great team As a Product Backlog. a great team have a senior Team. As a Team Member. want to the best As a Team Member. I have a senior want to work in As a CSM. I want to work in a want to work in a great team great team Michel Goldenberg 57 . I As a Teamwant to the best ROI. I want to work in a I want to change all great team the time that is need. I As a Team Member. to be able to become a great product. the time that is need. As a Product I want to work in a I want to change all the time that is need. in a want to work great team great team As a Product Owner. • Lower priority product backlog items are progressively less well-understood and granular. I want to As a Team Member.

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 – Strive to describe items as briefly as possible Ken Schwaber and Mike Cohn Michel Goldenberg 58 .

Product Backlog Iceberg Continuous Refinement Sized for a Sprint Release 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 .

I can create an account As an existing player. I can view account records As a player. I can choose from a list of all games in order to choose which I want to play As a player. I can log in to play a game As a player. I can transfer my winnings to my real bank account Priority H H M M M H H Estimate 8 5 3 3 2 5 13 Michel Goldenberg 60 . I can deposit my winnings in the system bank in order to use them later As a player.Sample Product Backlog User Story As a new player. I can reset my password As an administrator.

User Stories • User Stories: – As a <actor>. have a senior Team. Functional area. Business Value ($. I want to work in a great team As a CSM. As a CSM. I As a Team Member. As a Team Member. – Estimatable. I want to As a CSM. As a Team Member. • Attributes: – Size (points. I want to work in a want to work in a great team great team As a Team Member. – Conditions of Satisfaction. – Valuable to users or customers. I want to have a senior Team. H/M/L). so that <value>. – Negotiable. I want to work in a great team Michel Goldenberg 61 . ideal days). I want to have a senior Team. I would like to <action>. – Small. – Testable.. etc. • Use a simple declarative statement of function that follows the INVEST model: – Independent.

– Make it work first.Where Do User Stories Come From? • • • • Any existing description of requirements. • Decomposition of large features: – Along data boundaries. Michel Goldenberg 62 . Existing Use Cases. – Along activity boundaries. Team and any other stakeholders. Business architecture Brainstorming by Product Owner. optimize it later.

g. Michel Goldenberg 63 . – Consider different user role viewpoints. • Group by common themes. • Team members write ideas on cards or sticky-notes: – Use a board or table.User Story Workshop • Common approach to brainstorming. all users need a log-in screen. read aloud to avoid duplication. • Watch for duplication across user roles: – e.

Michel Goldenberg 64 . – Specialty users. – Read-only users.User Roles • Who will use this product? • First step toward user stories. • Brainstorming workshop. – New Users. – Administrators. PO and Team: – Generic user.

System and Programmer Users
As a payment verification system, I want all transactions to be well-formed XML.

As a programmer, I want an API for deleting widgets from the database.

Michel Goldenberg

65

User Stories in the Backlog - CCC
Card
• Written on 3x5 index cards • May be annotated with estimates, notes, etc…

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

User Story Template

Optional

As a <user role>, I want to <functionality> so that <value>.

Michel Goldenberg

67

I want to reserve a seat in a Texas Hold’em Tournament.Sample User Stories As a user. As an addicted gambler. I want links to self-help sites so that I can get control of my habit. I want to deposit real money into my account. As a High Roller. As a user. I want poker tables with $10K max bets. 68 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 .Details as Conditions of Satisfaction As a user. I want to reserve a seat in a Texas Hold’em Tournament.

As a user.Details added by splitting stories As a user. I can reserve a seat in a Texas Hold’em Tournament up until the last second prior to its beginning. I want an email confirmation of my Texas Hold’em Tournament reservation. Michel Goldenberg 70 . I want to reserve a seat in a Texas Hold’em Tournament. As a user.

I want to change all the time that is need. I want to change all the time that is need. I want to work in a great team As a Product Owner. As a Team Member. I want to have a senior Team. I want to work in a great team As a Product Backlog. I want to have a senior Team. As a Team Member. I want to the best ROI. to be able to become a great product. I want to have a senior Team.The Business Value As a Team Member. I want to have a senior Team. As a CSM. to be able to become a great product. As a CSM. I want to the best ROI. I want to work in a great team As a Product Backlog. I want to the best ROI. As a Team Member. I want to work in a great team As a Product Owner. to be able to become a great product. I want to the best ROI. As a CSM. As a Product Owner. to be able to become a great product. I want to have a senior Team. I want to work in a great team As a Product Owner. I want to the best ROI. I want to the best ROI. As a Team Member. I want to the best ROI. As a Team Member. As a Product Owner. As a CSM. I want to work in a great team As a CSM. I want to change all the time that is need. As a CSM. As a Team Member. I want to have a senior Team. I want to have a senior Team. I want to the best ROI. As a CSM. I want to change all the time that is need. As a Team Member. I want to have a senior Team. I want to have a senior Team. As a CSM. As a Product Backlog. Michel Goldenberg 71 . As a CSM. I want to change all the time that is need. I want to work in a great team As a Team Member. I want to have a senior Team. As a Product Owner. I want to have a senior Team. As a Product Owner. As a CSM. As a Product Owner. As a Product Backlog. to be able to become a great product. I want to work in a great team As a Product Backlog. I want to the best ROI. As a CSM. I want to work in a great team As a Product Owner.

As a Team Member. I want to change all the time that is need. As a CSM. I want to have a senior Team. I want to have a senior Team. I want to the best ROI. I want to have a senior Team. I want to the best ROI. I want to have a senior Team. As a Team Member.Getting the ROI As a Product Backlog. As a Product Backlog. As a CSM. to be able to become a great product. I want to have a senior Team. to be able to become a great product. I want to work in a great team As a Team Member. As a Product Owner. want to the best ROI. As a Product Owner. As a Product Owner. I want to change all the time that is need. As a Product Owner. I want to the best ROI. Complexity Michel Goldenberg 72 . Business Value As a Product Owner. I want to the best ROI. I want to the best ROI. I want to the best ROI. I As a Product Owner. I want to work in a great team As a CSM. As a CSM. I want to work in a great team As a CSM. As a Product Owner.

As a CSM. As a Team Member. to change all the time that is need. As great team a Product Owner. I want to have a senior Team. I want to a great I want product. I want to work in a As great team a CSM. I As a Product Backlog. I As a Product Backlog. I As a Product Backlog. I to be able to become want a great product. As a great product. want to work in a As great team a Product Owner. I want to the best ROI. As great team a Product Owner. want to workI in a to change all want great team time that is need. want to the best ROI. I want to have a senior Team. Should be Done Nice To have To Avoid Low ROI Michel Goldenberg 73 73 . the to a Product become As be able to Backlog. As a Team Member. have a senior Team. As a Team Member. I want to have a senior Team. As a Team Member. want to the best ROI. to be I As a Team Member. I want to a great I want product. I want to change all the time that is need. As a Product Owner. to the best ROI. As a CSM. As a CSM. I want to have a senior Team.High ROI As a Team Member. to change all the time that is need. As a CSM. As a Product Owner. the to a Product become As be able to Backlog. have a senior Team. I want to the best ROI. As a Product Owner. As a CSM.able to become aa want to work in great product. As a CSM. I want to have a senior Team. I a great I want product. I a Team Member. want to the best ROI. want to the best ROI. I want to work in a As great team a CSM. I want to work in a As great team a Product Owner. to a Product become As be able to Backlog. As a Product Owner. to change all the time that is need. I want to change all the time that is need. I As a Product Backlog. I a great I want product. I want to have a senior Team. want to workI in a to change all want great team time that is need. to change all the time that is need. to a Product become As be able to Backlog.able to become aa want to work in great product. I to be able to become want to the best ROI. to be I As a Team Member.

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint 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 .

I to be able to become want a great product. I want to have a senior Team. I want to have a senior Team.able to become aa want to work in great product. be able to become want a great product. I As a Product Backlog. As a Product Owner. I to change all I want want to As a Product Backlog. have a senior Team. want to the best ROI. I want to work in a As great team a Product Owner. I As a Product Backlog. change all want to a to Ibecome product. want to the best ROI. I want to the best ROI. I want to want to work in a have a senior Team. to change all the time that is need. I want to work in a As great team a CSM. to change all the time that is need. work in a want to the best ROI. I As great team a CSM. I want to change all the time that is need. As a CSM. I want to change all the time that is need. I want to As a in a great have a senior Team. As a CSM. I want to work in a As a Product Owner. the to a Product become As be able to Backlog. want to the best ROI. I want to have a senior Team. As a Product Owner. I As a Product Backlog. As a Product Owner. I want to have a senior Team. As a Team Member.able to become aa want to work in great product. Release Planning Meeting Release Plan Sprint 1 Sprint 2 Sprint 3 to N As a CSM. to a Product become As be able to Backlog. I to have a senior Team. As a Product Owner. As a CSM. the As a CSM. I want to have a senior Team. want to the best ROI. I a great I want product. As great team a Product Owner. that is need. I want to work CSM. great team As a CSM. I want to change all the time that is need. I want to have a senior Team. want to workI in a to change all want great team time that is need. As a CSM. to be I As a Team Member. the to a Product become As be able to Backlog. I want to the best ROI. I a great I want product. As a Product Owner. I to be able to become want to the best ROI. As a Team Member. I want to a great product. the time great team I want to change all As to become to that isa Product Backlog. I want to have a senior Team. I want to a great I want product. As a great product. product. As a Team Member. I want to change all the time that is need. As a Product Owner. team Michel Goldenberg 76 . to a Product become As be able to Backlog. As a CSM. to be I As a Team Member. want to workI in a to change all want great team time that is need. want As a Product Owner. to change all the time that is need. a great product. As a CSM. As a CSM. to the best ROI.As a Team Member. Asto Product to become a be able Backlog. I want to work in a As great team a CSM. the time be ableneed. have a senior Team. As a Team Member. I want to work in a As a Team Member. want to the best ROI. As a Team Member. I As a Product Backlog. I want to a great I want product. I want to have a senior Team.Product Owner. I great team to the best ROI. a great As a Team Member. As a Team Member. to be able great time that is need. I a Team Member. wantIto the best ROI. As a CSM. to the best ROI. I As a Product Backlog. I As a As a Product Backlog. want to work in a As great team a Product Owner. to change all the time that is need. I want to have a senior Team. I want to work in a great team As a Team Member. I want to to be able to become have a senior Team. As great team a Product Owner. As a Team Member.

Estimation • Estimate Size. Derive Duration – Story Points • Unit of measure for expressing the overall size of a user story. or other piece of work • Relative values – Ideal Team Days • Differs from elapsed time – Velocity • Measure of a team’s rate of progress Michel Goldenberg 77 . feature.

Michel Goldenberg 78 .8. – A payment feature is an 8.1. 21…. – Tee shirt sizes. • Influenced by: – How hard it is.5. • Points are unit-less: – Sequence of numbers • Fibonacci sequence (0.2. – A “2” takes twice as long as a “1”.3.Story Points • The Size of a user story or backlog item.13.). • Relative values: – A login screen is a 2. – How much of it there is.

– you had no interruptions.Ideal Time • How long something would take if: – it’s all you worked on. Michel Goldenberg 79 . – and everything you need is available. • The ideal time of a football game is 60 minutes: – Four 15-minute quarters. • The elapsed time is much longer (3+ hours).

Comparing the approaches • • • • • • • Story points help drive cross-functional behavior Story point estimates do not decay Story points are a pure measure of size Estimating in story points is typically faster My ideal days cannot be added to your ideal days Ideal days are easier to explain outside the team Ideal days are easier to estimate at first Michel Goldenberg 80 .

Planning Poker Michel Goldenberg 81 .

to be able to become a great product. 1 pt As a Team Member. As a CSM. After the Planning poker. I want to work in a great team As a CSM. I want to have a senior Team. As a Team Member.Validating the estimation 3 pts As a Team Member. I want to have a senior Team. I want to have a senior Team. I want to change all the time that is need. I want to work in a great team As a CSM. I want to the best ROI. 2 pts As a Product Owner. 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 work in a great team As a Team Member. I want to work in a great team Michel Goldenberg 82 .

domain. Michel Goldenberg 83 .Velocity • To do a release plan. • Should be expressed as a range: – Size of range depends on familiarity of team. you need to know or have an estimate of velocity. – Forecast it. – Run 1-2 iterations and see what you get. • Three ways to get velocity: – Use historical averages. and technologies.

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 • • • • • • • • http://www.agile-software-development.html Michel Goldenberg 84 .com/2007/07/definition-ofdone-10-point-checklist.

Estimate Size – Derive Duration Size Calculation Duration 300 Story Points Velocity = 20 300/20 = 15 Sprints Michel Goldenberg 85 .

Using Velocity and Estimates 21 23 35 85 55 13 13 8 13 58 13 21 13 21 21 13 21 100 Highest Priority At our slowest velocity we’ll finish here At our current velocity we’ll finish here At our long-term average we’ll finish here Lowest Priority Michel Goldenberg 86 .

Variation in Backlog Decomposition Short term plan needs more detail Longer term plan can tolerate more uncertainty 1 2 3 4 5 6 7 Release 1 Michel Goldenberg Release 2 87 .

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 88 .

Sprint Planning meeting Team Capacity  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 .

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 . – Each Task is estimated (1-16 hours). – Collaboratively. • The Team discus the high-level design. I want to see photos of the hotels. As a vacation planner.Sprint Planning • Team selects items from the product backlog based in the team capacity. • Sprint backlog is created: – The Stories are decomposed on Tasks. not done by the ScrumMaster.

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 .

• 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 . its status and estimated time to completion. • It includes who owns the task.Sprint Backlog • A detailed list of all tasks needed in order to deliver the features chosen from the product backlog for the current Sprint.

A sprint backlog Tasks Code the user interface Code the middle tier Test the middle tier Write online help Mon Tues Wed Thur Fri 8 16 8 12 4 12 16 8 10 16 4 11 8 Write the foo class Add error logging 8 8 8 8 8 4 8 Mike Cohn Michel Goldenberg 93 .

select the highest priority items that support the Sprint goal • Discuss the items with the Product Owner for understanding and break the items down into tasks – Design considerations.Sprint Planning Review • Identify anything that might impact the Sprint – Vacations. etc • Select a Sprint goal • Working the Product Owner. etc • Estimate each task (typically 1 to 16 hours depending on Sprint length) • Continue until the team feels it can not commit to any more work in the Sprint – Make sure everyone understands the definition of done Michel Goldenberg 94 . acceptance criteria. holidays. capacity of team members.

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 95 .

• The Sprint includes all activities needed to produce a potentially shippable product increment. it should not vary) where the team builds the features they committed to during Sprint Planning.Sprints • 1 to 4 week consecutive time period (once the length is selected. – 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 .

Sprint Burndown Chart • Primary method of tracking progress • Shows how much work is remaining in the Sprint each day • Can be used at the Product and Release level • Updated daily by the team members – Amount of work remaining Michel Goldenberg 97 .

Tasks Code the user interface Code the middle tier Test the middle tier Write online help Mon Tues Wed Thu 8 16 8 12 4 12 16 8 10 16 7 11 Fri 8 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 it’s goal – Business priorities change – Visibility into organizational impediments • A new Sprint Planning meeting to be conducted Michel Goldenberg 100 .

Potential shippable product Michel Goldenberg 101 .

Scrum Framework
Vision

Preparation for Action

Sprint Review

Release Planning

Sprint Retrospective 1-4 weeks Sprint

Sprint Planning
Michel Goldenberg 102

The daily scrum
• Parameters
– Daily – 15-minutes – Stand-up

• Not for problem solving
– Whole world is invited – Only team members, ScrumMaster, product owner, can talk

• Helps avoid other unnecessary meetings
Michel Goldenberg 103

Everyone answers 3 questions
What did you do yesterday? What will you do today? Is anything in your way?

Michel Goldenberg

104

Michel Goldenberg 105 . • NO PROBLEM SOLVING: – Capture items in a parking lot to address after the standup. NOT the ScrumMaster – this meeting is for YOUR benefit. • Address one another. • Stand up. • Always start on time.Daily Scrum – Good Habits • Have the meeting at the same time every day – determined by the team. Invite all that are interested or will be key participants. • Everyone is responsible for keeping to the agenda and timebox: – Up to the team to point out problem solving and distractions.

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 106 .

The sprint review • 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 Michel Goldenberg 107 .

Scrum Framework Vision Preparation for Action Sprint Review Release Planning Sprint Retrospective 1-4 weeks Sprint Sprint Planning Michel Goldenberg 108 .

Sprint retrospective • Periodically take a look at what is and is not working • Typically 15–30 minutes • Done after every sprint • Whole team participates – ScrumMaster – Product owner – Team – Possibly customers and others Michel Goldenberg 109 .

Start / Stop / Continue • Whole team gathers and discusses what they’d like to: Start doing Stop doing Continue doing Michel Goldenberg 110 .

not documents. additional testing.. tools. – Focus on discovering and recording desired changes. Michel Goldenberg 111 . etc. not on gathering detailed requirements (for new features). – Invite only reviewers who are really competent for the material. • Technical reviews: – Reflect on overall quality and make recommendations for re-factoring.Separate Reviews • Customer focus groups: – Review product. more frequent integration.

Below. Behavior of (on) team. Above standard. Did we/I do the best job we/I could? How well did we deliver according to our responsibilities? How well is the organization supporting us? • Recommendations for self/team/organization: – For the organization “just 1” for higher impact Michel Goldenberg 112 . Temperature reading over time. At. What did not go as well? To change.Internal Team Reflection • • • • What went well? Keepers. Quick team (and self) performance assessments: – – – – – Delivery of product.

– ACT • Analyze the differences to determine their cause. refine the scope to which PDCA is applied until there is a plan that involves improvement. When a pass through these four steps does not result in the need to improve. it differs from what would be otherwise in that the completeness and accuracy of the specification is also part of the improvement. Michel Goldenberg 113 . Determine where to apply changes that will include improvement. – DO • Implement the new processes. Each will be part of either one or more of the P-D-C-A steps.The Deming Cycle • The PDCA (Deming) Cycle – PLAN • Establish the objectives and processes necessary to deliver results in accordance with the expected output. By making the expected output the focus. – CHECK • Measure the new processes and compare the results against the expected results to ascertain any differences.

Let’s Try It! Michel Goldenberg 114 114 .

training. and/or logo Define major care sections Define “Ultra Doggy Spa” service Contact Information Set pricing structure for services Provide satisfied customer testimonials Outline boarding options Define all service offerings Suggest daypack contents to accompany clients Outline full week lunch menu Complete a guarantee policy Outline minimum requirements (shots. temper. interests) Define discounted partner pet services Michel Goldenberg 115 . brand. breeding. etc.Doggy Daycare Brochure Backlog • • • • • • • • • • • • • • Create cover art.) Complete bios on staff members (backgrounds.

and/or logo Define major topics for Martian tourism Describe “Art Interests in Europe” tour Describe a tour based on photosynthesis Outline a “7 wonders of the world” expedition Set prices for the tours Outline warning messages (gravity. brand. etc.) Suggest clothing options Explain travel options to/from Mars Describe a “Human Sports” tour Outline refund policy Suggest related services Define advertisers Define a 12-month campaign Set-up how to get more information Michel Goldenberg 116 .Martian Tourists Visiting Earth Brochure Backlog • • • • • • • • • • • • • • • Create cover art. oxygen. fungi.

Wedding Planner Brochure Backlog • • • • • • • • • • • • • • Create cover art. brand. and/or logo Define major service offerings Define format for layout of brochure Include services for out-of-town guests Provide references from happy clients Set the pricing structure Define music options List catering options and pricing Define special bridal party treatments List reception location recommendations Create 3 minute promotion infomercial List template itineraries Gather names of preferred service providers Define custom wedding themes Michel Goldenberg 117 .

brand. and/or logo Define major recipe sections Define format for cookbook layout Include recipes for 4 year olds Provide a sample special recipe with family charm Write foreword that explains the reason for the book Set price structure for the cookbook Outline useful tools and kitchen layout Collect family heirloom recipes Define “Recipes of the Rich and Famous” section Create 3 minute promotion infomercial Define celebrity contributors/patrons Determine “Family Pet” recipe items Outline book tour scenario Create measurements and substitution advice Michel Goldenberg 118 .Family Treasures Cookbook Proposal Backlog • • • • • • • • • • • • • • • Create cover art.

etc • Debrief to Class – 15 minutes Michel Goldenberg 119 . risks.Scrum Simulation Part 1 • Goal: To Develop a Marketing Brochure in 2 (2 day) Sprints – Building a Product Backlog • Select Brochure and Product Owner. dependencies.5 minutes – Team to select a Product Owner – Team to determine what brochure to work on • Create Product Backlog – 30 minutes – Work with Product Owner to » Turn items into user stories on index cards » If some are too big – break them down » Identify missing items – if any » Estimate user stories using story points » Prioritize » Consider value.

day 1” – 10 minutes Michel Goldenberg 120 . Team involved » Team tasks Product Backlog items » Team volunteers for tasks and commits » Add tasks to task board • Do your work in “Sprint 1 .Scrum Simulation Part 2 • Sprint 1 – Day 1 • Complete a Sprint Planning Meeting – 15 minutes – Select product backlog items for a 2 day Sprint » Product Owner prioritizes.

Scrum Simulation Part 3 • Sprint 1 – Day 2 • Complete a daily Scrum standup– 2 minutes • Do your work in “Sprint 1 – day 2” – 10 minutes • Sprint 1 Review – Hold a Sprint review and demo – 15 minutes • Sprint 1 Retrospective – Hold a Sprint retrospective – 10 minutes Michel Goldenberg 121 .

Scrum Simulation Part 4 • Sprint 2 – Day 1 • Complete a Sprint Planning Meeting – 15 minutes – Select product backlog items for a 2 day Sprint » Product Owner prioritizes. Team involved » Team tasks Product Backlog items » Team volunteers for tasks and commits » Add tasks to task board • Do your work in “Sprint 2 .day 1” – 10 minutes Michel Goldenberg 122 .

Scrum Simulation Part 5 • Sprint 2 – Day 2 • Complete a daily Scrum standup– 2 minutes • Do your work in “Sprint 2 – day 2” – 10 minutes • Sprint 2 Review – as time allows – Hold a Sprint review and demo (observed by whole class) – Share with the class some lessons learned from this exercise Michel Goldenberg 123 .

A Scrum reading list • Agile and Iterative Development: A Manager’s Guide by Craig Larman • Agile Estimating and Planning by Mike Cohn • Agile Project Management with Scrum by Ken Schwaber • Agile Retrospectives by Esther Derby and Diana Larsen • Agile Software Development Ecosystems by Jim Highsmith • Agile Software Development with Scrum by Ken Schwaber and Mike Beedle • Scrum and The Enterprise by Ken Schwaber • User Stories Applied for Agile Software Development by Mike Cohn • Lots of weekly articles at www.scrumalliance.org Michel Goldenberg 124 .

Certified Scrum Trainer – Michel.scrumalliance.goldenberg@scrumusergroup.Contact Info • Michel Goldenberg – Agile Coach for GoldenCorp.linkedin.org/profiles/38596michel-goldenberg/ – LinkedIn: http://www.com/in/mgoldenb Michel Goldenberg 125 .ca – Scrum Alliance: http://www.

Sign up to vote on this title
UsefulNot useful