feature vs component teams

37
Feature Teams vs. Component Teams By: Leland Newsom

Upload: leland-newsom-csm-csp-spc4

Post on 21-Feb-2017

147 views

Category:

Software


28 download

TRANSCRIPT

Page 1: feature vs component teams

Feature Teams vs. Component Teams

By: Leland Newsom

Page 2: feature vs component teams

About Me

• Leland Newsom - Agile Coach, CapTech Ventures • [email protected]• @LelandNewsom

• Past roles include: Developer, Manager, Managing Director, Technical Director

• First started learning Agile/Lean in 2005

• CSM since 2007

• Started leading & coaching agile teams in 2007

Page 3: feature vs component teams

Agenda

• Conway’s Law

• Definitions

• Team Scaling Patterns

• Issues

• Comparison

• LeSS Recommendation

• SAFe Recommendation

• Hybrid Recommendation

• Transitioning

• I discovered that the best innovation is sometimes the company, the way you organize a company. --Steve Jobs

• “Steve Jobs” by Walter Isaacson p.334

Page 4: feature vs component teams

Scaling Questions

When you organization grows large enough to need multiple teams, what is your team scaling strategy? Why?

What criteria are you using to decide?

Page 5: feature vs component teams
Page 6: feature vs component teams

Conway’s Law

“...organizations which design systems...are constrained to produce designs which are copies of the communication structures of these organizations.”

- Melvin E. Conway, April 1968

We manage and communicate this way.

Even though our value flows this way.

Page 7: feature vs component teams

Feature Team DefinitionFeatures are those behaviors of the system that directly fulfill some user need.

Feature team - Is a long-lived, cross-functional, cross-component team that completes many end-to-end customer features.

Page 8: feature vs component teams

Component Team Definition

Component Team:

1. A team that focuses on the creation of one or more components of a larger product that a customer would purchase.

2. Component teams create assets or components that are then reused by other teams to assemble customer-valuable solutions.

3. Team that is cross-functional (multi-disciplinary), single component focused.

Components are distinguishable system parts that provide and encapsulate common functions needed to implement features.

Page 9: feature vs component teams

Common Team Scaling Patterns

Discipline Teams Location TeamsArchitectural Layer Teams

• Hybrid• Feature Teams

Page 10: feature vs component teams

Component Teams (Single Backlog)

Copyright © 2007-2011, Innolution, LLC. All Rights Reserved.

Component Team #1

ComponentArea #1

Component Team #2

ComponentArea #2

Component Team #3

ComponentArea #3

Product Backlog

Page 11: feature vs component teams

Component Teams (Multiple Backlogs)

Copyright © 2007-2011, Innolution, LLC. All Rights Reserved.

Component Team #1

Component Area #1

Component Team #2

ComponentArea #2

Component Team #3

ComponentArea #3

FA #1 PB FA #2 PB FA #3 PB

Product Backlog #2

Product Backlog #1

Page 12: feature vs component teams

Component Team Issue - Prioritization

Page 13: feature vs component teams

Component Team Issue - Non-functional Requirements

As a customer, I want to be one of 10,000 customers who can use the system during peak usage periods.

As a user, I want the site to be available 99.999% of the time I try to access it.

As the CTO, I want the new system to conform to our established security policies.

Page 14: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 15: feature vs component teams

Feature Team Issue – Lack of Knowledge

Page 16: feature vs component teams

Feature Team Issue – Organizational Resistance

Page 17: feature vs component teams

*Agile Velocity

Page 18: feature vs component teams

*Agile Velocity

Page 19: feature vs component teams

Component Teams and Feature Teams

Page 20: feature vs component teams

Comparison (from LeSS)

component team feature team

optimized for delivering the maximum number of lines of code optimized for delivering the maximum customer value

focus on increased individual productivity by implementing ‘easy’ lower-value features

focus on high-value features and system productivity (value throughput)

responsible for only part of a customer-centric feature responsible for complete customer-centric feature

traditional way of organizing teams — follows Conway’s law ‘modern’ way of organizing teams — avoids Conway’s law

leads to ‘invented’ work and a forever-growing organization leads to customer focus, visibility, and smaller organizations

dependencies between teams leads to additional planning minimizes dependencies between teams to increase flexibility

focus on single specialization focus on multiple specializations

individual/team code ownership shared product code ownership

clear individual responsibilities shared team responsibilities

results in ‘waterfall’ development supports iterative development

exploits existing expertise; lower level of learning new skills exploits flexibility; continuous and broad learning

works with sloppy engineering practices—effects are localized requires skilled engineering practices—effects are broadly visible

contrary to belief, often leads to low-quality code in component provides a motivation to make code easy to maintain and test

seemingly easy to implement seemingly difficult to implement

Page 21: feature vs component teams

LeSS Recommendation

From https://less.works/less/structure/feature-teams.html

“A pure feature team organization is ideal…”

Page 22: feature vs component teams

SAFe RecommendationsTo ensure highest feature throughput, SAFe generally recommends a mix of perhaps 75-80% feature teams and 20-25% component teams.

http://www.scaledagileframework.com/features-and-components/

Page 23: feature vs component teams

Build Knowledge – Community of Practice

*Ken Rubin / Innolution

Page 24: feature vs component teams

Build Knowledge – Component Steward

*Ken Rubin / Innolution

Page 25: feature vs component teams

Transitioning to Feature Teams

Page 26: feature vs component teams

Repeat - Scaling Questions

When you organization grows large enough to need multiple teams, what is your team scaling strategy? Why?

What criteria are you using to decide?

Page 27: feature vs component teams

Learn More• https://less.works/less/structure/feature-teams.html

• http://www.featureteamprimer.com/

• http://www.scaledagileframework.com/features-and-components/

• http://www.innolution.com/resources/presentations/agile-2013-scaling-with-feature-vs-component-teams

• http://www.agilevelocity.com/blog/3-ws-building-agile-team/

• https://gosei.fi/coordinationchaos/

• https://vimeo.com/195033705

• https://dzone.com/articles/rethinking-component-teams-for-flow

Page 28: feature vs component teams

AppendixCoordination Chaos

Page 29: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 30: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 31: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 32: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 33: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 34: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 35: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 36: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1

Page 37: feature vs component teams

Clipped from: http://www.slideshare.net/gosei/actionable-fearless-leadership?qid=3889255d-2c08-4c97-ae46-7915fce4dc0a&v=&b=&from_search=1