SlideShare a Scribd company logo
1 of 36
Using feature teams to deliver
higher business value
            Sameer Deans @ThoughtWorks
How can IT organize to deliver
higher value to the business?
The role of business is to maximize
                   customer experience

                        and revenue

                       or to reduce costs




Any software project aims to achieve at least one of these
Once a business idea emerges,
             time to market is critical




Can value be delivered to the business incrementally?
So what does the business expect from IT?

             Visibility into progress



  Flexibility to change requirements
     Ability to change priorities of requirements

  Expectation that domain knowledge will be retained in the
                      organization for future development
So how does IT set themselves up to deliver?

Typical team organization is around component teams
 formed around architecture modules of the system


      User                   Account      Transaction
                 Security
   management               Maintenance   Processing
Quite often organized by layer of the application


      UI team

                                     UI team
      Business      Number of                   UI team
     logic team   applications in    Business              UI team
                                    logic team Business
                    the system                 logic team Business
      Services                        Services
                      under            team               logic team
       team        development
                                                 Services
                                             team  Services
                                    Database
                                     team Database team
     Database
                                             team Database
      team
                                                    team
What do component teams lead to?
Handoff and Delay


Consider a requirement from the customer that needs
        to be developed by 3 component teams
                    Handoff                  Handoff



        Team A                   Team B                  Team C




                 Waste due to             Waste due to
                   rework and               delays
                    handling
                     partially
                 finished work
Duplication
    Team A                                     Team B                             Team C


Writes method to                           Writes method to                   Writes method to calculate
calculate interest so it                   calculate interest so              interest so totals can be
can show this in the UI                    it create a reusable               updated in database
class SimpleInterestCalculator
                                           service                            class SimpleInterestCalculator3

 def initialize(principal, interestRate,   Class InterestCalculator            def initialize(options = {})
numberOfYears)                                                                  @loan_amount =
                                            def self.compute(loan_amount,     options[:loan_amount] ||
  @principal = principal                   rate_of_interest, term_in_years)
  @interestRate = interestRate                                                  @rate_of_interest =
                                             (loan_amount *                   options[:rate_of_interest] ||
  @numberOfYears =                         rate_of_interest *
numberOfYears                                                                   @term_in_years =
                                           term_in_years) /100                options[:term_in_years] ||
 end                                        end                                end
 def compute                               end
  (@principal * @interestRate *                                                def compute
@numberOfYears) /100                                                            @loan_amount * @term_in_years *
 end                                                                          rate_of_interest_in_fraction
end                                                                            end

                                                                               private
                                                                               def rate_of_interest_in_fraction
                                                                                @rate_of_interest / 100
                                                                               end
                                                                              end
Bad code and design


Work with the same code month after month
         Acceptance of bad design
  No outside eyes look at the codebase
          Do not seek to refactor
Coordination and Integration


   Team A

                                Team C
                 Requirement
                   that spans
                     several
                  component
                     teams




        Team B
Extra management
Sequential development
Requirements analysis         Planning
                                                             Testing




       
                            
                              
                                                             
                                                             
                                                              

                   UI team                       UI team

                                    UI team
                  Business                       Business
                 logic team                     logic team
                                    Business
                   Services        logic team    Services
                    team                          team
                                    Services
                  Database           team       Database
                   team                          team
                                   Database
                                    team
Do the easy work


A     A    A   A       Team A




B     B    B    B      Team B




C     C    C    C      Team C




    This comprises a
    customer
    requirement
Promotes specialization


 
          
            
                          
                          
Another response from IT : feature projects

       Spin up a project to deliver a particular
              feature of the larger system

               Component       Component        Component
                  A                B                C


                
                               
                                                
                                                 
                  Feature touches 3 different components




       Unfortunately this has its drawbacks too
New team : lower productivity


      Component   Component   Component
         A            B           C


      
                 
                             
                              
Resource allocation team uses key people as
                 Band-Aids


            Component   Component   Component
               A            B           C


             
                       
                                   
                                    

                                          Component
                                              C


                                           
Over allocation

Component     Component   Component
   A              B           C



             
                         
                          
                100%

                                      Component

               
                                         C

                 25%                             Impact to
                                                   existing
                                                    team


Component     Component   Component
    X             B           C



                         
                          
Low motivation and job satisfaction
Introducing : Feature Teams




                What is a feature?




Functionality that delivers usable value to the customer
Features : examples




  Adding a new service
  provider to eCom site   Internationalization




    Ability to
   grant and
service loans
What does a feature team look like?
Not all generalists



    

    
Ideally would be co-located
Team members work on
  analysis, coding and testing


Requirements analysis   Coding   Testing




             
How does a feature get delivered

                   Analysis & Planning                       Analysis & Planning

A    A    A    A                    A    B   B   B       C                       S   S   S   S   S   S   S


B    B    B    B



C    C    C    C
                                                                      UI task

                                                                      Business
                                                                     logic task
    This comprises                                   S
    a customer                                                        Services
    requirement                                                         task

                                                                     Database
                                                                       task
What are the advantages of feature teams?
Learn and jell together
No hand offs



       UI task

       Business
      logic task
S
      Services
        task

      Database
        task
Valuable work can be prioritized

                                                                UI task

                         Analysis & Planning
                                                                Business
                                                               logic task
                           8    7    6   5     4   3   2   1
                                                               Services
                                                                 task
Business Idea
                                                               Database
                                                                 task




  This gets channeled
 into two features and                                          UI task
   two feature teams
                         Analysis & Planning
                                                                Business
                                                               logic task
                           8    7    6   5     4   3   2   1
                                                               Services
                                                                 task

                                                               Database
                                                                 task
Valuable work can be prioritized

                                                                            UI task

Analysis & Planning               Analysis & Planning
                                                                            Business
                                                                           logic task
   8   7    6   5     4   3   2     6    5    4     3    B    A    2   1
                                                                           Services
                                                                             task

                                                                           Database
                                                                             task
                                  The business wants a change
                                  and re-prioritizes the backlog


                                                                            UI task

Analysis & Planning               Analysis & Planning
                                                                            Business
                                                                           logic task
   8   7    6   5     4   3   2     7    6    5     4    3    2    A   1
                                                                           Services
                                                                             task

                                                                           Database
                                                                             task
Less management overhead
So, can IT now organize differently to
deliver higher value to the business?
Thank you

More Related Content

What's hot

第二课生产决策 For 中大2011 may
第二课生产决策 For 中大2011 may第二课生产决策 For 中大2011 may
第二课生产决策 For 中大2011 maykasumi803
 
Content Archaeology (Keynote for DocTrain West March 2009)
Content Archaeology (Keynote for DocTrain West March 2009)Content Archaeology (Keynote for DocTrain West March 2009)
Content Archaeology (Keynote for DocTrain West March 2009)Joe Gollner
 
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...Cloudera, Inc.
 
Product backlog stories_acceptancecriteria_size_priority
Product backlog  stories_acceptancecriteria_size_priorityProduct backlog  stories_acceptancecriteria_size_priority
Product backlog stories_acceptancecriteria_size_priorityRussell Pannone
 
Recommendations@LinkedIn
Recommendations@LinkedInRecommendations@LinkedIn
Recommendations@LinkedInAbhishek Gupta
 
Integrating Your VMS into an Evolving Program
Integrating Your VMS into an Evolving ProgramIntegrating Your VMS into an Evolving Program
Integrating Your VMS into an Evolving ProgramBeeline
 
Israeli IT Application Market 2009Presentation
Israeli IT Application Market 2009PresentationIsraeli IT Application Market 2009Presentation
Israeli IT Application Market 2009PresentationDr. Jimmy Schwarzkopf
 
Marketing Strategy and Planning: Sustainable Business ModelsFinal Project
Marketing Strategy and Planning: Sustainable Business ModelsFinal ProjectMarketing Strategy and Planning: Sustainable Business ModelsFinal Project
Marketing Strategy and Planning: Sustainable Business ModelsFinal ProjectBrean Deters
 
63 Profit Loss
63 Profit Loss63 Profit Loss
63 Profit LossPAVO
 
Sirris materials day 2011 systematic approaches to material selection and l...
Sirris materials day 2011   systematic approaches to material selection and l...Sirris materials day 2011   systematic approaches to material selection and l...
Sirris materials day 2011 systematic approaches to material selection and l...Sirris
 
3 mystandards ug_editor_best_practices
3 mystandards ug_editor_best_practices3 mystandards ug_editor_best_practices
3 mystandards ug_editor_best_practicesSondhaya Sudhamasapa
 

What's hot (14)

第二课生产决策 For 中大2011 may
第二课生产决策 For 中大2011 may第二课生产决策 For 中大2011 may
第二课生产决策 For 中大2011 may
 
Automotive UI 2011
Automotive UI 2011Automotive UI 2011
Automotive UI 2011
 
Content Archaeology (Keynote for DocTrain West March 2009)
Content Archaeology (Keynote for DocTrain West March 2009)Content Archaeology (Keynote for DocTrain West March 2009)
Content Archaeology (Keynote for DocTrain West March 2009)
 
CDI and Weld
CDI and WeldCDI and Weld
CDI and Weld
 
Pengurusan metrik
Pengurusan metrikPengurusan metrik
Pengurusan metrik
 
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...
Hadoop World 2011: LeveragIng Hadoop to Transform Raw Data to Rich Features a...
 
Product backlog stories_acceptancecriteria_size_priority
Product backlog  stories_acceptancecriteria_size_priorityProduct backlog  stories_acceptancecriteria_size_priority
Product backlog stories_acceptancecriteria_size_priority
 
Recommendations@LinkedIn
Recommendations@LinkedInRecommendations@LinkedIn
Recommendations@LinkedIn
 
Integrating Your VMS into an Evolving Program
Integrating Your VMS into an Evolving ProgramIntegrating Your VMS into an Evolving Program
Integrating Your VMS into an Evolving Program
 
Israeli IT Application Market 2009Presentation
Israeli IT Application Market 2009PresentationIsraeli IT Application Market 2009Presentation
Israeli IT Application Market 2009Presentation
 
Marketing Strategy and Planning: Sustainable Business ModelsFinal Project
Marketing Strategy and Planning: Sustainable Business ModelsFinal ProjectMarketing Strategy and Planning: Sustainable Business ModelsFinal Project
Marketing Strategy and Planning: Sustainable Business ModelsFinal Project
 
63 Profit Loss
63 Profit Loss63 Profit Loss
63 Profit Loss
 
Sirris materials day 2011 systematic approaches to material selection and l...
Sirris materials day 2011   systematic approaches to material selection and l...Sirris materials day 2011   systematic approaches to material selection and l...
Sirris materials day 2011 systematic approaches to material selection and l...
 
3 mystandards ug_editor_best_practices
3 mystandards ug_editor_best_practices3 mystandards ug_editor_best_practices
3 mystandards ug_editor_best_practices
 

Similar to Using feature teams_to_deliver_higher_business_value-sameer deans

Using feature teams to deliver high business value
Using feature teams to deliver high business valueUsing feature teams to deliver high business value
Using feature teams to deliver high business valueThoughtworks
 
Cloud computing nyttigt även innanför brandväggen
Cloud computing nyttigt även innanför brandväggenCloud computing nyttigt även innanför brandväggen
Cloud computing nyttigt även innanför brandväggenMikael Haglund
 
Itp design patterns - 2003
Itp design patterns - 2003Itp design patterns - 2003
Itp design patterns - 2003Shibu S R
 
Dreamforce'12 - Automate Business Processes with Force.com
Dreamforce'12 - Automate Business Processes with Force.comDreamforce'12 - Automate Business Processes with Force.com
Dreamforce'12 - Automate Business Processes with Force.comMudit Agarwal
 
Amazon SageMaker 內建機器學習演算法 (Level 400)
Amazon SageMaker 內建機器學習演算法 (Level 400)Amazon SageMaker 內建機器學習演算法 (Level 400)
Amazon SageMaker 內建機器學習演算法 (Level 400)Amazon Web Services
 
Applican v20 alchemist
Applican v20 alchemistApplican v20 alchemist
Applican v20 alchemistreimrines
 
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...Amazon Web Services
 
Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMDebora Di Piano
 
Building Content Recommendation Systems using MXNet Gluon
Building Content Recommendation Systems using MXNet GluonBuilding Content Recommendation Systems using MXNet Gluon
Building Content Recommendation Systems using MXNet GluonApache MXNet
 
Scalable code Design with slimmer Django models .. and more
Scalable code  Design with slimmer Django models .. and moreScalable code  Design with slimmer Django models .. and more
Scalable code Design with slimmer Django models .. and moreDawa Sherpa
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTSMicrosoft Iceland
 
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...Amazon Web Services Korea
 
Software Measurement for Lean Application Management
Software Measurement for Lean Application ManagementSoftware Measurement for Lean Application Management
Software Measurement for Lean Application ManagementCAST
 
Approaching ATDD/BDD
Approaching ATDD/BDDApproaching ATDD/BDD
Approaching ATDD/BDDDhaval Dalal
 
Surya bharath dotnet_6yrs
Surya bharath dotnet_6yrsSurya bharath dotnet_6yrs
Surya bharath dotnet_6yrsbmedicharla
 
Cast Iron Overview Webinar 6.13
Cast Iron Overview Webinar 6.13Cast Iron Overview Webinar 6.13
Cast Iron Overview Webinar 6.13gaborvodics
 
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...Amazon Web Services
 
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...Amazon Web Services
 

Similar to Using feature teams_to_deliver_higher_business_value-sameer deans (20)

Using feature teams to deliver high business value
Using feature teams to deliver high business valueUsing feature teams to deliver high business value
Using feature teams to deliver high business value
 
Cloud computing nyttigt även innanför brandväggen
Cloud computing nyttigt även innanför brandväggenCloud computing nyttigt även innanför brandväggen
Cloud computing nyttigt även innanför brandväggen
 
Itp design patterns - 2003
Itp design patterns - 2003Itp design patterns - 2003
Itp design patterns - 2003
 
Designingapplswithnet
DesigningapplswithnetDesigningapplswithnet
Designingapplswithnet
 
Dreamforce'12 - Automate Business Processes with Force.com
Dreamforce'12 - Automate Business Processes with Force.comDreamforce'12 - Automate Business Processes with Force.com
Dreamforce'12 - Automate Business Processes with Force.com
 
Amazon SageMaker 內建機器學習演算法 (Level 400)
Amazon SageMaker 內建機器學習演算法 (Level 400)Amazon SageMaker 內建機器學習演算法 (Level 400)
Amazon SageMaker 內建機器學習演算法 (Level 400)
 
Applican v20 alchemist
Applican v20 alchemistApplican v20 alchemist
Applican v20 alchemist
 
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...
Train ML Models Using Amazon SageMaker with TensorFlow - SRV336 - Chicago AWS...
 
Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALM
 
Building Content Recommendation Systems using MXNet Gluon
Building Content Recommendation Systems using MXNet GluonBuilding Content Recommendation Systems using MXNet Gluon
Building Content Recommendation Systems using MXNet Gluon
 
Scalable code Design with slimmer Django models .. and more
Scalable code  Design with slimmer Django models .. and moreScalable code  Design with slimmer Django models .. and more
Scalable code Design with slimmer Django models .. and more
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTS
 
Feasible
FeasibleFeasible
Feasible
 
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...
AWS의 새로운 언어, 음성, 텍스트 처리 인공 지능 서비스, Amazon SageMaker::Sunil Mallya::AWS Summit...
 
Software Measurement for Lean Application Management
Software Measurement for Lean Application ManagementSoftware Measurement for Lean Application Management
Software Measurement for Lean Application Management
 
Approaching ATDD/BDD
Approaching ATDD/BDDApproaching ATDD/BDD
Approaching ATDD/BDD
 
Surya bharath dotnet_6yrs
Surya bharath dotnet_6yrsSurya bharath dotnet_6yrs
Surya bharath dotnet_6yrs
 
Cast Iron Overview Webinar 6.13
Cast Iron Overview Webinar 6.13Cast Iron Overview Webinar 6.13
Cast Iron Overview Webinar 6.13
 
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...
Build Deep Learning Applications Using Apache MXNet, Featuring Workday (AIM40...
 
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...
Build Deep Learning Applications Using Apache MXNet - Featuring Chick-fil-A (...
 

More from India Scrum Enthusiasts Community

“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...India Scrum Enthusiasts Community
 
Software 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven BusinessSoftware 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven BusinessIndia Scrum Enthusiasts Community
 
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...India Scrum Enthusiasts Community
 
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?India Scrum Enthusiasts Community
 

More from India Scrum Enthusiasts Community (20)

Deciphering Agile Big Data
Deciphering Agile Big DataDeciphering Agile Big Data
Deciphering Agile Big Data
 
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
 
Rubber Meets the Road
Rubber Meets the RoadRubber Meets the Road
Rubber Meets the Road
 
Can Agile Enthusiasm See The Organization Through?
Can Agile Enthusiasm See The Organization Through?Can Agile Enthusiasm See The Organization Through?
Can Agile Enthusiasm See The Organization Through?
 
Agile​ ​HR​ ​From​ ​the​ ​trenches
Agile​ ​HR​ ​From​ ​the​ ​trenchesAgile​ ​HR​ ​From​ ​the​ ​trenches
Agile​ ​HR​ ​From​ ​the​ ​trenches
 
Evolutionary Change
Evolutionary ChangeEvolutionary Change
Evolutionary Change
 
Software 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven BusinessSoftware 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven Business
 
Agile Digital Architecture
Agile Digital ArchitectureAgile Digital Architecture
Agile Digital Architecture
 
Governance mechanism to further business agility
Governance mechanism to further business agilityGovernance mechanism to further business agility
Governance mechanism to further business agility
 
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
 
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
 
Wave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership RedefinedWave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership Redefined
 
Agile Engineering Environment – 2017
Agile Engineering Environment – 2017Agile Engineering Environment – 2017
Agile Engineering Environment – 2017
 
Management for Agility and Outcomes
Management for Agility and OutcomesManagement for Agility and Outcomes
Management for Agility and Outcomes
 
Agile Mindset Shifting: Agile For All
Agile Mindset Shifting: Agile For AllAgile Mindset Shifting: Agile For All
Agile Mindset Shifting: Agile For All
 
Agile Engineering Environment – 2017
Agile Engineering Environment – 2017Agile Engineering Environment – 2017
Agile Engineering Environment – 2017
 
Wave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership RedefinedWave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership Redefined
 
Five (Oops!) Six Mistakes You are Making as a Leader
Five (Oops!) Six Mistakes You are Making as a LeaderFive (Oops!) Six Mistakes You are Making as a Leader
Five (Oops!) Six Mistakes You are Making as a Leader
 
Empower the Forbidden Power Players
Empower the Forbidden Power PlayersEmpower the Forbidden Power Players
Empower the Forbidden Power Players
 
Agility in Education System for Digital India
Agility in Education System for Digital IndiaAgility in Education System for Digital India
Agility in Education System for Digital India
 

Recently uploaded

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Using feature teams_to_deliver_higher_business_value-sameer deans

  • 1. Using feature teams to deliver higher business value Sameer Deans @ThoughtWorks
  • 2. How can IT organize to deliver higher value to the business?
  • 3. The role of business is to maximize customer experience and revenue or to reduce costs Any software project aims to achieve at least one of these
  • 4. Once a business idea emerges, time to market is critical Can value be delivered to the business incrementally?
  • 5. So what does the business expect from IT? Visibility into progress Flexibility to change requirements Ability to change priorities of requirements Expectation that domain knowledge will be retained in the organization for future development
  • 6. So how does IT set themselves up to deliver? Typical team organization is around component teams formed around architecture modules of the system User Account Transaction Security management Maintenance Processing
  • 7. Quite often organized by layer of the application UI team UI team Business Number of UI team logic team applications in Business UI team logic team Business the system logic team Business Services Services under team logic team team development Services team Services Database team Database team Database team Database team team
  • 8. What do component teams lead to?
  • 9. Handoff and Delay Consider a requirement from the customer that needs to be developed by 3 component teams Handoff Handoff Team A Team B Team C Waste due to Waste due to rework and delays handling partially finished work
  • 10. Duplication Team A Team B Team C Writes method to Writes method to Writes method to calculate calculate interest so it calculate interest so interest so totals can be can show this in the UI it create a reusable updated in database class SimpleInterestCalculator service class SimpleInterestCalculator3 def initialize(principal, interestRate, Class InterestCalculator def initialize(options = {}) numberOfYears) @loan_amount = def self.compute(loan_amount, options[:loan_amount] || @principal = principal rate_of_interest, term_in_years) @interestRate = interestRate @rate_of_interest = (loan_amount * options[:rate_of_interest] || @numberOfYears = rate_of_interest * numberOfYears @term_in_years = term_in_years) /100 options[:term_in_years] || end end end def compute end (@principal * @interestRate * def compute @numberOfYears) /100 @loan_amount * @term_in_years * end rate_of_interest_in_fraction end end private def rate_of_interest_in_fraction @rate_of_interest / 100 end end
  • 11. Bad code and design Work with the same code month after month Acceptance of bad design No outside eyes look at the codebase Do not seek to refactor
  • 12. Coordination and Integration Team A Team C Requirement that spans several component teams Team B
  • 14. Sequential development Requirements analysis Planning Testing        UI team UI team UI team Business Business logic team logic team Business Services logic team Services team team Services Database team Database team team Database team
  • 15. Do the easy work A A A A Team A B B B B Team B C C C C Team C This comprises a customer requirement
  • 16. Promotes specialization      
  • 17. Another response from IT : feature projects Spin up a project to deliver a particular feature of the larger system Component Component Component A B C       Feature touches 3 different components Unfortunately this has its drawbacks too
  • 18. New team : lower productivity Component Component Component A B C      
  • 19. Resource allocation team uses key people as Band-Aids Component Component Component A B C       Component C 
  • 20. Over allocation Component Component Component A B C       100% Component   C 25%  Impact to existing team Component Component Component X B C    
  • 21. Low motivation and job satisfaction
  • 22. Introducing : Feature Teams What is a feature? Functionality that delivers usable value to the customer
  • 23. Features : examples Adding a new service provider to eCom site Internationalization Ability to grant and service loans
  • 24. What does a feature team look like?
  • 25. Not all generalists         
  • 26. Ideally would be co-located
  • 27. Team members work on analysis, coding and testing Requirements analysis Coding Testing 
  • 28. How does a feature get delivered Analysis & Planning Analysis & Planning A A A A A B B B C S S S S S S S B B B B C C C C UI task Business logic task This comprises S a customer Services requirement task Database task
  • 29. What are the advantages of feature teams?
  • 30. Learn and jell together
  • 31. No hand offs UI task Business logic task S Services task Database task
  • 32. Valuable work can be prioritized UI task Analysis & Planning Business logic task 8 7 6 5 4 3 2 1 Services task Business Idea Database task This gets channeled into two features and UI task two feature teams Analysis & Planning Business logic task 8 7 6 5 4 3 2 1 Services task Database task
  • 33. Valuable work can be prioritized UI task Analysis & Planning Analysis & Planning Business logic task 8 7 6 5 4 3 2 6 5 4 3 B A 2 1 Services task Database task The business wants a change and re-prioritizes the backlog UI task Analysis & Planning Analysis & Planning Business logic task 8 7 6 5 4 3 2 7 6 5 4 3 2 A 1 Services task Database task
  • 35. So, can IT now organize differently to deliver higher value to the business?