Feature team vs. component team: Summary

Source: Internet
Author: User

 

Http://www.infoq.com/articles/scaling-lean-agile-feature-teams

 

Feature team


  1. Long-lived-
    Team stays together so they can 'Jell 'for higher performance; they take on
    New Features over time

  2. Cross-functional
    And cross-component

  3. Co-located

  4. Work on a complete
    Customer-centric feature, internal SS all components and disciplines (analysis,
    Programming, testing ,...)

  5. Composed
    Generalizing specialists


 

Feature teams work independently
Being empowered and given the responsibility for a whole feature. Advantages
Include:



  1. Increased Value Throughput
    -Focus
    On delivering what the customer or market values most

  2. Increased
    Learning

    -Individual and team learning increases because of broader
    Responsibility and because of co-location with colleagues who are
    Specialists inVariety
    Of areas-critical for long-term
    Improvement and acceleration; CES the waste of underutilized people

  3. Simplified
    Planning

    -By giving a whole feature to the team, organizing and planning
    Become easier-for example, it is no longer necessary to coordinate
    Single-specialist functional and component teams

  4. Reduced waste
    Of Handoff

    -Since the entire co-located feature team does all work
    (Analysis, design, code, test), handoff isDramatically
    Reduced

  5. Less waiting;
    Faster cycle time

    -The waste of waiting is already CED because handoff is
    Eliminated and because completing a customer feature does not have to wait
    On multiple parties each doing part of the Work serially

  6. Self-managing;
    Improved cost and efficiency

    -Feature teams (and scrum) do not require
    Project Manager or matrix management for feature delivery, because
    Coordination is trivial. The Team has responsibility for end-to-end
    Completion and for coordinating their work with others. data shows
    Inverse relationship between the number of managers and development
    Productitasks, and also that teams with both an internal and external focus
    Are more likely to be successful [ab07]. Feature teams are less
    Expensive-There isn' t the need for extra overhead such as project managers .-
    For example [jones01]:"
    The matrix structure tends
    To raise the management head count for larger projects. Because Software
    Productiincludeclines as the management count goes up, this form
    Organization can be hazardous for software.

    "

  7. Better
    Code/Design Quality

    -Multiple feature teams working on shared Components
    Creates pressure to keep the code clean, formatted to standards, constantly
    Refactored, and surrounded by using unit tests-as otherwise it won't be
    Possible to work with. On the other hand, due to long familiarity, component
    Teams live with obfuscated code only they can understand.

  8. Better
    Motivation

    -Research [ho80, hackman02] shows that if a team feels they
    Have complete end-to-end responsibility for a work item, and when the goal
    Is customer-directed, then there is higher motivation and job
    Satisfaction-important factors in productivity and success.

  9. Simple
    Interface and module coordination

    -One person or team updates both sides
    Of an interface (caller and called) and updates code in all modules; because
    The feature team works stand SS all components; no need for inter-Team
    Coordination.

  10. Change is
    Easier

    -Changes in requirements or design (
    We
    Know it's rare, but we heard it happened somewhere once

    )
    Are absorbed by one team; multi-team re-coordination and re-planning are not
    Necessary.

 


Component team


Summary
Disadvantages:



  1. Promotes sequential Life Cycle
    Development and mindset

  2. Limits learning by people working
    Only on the same components for a long time-the waste of underutilized
    People

  3. Encourages doing easier work
    Rather than most valuable work

  4. Promotes some component teams
    Do "artificial work"

  5. Causes long delays due to major
    Waiting and handoff wastes

  6. Encourages code duplication

  7. Unnecessarily promotes
    Evergrowing Number of developers

  8. Complicates Planning and
    Synchronization

  9. Increases bottlenecks-single
    Points of success are also single points of failure

  10. Fosters more poor code/Design


 

Transition


There are several tactics
Transitioning to feature teams:


  1. Reorganize
    Broad cross-component feature teams

  2. Gradually expand
    Team Responsibility


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.