46
[email protected] Scaling Scrum with Feature Teams

Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

[email protected]

Scaling Scrum

with Feature

Teams

Page 2: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Agenda

2

Introduction

Before we start -> Some basics

Feature teams and component teams

Page 3: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Introduction

3

Page 4: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

バスはどれでしょう?

or 八斯是!?

Page 5: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Scaling Lean & Agile Development

Thinking and Organizational Tools for Large-Scale Scrum

Craig LarmanBas Vodde

Practices for Scaling Lean & Agile

DevelopmentLarge, Multisite, and Offshore Products

with Large-Scale Scrum

Craig LarmanBas Vodde

Page 6: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Some basics

6

Page 7: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

7

Scrum

!"#$%

&'(")**+

,-./01

,-./01

2*1.3'

4-*51/6*

,-./01

2*6/*)

7.3#851"9$5+:3;

2*</0*=*01""""""

731*01/$::%

,>/--$?:*

7.3#851

@05.*=*01

,-./01

7:$00/0;

7$.1"&

,-./01

7:$00/0;

7$.1"!

!"#$%&'

!()%*+,'

7.3#851

9$5+:3;

7.3#851

A)0*.

!"#$%&' !"#$%&'

%%!)#(-.%/0%123+,4'

!(5)#6&',5.8=

B*$18.*

C*$=

D

,5.8=E$41*.

,-./01

9$5+:3;

F$/:%

,5.8=

)))G5.$/;:$.=$0G53=

)))G3##'*G53=

H3-%./;>1"I"HGJ$.=$0"K"

9G"L3##*"&MMNG"

O::"./;>14".*4*.6*#G

Page 8: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Continuous Integration

8

Continuous Integration is a developer practice

with the goal to always keep a working system

by making small changes, slowly growing the system

and integrating them at least daily

on the mainline

typically supported by a CI system

with lots of automated tests

Page 9: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

9

!"#"$%&"'()*+,-,."/

)%0.102%2,30."4'5.1%0,"'#"'

67"68,+10+59."'+'200104+.",.,+$%65$$-

/%01.%'

6%/&1$"

201.+.",.

10,.5$$+:+;"&$%-

566"&.506".",.,

.'144"'";+%0+67504"+10+6%;"<

50-+%.7"'.",.,

50-+,."&+951$";=

910;+%2.>7%+?'%8".7"+?21$;

,"0;+50+"@/51$:(*(AB1C+.7"+?21$;D

!!!"#$%&'(%$)%*"#+)

!!!"+,,-."#+)

/+01$&'23454/"6%$)%*474

8"49+,,.4:;;<"4

=((4$&'23>4$.>.$?.,"

Page 10: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Scaling CI system

10

!"#"$%&"'!"#"$%&"'

(")*"'

+',-.*",*

!"#"$%&"'!"#"$%&"'

(")*"'

+',-.*",*

,%/&%0"0* $%12$"#"$345)6)*"/

,%/&%0"0* $%12$"#"$345)6)*"/

,%/&%0"0* $%12$"#"$345)6)*"/

7"8*9'"2$"#"$345)6)*"/

7"8*9'"2$"#"$345)6)*"/

7"8*9'"2$"#"$345)6)*"/

:8.$65;9.$:

$%12$"#"$5,%/&%0"0*534)6)*"/)

-.<-"'2$"#"$7"8*9'"534)6)*"/)

)6)*"/2$"#"$:8.$65;9.$:

7"8*9'"5*"8/)

!!!"#$%&'(%$)%*"#+)

!!!"+,,-."#+)

/+01$&'23454/"6%$)%*474

8"49+,,.4:;;<"4

=((4$&'23>4$.>.$?.,"

Page 11: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Large-scale setup

11

Customer DocDeveloperScrumMaster

Analyst

Tester ArchitectInteraction

Designer

Customer DocDeveloperScrumMaster

Analyst

Tester ArchitectInteraction

Designer

Customer DocDeveloperScrumMaster

Analyst

Tester ArchitectInteraction

Designer

Page 12: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Feature teams

12

Page 13: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Conway’s law

Any organization that designs a system (defined more broadly here than just information systems) will inevitably produce a design whose structure is a copy of the organization's communication structure.

Page 14: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

And...

Because the design that occurs first is almost never the best possible, the prevailing system concept may need to change. Therefore, flexibility of organization is important to effective design.

- Mel Conway

Page 15: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

One ProductOwner

Multiple Teams

Teams own a part of the system:

“Component teams”

Page 16: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Low value work is implemented

Everybody always busy?

Page 17: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

“Work gets created”

Large systems... grow larger by default

Page 18: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

One requirement does not map to one team

Dependencies never balance out

Result: Not complete requirements integrated

Page 19: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Assign a problem to a role

Impossible job, requirements never balance out.

Result: priority and resource fights

Page 20: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Large backlog items must be split in “less customer-centric backlog items”

Page 21: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Splitting before the iteration starts: “Architecture”

Testing after the iterations ends:“System test”

Page 22: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

How to become good? ...

Page 23: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

One ProductOwner

3 Teams

Page 24: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Give complete requirements to teams:“Feature teams”

All dependencies within the team

Page 25: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Feature Teams

• long-lived—the team stays together so they can ‘jell’ for higher performance; they take on new features over time

• cross-functional and co-located

• work on a complete customer-centric feature, across all components and disciplines

• composed of generalizing specialists

Page 26: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

New problem:

Dependency moved

Page 27: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas
Page 28: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Modern version control (e.g. svn)

Continuous integration development practice

Automated build and test

Page 29: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Person specialization

Page 30: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Team specialization

Page 31: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Team specialization

Page 32: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Specialization good

Don’t let specialization constrain you

Learn new specializations

Page 33: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Emergent design

Component guardians

Page 34: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Community of Practice

Architect Facilitator

Same for e.g. test, ScrumMasters

Page 35: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Transition can often be done by reforming teams

Page 36: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

What about large product development?

Page 37: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Always have one product owner and one product backlog per product

Or... a group of products...

Page 38: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Group requirements into “categories” called:“Requirement areas”

Grouping based on customer, NOT on architecture

Page 39: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Create “requirement area backlogs”

RA backlog is a view on the product backlog

Every PBI maps always to exactly one RA backlog

Page 40: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Every RA has their own “area product owner”

RA product owner specializes in “customer-centric domain”

Page 41: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Every RA has a set of feature teams

From 5-10 per RA

Teams specialize in that area

Areas are dynamic over time

Page 42: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Overall PO decides on moving teams between areas

Value vs velocity

Page 43: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Transition strategy

Page 44: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

“Development areas” are groupings based on architecture

Helps transition, has all drawbacks of component teams

Page 45: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Item 1

Item 2

Item 3

Item 4

System

Comp A

Team

Comp B

Team

Comp C

Team

Component

A

Component

B

Component

C

Product

Owner

Feature

Team #1

Item 2 for A

Item 2 for B

Item 3 for A

Item 3 for B

Item 4 for A

Item 4 for C

Page 46: Scaling Scrum with Feature Teams - Odd-e · 2018-01-12 · Feature teams and component teams. Introduction 3. ... feature teams From 5-10 per RA Teams specialize in that area Areas

Questions?