SlideShare a Scribd company logo
1 of 51
Download to read offline
Authors
Todd Sedano
Paul Ralph
Cécile Péraire
Surviving 120% Team Churn
Sustainable Software Development through
Overlapping Pair Rotation
(photos licensed or ©Todd Sedano)
2
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
photos used with permission
3
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
Todd Sedano 

professor@gmail.com
Why?
4
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
1. Team losing information 

2. Learning curve for new developer 



5
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
6
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
B
E
A
C
D
F
Knowledge
Todd Sedano 

professor@gmail.com
A
7
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
B
E
C
D
F
Knowledge
Knowledge Leaving
Todd Sedano 

professor@gmail.com
8
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
B
E
C
D
F
Knowledge
New
Employee
Todd Sedano 

professor@gmail.com
We want to spread knowledge
throughout the team

9
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Research Method
10
Constructivist Grounded Theory
Iterative approach to data collection, coding, and analysis

Data Sources

1) participant observations of five projects

2) interviews with 21 software engineers, interaction designers,
and product managers

Interviews were transcribed, coded, and analyzed using constant
comparison

Research Question: “How do the observed teams develop
software effectively while overcoming team disruption?”
Todd Sedano 

professor@gmail.com11
Newsletter Signup:

http://sedano.org/research
Research Context: Pivotal Labs
Mission: a) Deliver highly-crafted software 

b) Provide a transformative experience for client and

combine client engineers with pivotal engineers

Project team sizes: 2 to 28 devs (6 is common)

Balanced team: interaction designer, product manager, devs

Method: Extreme Programming

Todd Sedano 

professor@gmail.com12
Newsletter Signup:

http://sedano.org/research
Project Quattuor
13
Original Staffing Plan
Todd Sedano 

professor@gmail.com14
Newsletter Signup:

http://sedano.org/research
Week # of the Project
DevelopersAllocated
Actual Staffing Plan
Todd Sedano 

professor@gmail.com15
Newsletter Signup:

http://sedano.org/research
Theory of Sustainable
Software Development
16
Todd Sedano 

professor@gmail.com
Mitigates negative disruption effects by 

1. Spreading knowledge around the team

2. Writing “well-factored” code

17
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
Increases the ability of any pair to
work on any story in the backlog
18
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Sustainable Software Development
3 Principles

3 Policies

3 Practices for Removing Knowledge Silos

3 Practices for Caretaking the Code

Todd Sedano 

professor@gmail.com19
Newsletter Signup:

http://sedano.org/research
ESEM 2016
Principles
Engendering Positive Attitudes Toward Team Disruption
“Team members go out of their way to make new teammates
feel welcome and help ramp them up.”

Encouraging Knowledge Sharing and Continuity
“Everyone has context. Everyone is constantly communicating
about the entire system.”

Caring about Code Quality
“Everyone is responsible for fixing issues.”
Todd Sedano 

professor@gmail.com20
Newsletter Signup:

http://sedano.org/research
Policies
Team Code Ownership
Increasing the ability to change any of the team’s code

“I feel ownership of the code as a whole. 

I feel empowered to work on any part of the codebase.”

Shared Schedule
Working the same hours whenever possible

Avoid Technical Debt
“Thinking that someone else will fix it can be dangerous,

because then nobody will do it.”
Todd Sedano 

professor@gmail.com21
Newsletter Signup:

http://sedano.org/research
Removing Knowledge Silos Practices
Continuous Pair Programming
Pairing whenever possible

Increases Team Code Ownership

Overlapping Pair Rotation
Rotating one partner on each track of work 

“This reduces knowledge silos and reduces the bus
factor. We do not want the departure of one developer 

to cripple the project.”

Knowledge Pollination
Sharing information in unstructured ways
Todd Sedano 

professor@gmail.com22
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
Example: 

Removing Knowledge Silos
23
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Individual Code Ownership
Todd Sedano 

professor@gmail.com24
Newsletter Signup:

http://sedano.org/research
A B C D E F
Knowledge Gap
Knowledge Transfer
Continuous Pair Programming
Todd Sedano 

professor@gmail.com25
Newsletter Signup:

http://sedano.org/research
A B C D E F
Knowledge Gap
Knowledge Transfer
Overlapping Pair Rotation
Todd Sedano 

professor@gmail.com26
Newsletter Signup:

http://sedano.org/research
Knowledge Gap
Knowledge Transfer
A B
D
C
F
E
Strategies
Optimizing for people rotation
Optimizing for personal preferences
Optimizing for context sharing
Knowledge Pollination
Todd Sedano 

professor@gmail.com27
Newsletter Signup:

http://sedano.org/research
Knowledge Gap
Knowledge Transfer
A B
D
C
F
E
Knowledge Pollination
Contributing to knowledge sharing in an un-structured way
Daily stand-up meetings

Weekly retrospectives

Writing or sketching on whiteboards

Overhearing a conversation

Using the backlog to communicate current status about a story

Calling out an update to the entire team

Simply reaching out to team to ask a question

Todd Sedano 

professor@gmail.com28
Newsletter Signup:

http://sedano.org/research
A B
D
C
F
E
Todd Sedano 

professor@gmail.com
Example: 

Strategies for Rotation
29
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Four Tracks of Work
Todd Sedano 

professor@gmail.com30
Newsletter Signup:

http://sedano.org/research
Track 1 Track 2 Track 3 Track 4
Icons designed by Freepik
Individual Ownership
Todd Sedano 

professor@gmail.com31
Newsletter Signup:

http://sedano.org/research
Day 1 BobAlice
a a
Day 2 BobAlice
b b
Day 3 BobAlice
c c
Day 4 BobAlice
d d
Alice Bob
b
aa
d
c
Generated Knowledge

After Four Days
c
d
b
Optimizing for Personal Preference
Todd Sedano 

professor@gmail.com32
Newsletter Signup:

http://sedano.org/research
Day 1 BobAlice
aa
bb
Day 2 CarolAlice
cc
Day 3 DanAlice
dd
Day 4 ErinAlice
Alice Bob
a
b
a
d
Generated Knowledge

After Four Days
c
d
c
bI’m enjoying
this track
Optimizing for People Rotation
Todd Sedano 

professor@gmail.com33
Newsletter Signup:

http://sedano.org/research
Day 1 BobAlice
aa
bb
Day 2 CarolBob
cc
Day 3 AliceCarol
dd
Day 4 ErinAlice
Alice Bob
Generated Knowledge

After Four Days
a
c
d
b b
d
a
c
Bob Carol
bb
d
a a
cc
Generated Knowledge

After Four Days
d
Optimizing for Knowledge Sharing
Todd Sedano 

professor@gmail.com34
Newsletter Signup:

http://sedano.org/research
Day 1 BobAlice
aa
bb
Day 2 CarolBob
cc
Day 3 DanCarol
dd
Day 4 DanCarol
Has enough
context been
shared?
YesYes
YesYes
YesNo
Has enough
context been
shared?
Has enough
context been
shared?
Example in Practice
Todd Sedano 

professor@gmail.com35
Newsletter Signup:

http://sedano.org/research
Caretaking the Code Practices
TDD / BDD
Write unit tests before creating a design or writing code 

Creates a safety net

“Allows me to change code without breaking everything”

Continuous Refactoring
Systematic improvement of the code base 

Enables any pair to work on any part of the system 

Supported by Live on Master
“Use frequent commits and always rebase”
Todd Sedano 

professor@gmail.com36
Newsletter Signup:

http://sedano.org/research
Sustainable Software Development
Todd Sedano 

professor@gmail.com
Principles Policies
Engendering Positive Attitudes Toward Team Disruption

Encouraging Knowledge Sharing and Continuity 

Caring about Code Quality
Team Code Ownership 

Shared Schedule

Avoid Technical Debt
37
Newsletter Signup:

http://sedano.org/research
Removing Knowledge Silos Practices Caretaking the Code Practices
Continuous Pair Programming

Overlapping Pair Rotation

Knowledge Pollination
TDD / BDD

Continuous Refactoring 

Supported by Live on Master
ESEM 2016
Team Code Ownership
38
Team Code Ownership paper
Available at ResearchGate.com
Todd Sedano 

professor@gmail.com39
Newsletter Signup:

http://sedano.org/research
Team Code Ownership
Collective Ownership (Beck 2000)

“Anyone can change any piece of code in the system at any time”
aka Shared Code (Beck 2004), 

Collective Code Ownership (Fowler 2006)

Team Code Ownership (Sedano 2016)

“the ability for any developer on a team to change any of the
team’s code”
Todd Sedano 

professor@gmail.com40
Newsletter Signup:

http://sedano.org/research
Team Code Ownership
Is more than a policy statement

Is a complex interaction

Is an emotional, qualitative attribute 

Eroded by some events

Bolstered by some practices 

Is a spectrum 

Todd Sedano 

professor@gmail.com41
Newsletter Signup:

http://sedano.org/research
Individual Team
Five Observed Factors Affecting Ownership
1. System Context

2. Code Contribution

3. Code Quality

4. Product Fit

5. Team Cohesion
Todd Sedano 

professor@gmail.com42
Newsletter Signup:

http://sedano.org/research
Limitations
Researcher bias: With participant-observer, the researcher may
lose perspective and become biased by being a member of
the team

Prior knowledge bias: may also blind the researcher to
alternative explanations 

We mitigated these risks by recording interviews and having the
second and third authors review the coding process

External Validity: grounded theory is non-statistical sampling
research (results might not apply to different software cultures)
Todd Sedano 

professor@gmail.com43
Newsletter Signup:

http://sedano.org/research
Conclusion
44
Summary
1. Introduce Sustainable Software Development Theory
Todd Sedano 

professor@gmail.com45
Newsletter Signup:

http://sedano.org/research
Summary
2. The theory extends our understanding of Extreme Programming

3. Mitigates the negative effects of major disruptions by 

i. Spreading knowledge around the team

ii. Writing “well-factored” code
Todd Sedano 

professor@gmail.com46
Newsletter Signup:

http://sedano.org/research
Conclusion
Primary benefits to the software developer
Understand the team’s code

Work on any story

Increased teaching opportunities

Primary benefit to the employer is business agility
Team continues to deliver “quality software effectively” while
surviving disruptions
Todd Sedano 

professor@gmail.com47
Newsletter Signup:

http://sedano.org/research
48
Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
photos used with permission
Thank You!
49
Sustainable Software Development paper
50
Available at ResearchGate.com

Newsletter Signup:

http://sedano.org/research
Todd Sedano 

professor@gmail.com
Newsletter Signup:

http://sedano.org/research
Discussion
51

More Related Content

Viewers also liked

TDD: The Bad Parts
TDD: The Bad Parts TDD: The Bad Parts
TDD: The Bad Parts
VMware Tanzu
 
2013 family as a unit of care
2013 family as a unit of care2013 family as a unit of care
2013 family as a unit of care
Aileen Pascual
 

Viewers also liked (10)

ป้ายเว็บครูอาสา
ป้ายเว็บครูอาสาป้ายเว็บครูอาสา
ป้ายเว็บครูอาสา
 
Využití a propojování informačních zdrojů
Využití a propojování informačních zdrojůVyužití a propojování informačních zdrojů
Využití a propojování informačních zdrojů
 
From Commit to Production in 10 Minutes… at a Century Old Insurance Company
From Commit to Production in 10 Minutes… at a Century Old Insurance CompanyFrom Commit to Production in 10 Minutes… at a Century Old Insurance Company
From Commit to Production in 10 Minutes… at a Century Old Insurance Company
 
Lock it down
Lock it downLock it down
Lock it down
 
The Twelve Factor Container
The Twelve Factor ContainerThe Twelve Factor Container
The Twelve Factor Container
 
The Enabling Force of Technology at Liberty Mutual
The Enabling Force of Technology at Liberty MutualThe Enabling Force of Technology at Liberty Mutual
The Enabling Force of Technology at Liberty Mutual
 
Deep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer ArchitectureDeep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer Architecture
 
TDD: The Bad Parts
TDD: The Bad Parts TDD: The Bad Parts
TDD: The Bad Parts
 
2013 family as a unit of care
2013 family as a unit of care2013 family as a unit of care
2013 family as a unit of care
 
Family health nursing
Family health   nursingFamily health   nursing
Family health nursing
 

Similar to Surviving 120% Team Churn

Similar to Surviving 120% Team Churn (20)

Google summer of code (GSoC) 2021
Google summer of code (GSoC) 2021Google summer of code (GSoC) 2021
Google summer of code (GSoC) 2021
 
Google summer of code
Google summer of codeGoogle summer of code
Google summer of code
 
Google Summer of Code (GSoC) 2022
Google Summer of Code (GSoC) 2022Google Summer of Code (GSoC) 2022
Google Summer of Code (GSoC) 2022
 
"Strategies for Scientific Communication" part of #SSNCE Research Scholars’ C...
"Strategies for Scientific Communication" part of #SSNCE Research Scholars’ C..."Strategies for Scientific Communication" part of #SSNCE Research Scholars’ C...
"Strategies for Scientific Communication" part of #SSNCE Research Scholars’ C...
 
Google Summer of Code (GSoC) 2022
Google Summer of Code (GSoC) 2022Google Summer of Code (GSoC) 2022
Google Summer of Code (GSoC) 2022
 
Delicious E L08
Delicious E L08Delicious E L08
Delicious E L08
 
Things I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduateThings I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduate
 
9 Steps To Running Your Own TEDx
9 Steps To Running Your Own TEDx9 Steps To Running Your Own TEDx
9 Steps To Running Your Own TEDx
 
Y5 Coding 2016 Digital Technologies Program
Y5 Coding 2016 Digital Technologies ProgramY5 Coding 2016 Digital Technologies Program
Y5 Coding 2016 Digital Technologies Program
 
ChatGPT: Friend or Foe?
ChatGPT: Friend or Foe?ChatGPT: Friend or Foe?
ChatGPT: Friend or Foe?
 
An Introduction to Google Summer of Code 2015
An Introduction to Google Summer of Code 2015An Introduction to Google Summer of Code 2015
An Introduction to Google Summer of Code 2015
 
Google summer of code 2012
Google summer of code 2012Google summer of code 2012
Google summer of code 2012
 
Grupo 1 feria de ciencias.pptx
Grupo 1 feria de ciencias.pptxGrupo 1 feria de ciencias.pptx
Grupo 1 feria de ciencias.pptx
 
Making it simple to ensure the use of colour is both on brand and accessible
Making it simple to ensure the use of colour is both on brand and accessibleMaking it simple to ensure the use of colour is both on brand and accessible
Making it simple to ensure the use of colour is both on brand and accessible
 
Strategies for Scientific Communication
Strategies for Scientific CommunicationStrategies for Scientific Communication
Strategies for Scientific Communication
 
Google Summer of Code_2023.pdf
Google Summer of Code_2023.pdfGoogle Summer of Code_2023.pdf
Google Summer of Code_2023.pdf
 
Openlearn
OpenlearnOpenlearn
Openlearn
 
The Resultsof Web2.0 11 12 09 Slideshare
The Resultsof Web2.0   11 12 09   SlideshareThe Resultsof Web2.0   11 12 09   Slideshare
The Resultsof Web2.0 11 12 09 Slideshare
 
The Resultsof Web2.0 11 12 09 Slideshare
The Resultsof Web2.0   11 12 09   SlideshareThe Resultsof Web2.0   11 12 09   Slideshare
The Resultsof Web2.0 11 12 09 Slideshare
 
PETE&C 2/24/10 - The Results of Web 2.0 in the Classroom
PETE&C 2/24/10 - The Results of Web 2.0 in the ClassroomPETE&C 2/24/10 - The Results of Web 2.0 in the Classroom
PETE&C 2/24/10 - The Results of Web 2.0 in the Classroom
 

More from VMware Tanzu

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Surviving 120% Team Churn

  • 1. Authors Todd Sedano Paul Ralph Cécile Péraire Surviving 120% Team Churn Sustainable Software Development through Overlapping Pair Rotation (photos licensed or ©Todd Sedano)
  • 2. 2 Newsletter Signup: http://sedano.org/research Todd Sedano professor@gmail.com photos used with permission
  • 4. Todd Sedano professor@gmail.com Why? 4 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 5. Todd Sedano professor@gmail.com 1. Team losing information 
 2. Learning curve for new developer 
 5 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 6. Todd Sedano professor@gmail.com 6 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research B E A C D F Knowledge
  • 7. Todd Sedano professor@gmail.com A 7 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research B E C D F Knowledge Knowledge Leaving
  • 8. Todd Sedano professor@gmail.com 8 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research B E C D F Knowledge New Employee
  • 9. Todd Sedano professor@gmail.com We want to spread knowledge throughout the team 9 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 11. Constructivist Grounded Theory Iterative approach to data collection, coding, and analysis Data Sources 1) participant observations of five projects 2) interviews with 21 software engineers, interaction designers, and product managers Interviews were transcribed, coded, and analyzed using constant comparison Research Question: “How do the observed teams develop software effectively while overcoming team disruption?” Todd Sedano professor@gmail.com11 Newsletter Signup: http://sedano.org/research
  • 12. Research Context: Pivotal Labs Mission: a) Deliver highly-crafted software b) Provide a transformative experience for client and combine client engineers with pivotal engineers Project team sizes: 2 to 28 devs (6 is common) Balanced team: interaction designer, product manager, devs Method: Extreme Programming Todd Sedano professor@gmail.com12 Newsletter Signup: http://sedano.org/research
  • 14. Original Staffing Plan Todd Sedano professor@gmail.com14 Newsletter Signup: http://sedano.org/research Week # of the Project DevelopersAllocated
  • 15. Actual Staffing Plan Todd Sedano professor@gmail.com15 Newsletter Signup: http://sedano.org/research
  • 17. Todd Sedano professor@gmail.com Mitigates negative disruption effects by 1. Spreading knowledge around the team 2. Writing “well-factored” code 17 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 18. Todd Sedano professor@gmail.com Increases the ability of any pair to work on any story in the backlog 18 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 19. Sustainable Software Development 3 Principles 3 Policies 3 Practices for Removing Knowledge Silos 3 Practices for Caretaking the Code Todd Sedano professor@gmail.com19 Newsletter Signup: http://sedano.org/research ESEM 2016
  • 20. Principles Engendering Positive Attitudes Toward Team Disruption “Team members go out of their way to make new teammates feel welcome and help ramp them up.” Encouraging Knowledge Sharing and Continuity “Everyone has context. Everyone is constantly communicating about the entire system.” Caring about Code Quality “Everyone is responsible for fixing issues.” Todd Sedano professor@gmail.com20 Newsletter Signup: http://sedano.org/research
  • 21. Policies Team Code Ownership Increasing the ability to change any of the team’s code “I feel ownership of the code as a whole. 
 I feel empowered to work on any part of the codebase.” Shared Schedule Working the same hours whenever possible Avoid Technical Debt “Thinking that someone else will fix it can be dangerous,
 because then nobody will do it.” Todd Sedano professor@gmail.com21 Newsletter Signup: http://sedano.org/research
  • 22. Removing Knowledge Silos Practices Continuous Pair Programming Pairing whenever possible Increases Team Code Ownership Overlapping Pair Rotation Rotating one partner on each track of work “This reduces knowledge silos and reduces the bus factor. We do not want the departure of one developer 
 to cripple the project.” Knowledge Pollination Sharing information in unstructured ways Todd Sedano professor@gmail.com22 Newsletter Signup: http://sedano.org/research
  • 23. Todd Sedano professor@gmail.com Example: 
 Removing Knowledge Silos 23 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 24. Individual Code Ownership Todd Sedano professor@gmail.com24 Newsletter Signup: http://sedano.org/research A B C D E F Knowledge Gap Knowledge Transfer
  • 25. Continuous Pair Programming Todd Sedano professor@gmail.com25 Newsletter Signup: http://sedano.org/research A B C D E F Knowledge Gap Knowledge Transfer
  • 26. Overlapping Pair Rotation Todd Sedano professor@gmail.com26 Newsletter Signup: http://sedano.org/research Knowledge Gap Knowledge Transfer A B D C F E Strategies Optimizing for people rotation Optimizing for personal preferences Optimizing for context sharing
  • 27. Knowledge Pollination Todd Sedano professor@gmail.com27 Newsletter Signup: http://sedano.org/research Knowledge Gap Knowledge Transfer A B D C F E
  • 28. Knowledge Pollination Contributing to knowledge sharing in an un-structured way Daily stand-up meetings Weekly retrospectives Writing or sketching on whiteboards Overhearing a conversation Using the backlog to communicate current status about a story Calling out an update to the entire team Simply reaching out to team to ask a question Todd Sedano professor@gmail.com28 Newsletter Signup: http://sedano.org/research A B D C F E
  • 29. Todd Sedano professor@gmail.com Example: 
 Strategies for Rotation 29 Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research
  • 30. Four Tracks of Work Todd Sedano professor@gmail.com30 Newsletter Signup: http://sedano.org/research Track 1 Track 2 Track 3 Track 4 Icons designed by Freepik
  • 31. Individual Ownership Todd Sedano professor@gmail.com31 Newsletter Signup: http://sedano.org/research Day 1 BobAlice a a Day 2 BobAlice b b Day 3 BobAlice c c Day 4 BobAlice d d Alice Bob b aa d c Generated Knowledge After Four Days c d b
  • 32. Optimizing for Personal Preference Todd Sedano professor@gmail.com32 Newsletter Signup: http://sedano.org/research Day 1 BobAlice aa bb Day 2 CarolAlice cc Day 3 DanAlice dd Day 4 ErinAlice Alice Bob a b a d Generated Knowledge After Four Days c d c bI’m enjoying this track
  • 33. Optimizing for People Rotation Todd Sedano professor@gmail.com33 Newsletter Signup: http://sedano.org/research Day 1 BobAlice aa bb Day 2 CarolBob cc Day 3 AliceCarol dd Day 4 ErinAlice Alice Bob Generated Knowledge After Four Days a c d b b d a c
  • 34. Bob Carol bb d a a cc Generated Knowledge After Four Days d Optimizing for Knowledge Sharing Todd Sedano professor@gmail.com34 Newsletter Signup: http://sedano.org/research Day 1 BobAlice aa bb Day 2 CarolBob cc Day 3 DanCarol dd Day 4 DanCarol Has enough context been shared? YesYes YesYes YesNo Has enough context been shared? Has enough context been shared?
  • 35. Example in Practice Todd Sedano professor@gmail.com35 Newsletter Signup: http://sedano.org/research
  • 36. Caretaking the Code Practices TDD / BDD Write unit tests before creating a design or writing code Creates a safety net “Allows me to change code without breaking everything” Continuous Refactoring Systematic improvement of the code base Enables any pair to work on any part of the system Supported by Live on Master “Use frequent commits and always rebase” Todd Sedano professor@gmail.com36 Newsletter Signup: http://sedano.org/research
  • 37. Sustainable Software Development Todd Sedano professor@gmail.com Principles Policies Engendering Positive Attitudes Toward Team Disruption Encouraging Knowledge Sharing and Continuity Caring about Code Quality Team Code Ownership Shared Schedule Avoid Technical Debt 37 Newsletter Signup: http://sedano.org/research Removing Knowledge Silos Practices Caretaking the Code Practices Continuous Pair Programming Overlapping Pair Rotation Knowledge Pollination TDD / BDD Continuous Refactoring Supported by Live on Master ESEM 2016
  • 39. Team Code Ownership paper Available at ResearchGate.com Todd Sedano professor@gmail.com39 Newsletter Signup: http://sedano.org/research
  • 40. Team Code Ownership Collective Ownership (Beck 2000) “Anyone can change any piece of code in the system at any time” aka Shared Code (Beck 2004), 
 Collective Code Ownership (Fowler 2006) Team Code Ownership (Sedano 2016) “the ability for any developer on a team to change any of the team’s code” Todd Sedano professor@gmail.com40 Newsletter Signup: http://sedano.org/research
  • 41. Team Code Ownership Is more than a policy statement Is a complex interaction Is an emotional, qualitative attribute Eroded by some events Bolstered by some practices Is a spectrum Todd Sedano professor@gmail.com41 Newsletter Signup: http://sedano.org/research Individual Team
  • 42. Five Observed Factors Affecting Ownership 1. System Context 2. Code Contribution 3. Code Quality 4. Product Fit 5. Team Cohesion Todd Sedano professor@gmail.com42 Newsletter Signup: http://sedano.org/research
  • 43. Limitations Researcher bias: With participant-observer, the researcher may lose perspective and become biased by being a member of the team Prior knowledge bias: may also blind the researcher to alternative explanations We mitigated these risks by recording interviews and having the second and third authors review the coding process External Validity: grounded theory is non-statistical sampling research (results might not apply to different software cultures) Todd Sedano professor@gmail.com43 Newsletter Signup: http://sedano.org/research
  • 45. Summary 1. Introduce Sustainable Software Development Theory Todd Sedano professor@gmail.com45 Newsletter Signup: http://sedano.org/research
  • 46. Summary 2. The theory extends our understanding of Extreme Programming
 3. Mitigates the negative effects of major disruptions by i. Spreading knowledge around the team ii. Writing “well-factored” code Todd Sedano professor@gmail.com46 Newsletter Signup: http://sedano.org/research
  • 47. Conclusion Primary benefits to the software developer Understand the team’s code Work on any story Increased teaching opportunities Primary benefit to the employer is business agility Team continues to deliver “quality software effectively” while surviving disruptions Todd Sedano professor@gmail.com47 Newsletter Signup: http://sedano.org/research
  • 48. 48 Newsletter Signup: http://sedano.org/research Todd Sedano professor@gmail.com photos used with permission
  • 50. Sustainable Software Development paper 50 Available at ResearchGate.com Newsletter Signup: http://sedano.org/research Todd Sedano professor@gmail.com Newsletter Signup: http://sedano.org/research