$30 off During Our Annual Pro Sale. View Details »

How to Keep Product Development Teams Going Fas...

How to Keep Product Development Teams Going Fast - Agile Velocity - ProductCamp

Features often get delivered quickly on new software projects, but the pace gets exponentially slower over time. Why does this happen and what can you do about it? In this session, we'll introduce the hidden drag of technical debt and explain how it works. Through a combination of presentation, discussion and exercises Product Managers will learn how to recognize the symptoms and work with your team to eliminate it, so you can keep going fast.

Eric Stewart

July 20, 2013
Tweet

More Decks by Eric Stewart

Other Decks in Technology

Transcript

  1. As you come in, find someone in the room and

    discuss what you know about Technical Debt
  2. Long Delivery Times Mounting Defects Rising Development Costs Poor Customer

    Responsiveness Late Deliveries Frustrated and Poor Performing Teams
  3. Unintentional Debt Poor Code or Design Business Pressure Poor Practices

    Inflexible Software Lack of understanding Poor design/ architecture Unintended Complexity Poor design
  4. Feature Cost: 15 Feature Cost: 10 Feature Cost: 5 Technical

    Debt Cost 15 Impact -10 Technical Debt Cost 15 Impact -10 Technical Debt Cost 10 Impact -5 Technical Debt Cost 5 Impact -5 Technical Debt Cost 5 Impact -5 Iteration Card Setup your board as follows
  5. Feature Cost: 15 Feature Cost: 10 Feature Cost: 5 Technical

    Debt Cost 15 Impact -10 Technical Debt Cost 15 Impact -10 Technical Debt Cost 10 Impact -5 Technical Debt Cost 5 Impact -5 Technical Debt Cost 5 Impact -5 Iteration Card Add  up  the  total    impact  of  all     technical  debt  items -35
  6. Technical)Debt)Game Iteration)1 Iteration)2 Iteration)3 Iteration)4 Iteration)5 Theoretical)Capacity 60 60 60

    60 60 Technical)Debt)Impact) (add)up)the)total))impact)of)all))technical)debt)items) Actual)Capacity (Subtract)Technical)Debt)Impact)from)Theoretical)Capacity)) Allocated)Points)Spent)on)Tech)Debt Allocated)Points)Spent)on)Features Total)Feature)Points)Deliverd)To)Date (This)is)a)cumulative)sum)of)Feature)points)delivered) 1.)Update)Actual)Capacity 3.)Plan)your)Iteration (Allocate)how)many)points)of)your)capacity)you)want)to)spend)on)Features)vs.)Technical)Debt) 4.)Draw)an)Iteration)Card (Follow)the)instructions)on)the)card) 2.)Update)Chart (Plot)the)Technical)Debt)Impact)for)the)current)iteration) 0" 10" 20" 30" 40" 50" 60" 70" Itera/on"1" Itera/on"2" Itera/on"3" Itera/on"4" Itera/on"5" Points)Per)Cycle) Theori/cal"Capacity" Technical"Debt"Impact" -35 25 X
  7. Technical)Debt)Game Iteration)1 Iteration)2 Iteration)3 Iteration)4 Iteration)5 Theoretical)Capacity 60 60 60

    60 60 Technical)Debt)Impact) (add)up)the)total))impact)of)all))technical)debt)items) Actual)Capacity (Subtract)Technical)Debt)Impact)from)Theoretical)Capacity)) Allocated)Points)Spent)on)Tech)Debt Allocated)Points)Spent)on)Features Total)Feature)Points)Deliverd)To)Date (This)is)a)cumulative)sum)of)Feature)points)delivered) 1.)Update)Actual)Capacity 3.)Plan)your)Iteration (Allocate)how)many)points)of)your)capacity)you)want)to)spend)on)Features)vs.)Technical)Debt) 4.)Draw)an)Iteration)Card (Follow)the)instructions)on)the)card) 2.)Update)Chart (Plot)the)Technical)Debt)Impact)for)the)current)iteration) 0" 10" 20" 30" 40" 50" 60" 70" Itera/on"1" Itera/on"2" Itera/on"3" Itera/on"4" Itera/on"5" Points)Per)Cycle) Theori/cal"Capacity" Technical"Debt"Impact"
  8. Feature Cost: 10 Feature Cost: 15 Feature Cost: 10 Technical

    Debt Cost 15 Impact -10 Technical Debt Cost 15 Impact -10 Technical Debt Cost 10 Impact -5 Technical Debt Cost 5 Impact -5 Technical Debt Cost 5 Impact -5 Iteration Card You have 25 Points to Spend Select the cards you want to spend your points on. No partially done work. Feature Cost: 5 Feature Cost: 5
  9. Technical)Debt)Game Iteration)1 Iteration)2 Iteration)3 Iteration)4 Iteration)5 Theoretical)Capacity 60 60 60

    60 60 Technical)Debt)Impact) (add)up)the)total))impact)of)all))technical)debt)items) Actual)Capacity (Subtract)Technical)Debt)Impact)from)Theoretical)Capacity)) Allocated)Points)Spent)on)Tech)Debt Allocated)Points)Spent)on)Features Total)Feature)Points)Deliverd)To)Date (This)is)a)cumulative)sum)of)Feature)points)delivered) 1.)Update)Actual)Capacity 3.)Plan)your)Iteration (Allocate)how)many)points)of)your)capacity)you)want)to)spend)on)Features)vs.)Technical)Debt) 4.)Draw)an)Iteration)Card (Follow)the)instructions)on)the)card) 2.)Update)Chart (Plot)the)Technical)Debt)Impact)for)the)current)iteration) 0" 10" 20" 30" 40" 50" 60" 70" Itera/on"1" Itera/on"2" Itera/on"3" Itera/on"4" Itera/on"5" Points)Per)Cycle) Theori/cal"Capacity" Technical"Debt"Impact" -35 25 10 15 15 X
  10. The goal is to complete as many feature points at

    the end of 5 iterations. Stop!
  11. Agile processes promote sustainable development. The sponsors, developers, and users

    should be able to maintain a constant pace indefinitely.