Skip to content

Instantly share code, notes, and snippets.

@juanpaulo
Last active August 29, 2015 14:09
Show Gist options
  • Save juanpaulo/fd9017a09a0627d60219 to your computer and use it in GitHub Desktop.
Save juanpaulo/fd9017a09a0627d60219 to your computer and use it in GitHub Desktop.
CSM Training (Day 1)

Scrum: It's All About Common Sense

This course is:

  • Much the same as most ScrumMaster certification courses
  • The start of your journey, or a good waypoint on a journey that has already begun

Certification materials: http://www.scrumguides.org

impediment and agile


Course Outline What is Scrum? Scrum History Scrum Theory, Concepts, Practices Sprint Planning Production and Sprints Velocity Game Overcoming Impediments Management, Distribution and Scaling Engineerin Tools and Practices FEEDBACK FORMS

Stand-up meetings are done to re-plan the sprint

Product Owner Sprint planning > Sprint > Sprint review

The best people to make estimates are the scrum team

Product backlog & Sprint backlog Daily scrum meeting (15 minutes)

  1. What have I done
  2. What will I do
  3. What are the problems

Scrum Master Coach, fixer, gatekeeper

Faster, Better, Cooler


0. What is Scrum?

  • It is not a method
  • It does not tell you what to do, nor how
  • It is not about software - it works for any endeavor concerned about building a product
  • It is a product management framework that you fill in, that allows you to inspect and adapt
  • It promises only that the team will work on the most important things first
  • It tends to be fun

You cannot commit, you can only estimate


1. Scrum History

  • In fact, agile is old - 1950s, 1960s in software
  • We focus on recent history since about 1990
  • OO / The Pattern / Agile community
  • Agile Manifesto
  • Manufacturing influences
  • Lean

Snowden-cynefin

  • Obvious
  • Complicated
  • Complex
  • Chaotic

enter image description here

1976 - Dynabook "Teaching Machine" http://www.mprove.de/diplom/gui/kay72.html enter image description here

A Bit of History The New New Product Development Game http://hbr.org/1986/01/the-new-new-product-development-game/ar/1 The Knowledge Creating Company Org. Patterns First Sprint of Scrum ... Collaborative Software...

The Agile Manifesto

When a bug is reported, don't put it in JIRA, you fix it!!! Don't document bugs, write tests

Origins of Scrum The New, New Product Development Game + Borland QPW + Iterative, Incremental Development, Timeboxes => Smalltalk Engineering Tools => Scrum

Everybody does QA! No testing teams in scrum, there is no handoff in scrum Productivity is the #1 cause of waste

Toyota Motor Manufacturing

  1. As an American company, contribute to the economic growth of the community and the United States.
  2. As an independent company, contribute to the stability and well-being of team members.
  3. As a Toyota group company, contribute to the overall growth of Toyota by adding value to our customer.

Lean Reduce waste! How?

  • Don't let mistakes propagate into the process
  • Find problems early
  • Don't build something for which there isn't a stakeholder
  • Minimize on-hand inventory: optimize material flow

History of Lean

  • Originally, Toyoda looms
  • Popuralized in Toyota car manufacturing (esp. the Prius line)
  • Also draws on Taylor's application of Scientific Method to manufacturing (1911)

It's not about fixing the bug, it's about fixing the process

The result: Ba (場) Creative flow of innovation Without inefficiency ...

Lean Ba / Muda Mura Muri Source: Taiichi Ohno, Executive Vice President of Toyota The "Three Ms" of inefficiency

  • Muda
  • Mura
  • Muri

Characteristics of kaizen (continuous improvement) management philosophy

Muda Mura Muri in Scrum

  • The Andon Board
  • Kaizen: learn by doing
  • Muda (ichi)
  • Mura (ni)
  • Muri (san)

We do not master plan but inspect and adapt No time-worked sheets, no write-only document, no shelfware Short feedback loops to ensure everyone is on the same page

Things are done when...

Scrum is about measuring, unit test is Muda

How do you estimate then?

There are no projects in Scrum

Another Short Story

A Short History of XP From: Kent Beck To: Jeff Sutherland HBR paper

Is there a good place to get reprints of the SCRUM paper from HBR...


2. Scrum Theory, Concepts, Practices

  • Be careful about predicting, particularly if it involves the future - Niels Bohr
  • Traditional process (waterfall, Microsoft Project) depend on prediction over long time scales
  • They guess wrong about what is needed
  • They miss the mark about when it will be done

What is Agile?

  • Agile lays out a vision and then nurtures project resources to do the best possible to achieve the plan
  • Agile is the "art of the possible"
  • The Agile Heart is self-organization

Scrum is about control, failure, and hansei

An Agile Story When Rosing started at Google in 2001, "we had management in engineering. And the structure was tending to tell people, No, you can't do that." So Google got rid of the managers. Now, most engineers work in teams of three, with project leadership rotating among team members. If something isn't right, even if it's in a product that has already gone public, teams fix it without asking anyone... "For a while," Rosing says, "I had 160 direct reports. No managers. It worked because the teams knew what they had to do. That set a cultural bit in people's heads: You are the boss. Don't wait to take the hill. Don't wait to be managed." ... And if you fail, fine. On to the next idea...

**How do we support it?

  • Maximized Communication
    • Effective, regular (daily!) meetings
    • Collocation and true small-team dynamics
  • Autonomy
  • Time-boxing: give the team space and uninterrupted time to do work
  • We expect the team only to do their best...

Scrum Broken Down

Three Roles

  • Product Owner
  • ScrumMaster
  • Developer

Four Ceremonies

  • Sprint Planning Topic 1 & Topic 2
  • Daily Scrum
  • Sprint Review
  • Retrospective
  • (Backlog Refinement)
  • (Abnormal sprint termination)

Four Artifacts

  • Product Backlog
  • Impediment List
  • Sprint Backlog
  • Sprint Goal

Product Owner

  • Establishes, nurtures and communicates the product vision
  • Manages values (e.g., ROI) against and investment vision
  • Manages the Product Backlog
  • Makes release "shippable" decision
  • There is often a Product Owner Team headed by a Chief Product Owner
  • The Development Team + Product Owner + ScrumMaster is called the Scrum Team

A Product Owner interacts with the customer everyday

The Development Team

  • Cross-functional
  • Stable team membership over time
  • Selects and develops highest items on Product Backlog
  • Splits up work into easily estimated, small tasks
  • Manages the development iteration to its forecast
  • Develops the product in time-boxed intervals called Sprints

Chickens and Pigs

  • Scrum meetings have Chickens and Pigs:
    • A Chicken and a Pig decided to go into business to open a restaurant. The Pig asked the Chicken: "What should we name it?" The Chicken responded, "How about 'Ham and Eggs'?" The Pig responded, "No, thank-you: while you'd be involved, I'd be committed."
  • In Scrum, Pigs may talk; Chickens may not

More precisely...

  • The Scrum team...

The ScrumMaster

  • Sustains culture and environment to optimize ROI
  • Organizes Sprint Planning
  • Calls the Sprint Review
  • Shields the team from outside disturbances
  • Removes obstacles to progress
  • May not direct the team nor tell them what to do
  • Should facilitate retrospectives

Customer

  • There is no Customer in Scrum: the PO speaks for the...

Three Lists

  • Product backlog
  • Sprint backlog
  • Impediment List - anything the team can work on that makes things better

Product backlog is not a roadmap

The Impediment List

  • The ScrumMaster's Backlog
  • Updated daily
  • Open, visible and honest
  • Team should first try to solve its own impediments: ScrumMasters should push back
  • ScrumMaster takes ownership of impediments that the team can't solve
  • Management is the last level of escalation

The Sprint Goal

  • The Team commits to the Sprint Goal!
  • The Sprint Goal can be any coherence that causes the Development Team to work together rather than on separate initiatives.
  • The Sprint Goal gives the Development Team some flexibility regarding the function implemented within the Sprint

Time Boxing

  • Time for the Development Team to work undisturbed
  • Establishes team rhythms
  • The Sprint is the main unit of time boxing
  • A Sprint represents a Development Team forecast
  • During a Sprint,
    • delivery scope (PBIs) cannot change
    • no changes are allowed that threaten the Sprint Goal
    • there may be no new external requirements
  • Keeps feedback loops tight

Sprint Planning

  • Meeting to produce the initial Product Backlog and update it over time
  • All stakeholders present: Product Owner, ScrumMaster, the Development Team, maybe other stakeholders
  • The Product Owner runs the meeting; the ScrumMaster makes sure the meeting happens
  • Topic I: work on the Product Backlog
  • Topic II: work on the Work Plan

**Sprint Planning and Backlog Refinement (The "Wednesday Meeting")

  • Most of the backlog should be prepared before Sprint Planning
    • An unprepared backlog makes for terrible meetings, demotivates and slows down the team
  • Prepare PBIs weekly in Backlog Refinement
  • Sprint Planning Topic II focuses on the work plan

The Product Owner

  • Product Owner: One person
  • Also can be a Product Owner Team with a Chief Product Owner
  • Maximizes ROI - accountable for value and ROI
  • The Answer Man to the Development Team during a Sprint
  • Establishes and sustains product funding
  • Decides which PBIs are releaseable
  • Ensures:
    • one set of requirements drives development
    • no confusion from multiple bosses, different opinions, and interference from the outside
  • Develops and maintains the Product Backlog
  • Orders the Product Backlog
  • Empowered to make decisions for all stakeholders and users
  • Attends Sprint planning and Sprint review meetings
  • Presents and explains Product Backlog to the team
  • Manages the vision, ROI, and releases

The Product Owner may not:

  • act as a Project Manager
  • demotivate the team - it's all about trust
  • tell what the team should deliver...
  • talk at the daily Scrum (if very experienced)
  • clarify issues
  • deliver the latest business value
  • inspire the team value
  • initiate the Emergency Procedure (and terminate a Sprint in an emergency)

The Product Backlog

  • List of functionality, technology, issues
  • Top three sprints are Enabling Specifications
  • Issues are placeholders that are later defined as work
  • Emergent, ordered, estimated
  • More detail on highest backlog items
  • One list for multiple Development Teams
  • Product Owner responsible for ordering
  • Any stakeholder can contribute
  • Maintained and posted visibly

Why Planning Poker

  • It ensures everybody participates in the estimation
  • It avoids 'coloring' of the estimates by a few key members of the team
  • It speeds up the estimation process
  • It's pigs, not chickens
  • It is fun!


How much can you change requirements? Depends on how agile your team is

Scrum - focus on value

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment