You are on page 1of 125

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

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

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

Michel Goldenberg 6 .  As shown in the flow chart. Certified Scrum Coach.Certification Levels • • The Scrum Alliance certification program bridges the gap between theory and practice. These courses provide a solid foundation to help you make the paradigm shift to managing a project using Scrum. The journey to mastery begins with a Certified ScrumMaster or Certified Scrum Product Owner course. and Certified Scrum Trainer®. a CSM or CSPO course is essential for moving toward the more advanced certifications of Certified Scrum Practitioner.

Michel Goldenberg 7 . • 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. • In every sprint.What is Scrum? • Scrum is an agile framework that allows us to focus on delivering the highest business value in the shortest time. • The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features.

Ken Schwaber Michel Goldenberg 8 .Scrum • Empirical process for managing the development and deployment of complex products. • 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. • Inspection is dependent on transparency.

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

Ward Cunningham. Jeff Sutherland • Extreme Programming (XP) – Kent Beck.Agile Methods • Scrum – Ken Schwaber. 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. Michel Goldenberg 11 . while there is value in the items on the right. 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.

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

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

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

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

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

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. • 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 . the same outputs are generated every time.

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. Michel Goldenberg 21 . something called empirical process control has to be employed • For many years software development methodologies have been based on the defined control model. But software development isn’t a process that generates the same output every time given a certain input.Empirical Process Control • Complex problems are those that behave unpredictably • Not only are these problems unpredictable.

LLC 2008 Michel Goldenberg 22 .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.

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 .

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

Scrum Framework Michel Goldenberg 25 .

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

• High discipline needed because of time boxes. – This means taking on a broader set of tasks than in a role-based organization.Team Focused • Three roles: Product Owner. • 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. Michel Goldenberg 27 . • Low ceremony. ScrumMaster. Team Member. simple set of rules.

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

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

practice. 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. in the team.ScrumMaster Skills • Leading – Learn to lead (it does not always come naturally) • Facilitating – Enhancing communications – always. across the organization.

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

R.K. Traits (Greenleaf.Servant Leadership • Characteristics of Servant-Leaders. 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 .

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

The Team Michel Goldenberg 41 .

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

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

experience. 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. common sense. abilities. experience. and – It DOESN’T encourage teamwork! • This can be wasteful and ineffective – It wastes the brainpower.Self-Directed Teams • In traditional work groups. 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 . 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 .

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

They include a WILLINGNESS to: • Accept change • Try new things • Take on more responsibilities • Be held accountable for results • Take action. these abilities are not job skills because they are often subjective and emotional in nature – They are personal decisions and choices. 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 .Self-Directed Teams • Team members must also have certain individual abilities – However.

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

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

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

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

the architecture needed to support the features. 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.Sliger and Broderick Michel Goldenberg 55 .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. and the business value the release is expected to meet • “The Software Project Manager’s Bridge to Agility” . the customer targeted.

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

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

• 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 • Product backlog items (PBI) or Stories are further into the future can be larger.

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 choose from a list of all games in order to choose which I want to play As a player. I can reset my password As an administrator. I can create an account As an existing 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 view account records As a player. I can log in to play a game As a player. 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.

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

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

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

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

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

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

As a user. As a user. I want to reserve a seat in a Texas Hold’em Tournament. Michel Goldenberg 70 . I want an email confirmation of my Texas Hold’em Tournament reservation.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.

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

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

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

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 .

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

Derive Duration – Story Points • Unit of measure for expressing the overall size of a user story.Estimation • Estimate Size. 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.

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

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

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 .

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

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

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

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 .

Sprint Planning • Team selects items from the product backlog based in the team capacity. • Sprint backlog is created: – The Stories are decomposed on Tasks. • The Team discus the high-level design. As a vacation planner. – 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 . I want to see photos of the hotels.

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. • 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.

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 .

Sprint Planning Review • Identify anything that might impact the Sprint – Vacations. holidays. 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 . etc • Select a Sprint goal • Working the Product Owner. acceptance criteria. 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. 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 .

– 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 . 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. • The Sprint includes all activities needed to produce a potentially shippable product increment.

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. • Everyone is responsible for keeping to the agenda and timebox: – Up to the team to point out problem solving and distractions. • Stand up. Invite all that are interested or will be key participants. • Address one another. • Always start on time. NOT the ScrumMaster – this meeting is for YOUR benefit.Daily Scrum – Good Habits • Have the meeting at the same time every day – determined by the team.

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 .

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

Behavior of (on) team. Quick team (and self) performance assessments: – – – – – Delivery of product. 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 . What did not go as well? To change. At. Below.Internal Team Reflection • • • • What went well? Keepers. Above standard. Temperature reading over time.

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

Let’s Try It! Michel Goldenberg 114 114 .

temper. etc. breeding. interests) Define discounted partner pet services Michel Goldenberg 115 .) Complete bios on staff members (backgrounds. 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. training. brand.Doggy Daycare Brochure Backlog • • • • • • • • • • • • • • Create cover art.

brand.) 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 . oxygen. 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.Martian Tourists Visiting Earth Brochure Backlog • • • • • • • • • • • • • • • Create cover art. fungi. etc.

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.Wedding Planner Brochure Backlog • • • • • • • • • • • • • • Create cover art.

brand.Family Treasures Cookbook Proposal Backlog • • • • • • • • • • • • • • • Create cover art. 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 .

dependencies. risks. etc • Debrief to Class – 15 minutes Michel Goldenberg 119 .Scrum Simulation Part 1 • Goal: To Develop a Marketing Brochure in 2 (2 day) Sprints – Building a Product Backlog • Select Brochure and Product Owner.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.

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.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 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 .

Team involved » Team tasks Product Backlog items » Team volunteers for tasks and commits » Add tasks to task board • Do your work in “Sprint 2 .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.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.org Michel Goldenberg 124 .scrumalliance.

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