SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Systematic Task Allocation Evaluation in Distributed Software Development




                     Systematic Task Allocation Evaluation
                      in Distributed Software Development




                                               October 16, 2012
Systematic Task Allocation Evaluation in Distributed Software Development
  Introduction




What is meant by a Systematic Task Allocation




       Evaluating various task allocation alternatives and to effectively
       establish a customized task allocation practices in an organization.
Systematic Task Allocation Evaluation in Distributed Software Development
  Introduction




Why we need a Systematic Task Allocation




          1      Impact factors
          2      Constraints
Systematic Task Allocation Evaluation in Distributed Software Development
  Scenario of a Task Allocation Decision Problem




Emperical Basis for the Scenario

       Types of distributed development :
          1   Outsourcing
          2   Captive Offshoring
                      Standard Software
                      Custom Software
Systematic Task Allocation Evaluation in Distributed Software Development
  Scenario of a Task Allocation Decision Problem
     Outsourcing


Outsourcing

          1   Complete projects or products to be developed are usually
              assigned to outside contractors.
          2   Usually within the national boundaries..
Systematic Task Allocation Evaluation in Distributed Software Development
  Scenario of a Task Allocation Decision Problem
     Captive Offshoring


Captive Offshoring


          1   Complete projects or products to be developed are usually
              assigned within an organization that has globally distributed
              sites.
          2   Usually outside the national boundaries..




                                          Figure: Offshoring Market
Systematic Task Allocation Evaluation in Distributed Software Development
  Scenario of a Task Allocation Decision Problem
     Captive Offshoring –> Standard Software


Standard Software
       Assignment is done based on specialized teams that evolve over a
       long time.
Systematic Task Allocation Evaluation in Distributed Software Development
  Scenario of a Task Allocation Decision Problem
     Captive Offshoring –> Custom Software


Custom Software




          1   Tasks are allocated based on availability of resources.
          2   There are multiple influencing factors like cost, expertise,
              proximity to customer etc.
          3   Mainly, the aim is to reduce the cost of development.
Systematic Task Allocation Evaluation in Distributed Software Development
  Task Allocation Scenario




Task Allocation Scenario



              GlobalSoft is a large European based company.
              Develops individual software products for customers in
              Germany and UK.
              Its main development centers are located in Frankfurt and
              Cologne, Germany and smaller subsideries in London to be
              close to its British customers.
              Recently opened a site in Bangalore..!! Why..?
Systematic Task Allocation Evaluation in Distributed Software Development
  Task Allocation Scenario




Task Allocation Scenario contd..
              Now, they have a customer BigIndustries located in London.
              The old projects were developed at London, Frankfurt and
              Cologne.
              But now, there is also a possibility to assign some work to
              Bangalore.
              The design and architecture has already been developed and
              they want to distribute the development work.
Systematic Task Allocation Evaluation in Distributed Software Development
  Approach




Approach Overview
              Goal 1 : Identify the project specific influencing factors for a
              task allocation decision and their impact.
              Goal 2 : Evalvate the possible task allocation alternatives
              according to the project specific influencing factiors.
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Viewpoint


Define Viewpoint

       Decide who should be making the decisions.
       .
       Scenario : At GlobalSoft, the task allocation is done by the
       responsible project manager. He was also incharge of the previous
       projects of BigIndustries (and the customer was happy :) )
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Context


Define Context
       Define the input for the task allocation decision
       .
       Scenario : The context of the project is developed as shown.
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Focus


Define Focus




       What is the criteria of the evaluation...? Cost..? Quality..? or
       something else..?
       .
       Scenario : At GlobalSoft, the only criterion is the total
       development costs. But, how do we define this ”Development
       cost”..?
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Variation Factors


Define Variation Factor

       Variation factors are all those factors that have an
       allocation-dependent influence on the evaluation criterion.
       .
       Scenario : The variation categories were identified as:
          1   Site characteristics: Analyst capability, programmer capability,
              language and tool experience, personnel continuity, customer
              proximity.
          2   Site dependencies : Cultural dependencies, time-zone
              differences
          3   Task characteristics : Size
          4   Task dependencies: Coupling
          5   Task-site dependencies : Application experience, platform
              experience
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Baseline


Define Baseline




       The goal of this step is to define the baseline for scuccess measures.
       Its on what basis you would decide to allocate the tasks..??
       .
       Scenario : GlobalSoft uses COCOMO II model to establish a
       baseline.
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Define Impact of Variation Factors


Define Impact of Variation Factors
       In this step, the impact of every variation factor on every criterion
       in focus is evaluated.
       .
       Scenario : GlobalSoft uses a CoBRA approach for cost estimation.
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Assess the Variation Factors


Assess the Variation Factors




       For all tasks and sites identified, the values of the variation factors
       are now assessed for the project in hand.
       .
       Scenario : The project manager assesses all the factors and print
       them into an excel model.
Systematic Task Allocation Evaluation in Distributed Software Development
  Process Steps
     Evaluate Assignment alternatives


Evaluate Assignment alternatives
       Finally every possible assignments can now be evaluated using the
       results from the previous steps.
       .
       Scenario : The manager proposes 3 alternatives:
         1 Assign all the work to Europe
         2 Assign testing work to India
         3 Assign everything to India
Systematic Task Allocation Evaluation in Distributed Software Development
  Assumptions made in the paper




Assumptions made in the paper

       In the paper, the author makes assumptions based on an optimistic
       scenario.
       .
       In real world all necessary information about the relavent
       influencing factors and their impact are not available in a
       quantified form.
       .
       The selection of total development cost as the only criterion may
       have made the numbers but this doesn’t happen in the real world.
       .
       The available knowledge is never quantifiable.
       .
       It also assumes high degree of freedom in task allocation decision.
Systematic Task Allocation Evaluation in Distributed Software Development
  Thank You




                                          Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

Software Quality
Software QualitySoftware Quality
Software Qualitysjavaad
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsAmr E. Mohamed
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering noteNeelamani Samal
 
SWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design BasicsSWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design Basicsghayour abbas
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and AnswersBala Ganesh
 
Information System Development
Information System DevelopmentInformation System Development
Information System DevelopmentSamudin Kassan
 
software project management
software project managementsoftware project management
software project managementdeep sharma
 
Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software designTech_MX
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineeringghayour abbas
 
SE18_Lec 05_Agile Software Development
SE18_Lec 05_Agile Software DevelopmentSE18_Lec 05_Agile Software Development
SE18_Lec 05_Agile Software DevelopmentAmr E. Mohamed
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software EngineeringMuhammad Yousuf Abdul Qadir
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qaAruna M
 
SWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools OverviewSWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools Overviewghayour abbas
 
SE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsSE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsAmr E. Mohamed
 
Software Project Planning V
Software Project Planning VSoftware Project Planning V
Software Project Planning VGagan Deep
 
Improving software economics
Improving software economicsImproving software economics
Improving software economicsdeep sharma
 
An Agile Software Development Framework
An Agile Software Development FrameworkAn Agile Software Development Framework
An Agile Software Development FrameworkWaqas Tariq
 

Was ist angesagt? (20)

Software Quality
Software QualitySoftware Quality
Software Quality
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering note
 
SWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design BasicsSWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design Basics
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and Answers
 
Information System Development
Information System DevelopmentInformation System Development
Information System Development
 
software project management
software project managementsoftware project management
software project management
 
Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software design
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineering
 
SE18_Lec 05_Agile Software Development
SE18_Lec 05_Agile Software DevelopmentSE18_Lec 05_Agile Software Development
SE18_Lec 05_Agile Software Development
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qa
 
Stepwise planning
Stepwise planningStepwise planning
Stepwise planning
 
Unit i software design principles 9
Unit i software design principles 9Unit i software design principles 9
Unit i software design principles 9
 
07 fse implementation
07 fse implementation07 fse implementation
07 fse implementation
 
SWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools OverviewSWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools Overview
 
SE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsSE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design Patterns
 
Software Project Planning V
Software Project Planning VSoftware Project Planning V
Software Project Planning V
 
Improving software economics
Improving software economicsImproving software economics
Improving software economics
 
An Agile Software Development Framework
An Agile Software Development FrameworkAn Agile Software Development Framework
An Agile Software Development Framework
 

Ähnlich wie Systematic Evaluation of Task Allocation in Distributed Software Projects

Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)MuhammadTalha436
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Raj vardhan
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
7 stages of system Development life cycle ppt
7 stages of system Development life cycle ppt7 stages of system Development life cycle ppt
7 stages of system Development life cycle pptIphsTechnologies
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineeringInocentshuja Ahmad
 
Software Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfSoftware Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfchristiemarie4
 
How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...christiemarie4
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdfsaman Iftikhar
 
The MRO Software Documentation Process
The MRO Software Documentation ProcessThe MRO Software Documentation Process
The MRO Software Documentation Processmnankin
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptxMohamedElshaikh10
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cardsTudor Girba
 
Lecture 7 agile software development (2)
Lecture 7   agile software development (2)Lecture 7   agile software development (2)
Lecture 7 agile software development (2)IIUI
 

Ähnlich wie Systematic Evaluation of Task Allocation in Distributed Software Projects (20)

Testing tools
Testing toolsTesting tools
Testing tools
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
SE_Unit 2.pptx
SE_Unit 2.pptxSE_Unit 2.pptx
SE_Unit 2.pptx
 
SE-Lecture-5.pptx
SE-Lecture-5.pptxSE-Lecture-5.pptx
SE-Lecture-5.pptx
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2
 
Vivek_MK
Vivek_MKVivek_MK
Vivek_MK
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
Scrum introduc.ppt
Scrum introduc.pptScrum introduc.ppt
Scrum introduc.ppt
 
Unit 5
Unit   5Unit   5
Unit 5
 
7 stages of system Development life cycle ppt
7 stages of system Development life cycle ppt7 stages of system Development life cycle ppt
7 stages of system Development life cycle ppt
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineering
 
Software Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfSoftware Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdf
 
How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...
 
Guide to Software Estimation
Guide to Software EstimationGuide to Software Estimation
Guide to Software Estimation
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdf
 
The MRO Software Documentation Process
The MRO Software Documentation ProcessThe MRO Software Documentation Process
The MRO Software Documentation Process
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptx
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cards
 
Lecture 7 agile software development (2)
Lecture 7   agile software development (2)Lecture 7   agile software development (2)
Lecture 7 agile software development (2)
 

Systematic Evaluation of Task Allocation in Distributed Software Projects

  • 1. Systematic Task Allocation Evaluation in Distributed Software Development Systematic Task Allocation Evaluation in Distributed Software Development October 16, 2012
  • 2. Systematic Task Allocation Evaluation in Distributed Software Development Introduction What is meant by a Systematic Task Allocation Evaluating various task allocation alternatives and to effectively establish a customized task allocation practices in an organization.
  • 3. Systematic Task Allocation Evaluation in Distributed Software Development Introduction Why we need a Systematic Task Allocation 1 Impact factors 2 Constraints
  • 4. Systematic Task Allocation Evaluation in Distributed Software Development Scenario of a Task Allocation Decision Problem Emperical Basis for the Scenario Types of distributed development : 1 Outsourcing 2 Captive Offshoring Standard Software Custom Software
  • 5. Systematic Task Allocation Evaluation in Distributed Software Development Scenario of a Task Allocation Decision Problem Outsourcing Outsourcing 1 Complete projects or products to be developed are usually assigned to outside contractors. 2 Usually within the national boundaries..
  • 6. Systematic Task Allocation Evaluation in Distributed Software Development Scenario of a Task Allocation Decision Problem Captive Offshoring Captive Offshoring 1 Complete projects or products to be developed are usually assigned within an organization that has globally distributed sites. 2 Usually outside the national boundaries.. Figure: Offshoring Market
  • 7. Systematic Task Allocation Evaluation in Distributed Software Development Scenario of a Task Allocation Decision Problem Captive Offshoring –> Standard Software Standard Software Assignment is done based on specialized teams that evolve over a long time.
  • 8. Systematic Task Allocation Evaluation in Distributed Software Development Scenario of a Task Allocation Decision Problem Captive Offshoring –> Custom Software Custom Software 1 Tasks are allocated based on availability of resources. 2 There are multiple influencing factors like cost, expertise, proximity to customer etc. 3 Mainly, the aim is to reduce the cost of development.
  • 9. Systematic Task Allocation Evaluation in Distributed Software Development Task Allocation Scenario Task Allocation Scenario GlobalSoft is a large European based company. Develops individual software products for customers in Germany and UK. Its main development centers are located in Frankfurt and Cologne, Germany and smaller subsideries in London to be close to its British customers. Recently opened a site in Bangalore..!! Why..?
  • 10. Systematic Task Allocation Evaluation in Distributed Software Development Task Allocation Scenario Task Allocation Scenario contd.. Now, they have a customer BigIndustries located in London. The old projects were developed at London, Frankfurt and Cologne. But now, there is also a possibility to assign some work to Bangalore. The design and architecture has already been developed and they want to distribute the development work.
  • 11. Systematic Task Allocation Evaluation in Distributed Software Development Approach Approach Overview Goal 1 : Identify the project specific influencing factors for a task allocation decision and their impact. Goal 2 : Evalvate the possible task allocation alternatives according to the project specific influencing factiors.
  • 12. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Viewpoint Define Viewpoint Decide who should be making the decisions. . Scenario : At GlobalSoft, the task allocation is done by the responsible project manager. He was also incharge of the previous projects of BigIndustries (and the customer was happy :) )
  • 13. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Context Define Context Define the input for the task allocation decision . Scenario : The context of the project is developed as shown.
  • 14. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Focus Define Focus What is the criteria of the evaluation...? Cost..? Quality..? or something else..? . Scenario : At GlobalSoft, the only criterion is the total development costs. But, how do we define this ”Development cost”..?
  • 15. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Variation Factors Define Variation Factor Variation factors are all those factors that have an allocation-dependent influence on the evaluation criterion. . Scenario : The variation categories were identified as: 1 Site characteristics: Analyst capability, programmer capability, language and tool experience, personnel continuity, customer proximity. 2 Site dependencies : Cultural dependencies, time-zone differences 3 Task characteristics : Size 4 Task dependencies: Coupling 5 Task-site dependencies : Application experience, platform experience
  • 16. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Baseline Define Baseline The goal of this step is to define the baseline for scuccess measures. Its on what basis you would decide to allocate the tasks..?? . Scenario : GlobalSoft uses COCOMO II model to establish a baseline.
  • 17. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Define Impact of Variation Factors Define Impact of Variation Factors In this step, the impact of every variation factor on every criterion in focus is evaluated. . Scenario : GlobalSoft uses a CoBRA approach for cost estimation.
  • 18. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Assess the Variation Factors Assess the Variation Factors For all tasks and sites identified, the values of the variation factors are now assessed for the project in hand. . Scenario : The project manager assesses all the factors and print them into an excel model.
  • 19. Systematic Task Allocation Evaluation in Distributed Software Development Process Steps Evaluate Assignment alternatives Evaluate Assignment alternatives Finally every possible assignments can now be evaluated using the results from the previous steps. . Scenario : The manager proposes 3 alternatives: 1 Assign all the work to Europe 2 Assign testing work to India 3 Assign everything to India
  • 20. Systematic Task Allocation Evaluation in Distributed Software Development Assumptions made in the paper Assumptions made in the paper In the paper, the author makes assumptions based on an optimistic scenario. . In real world all necessary information about the relavent influencing factors and their impact are not available in a quantified form. . The selection of total development cost as the only criterion may have made the numbers but this doesn’t happen in the real world. . The available knowledge is never quantifiable. . It also assumes high degree of freedom in task allocation decision.
  • 21. Systematic Task Allocation Evaluation in Distributed Software Development Thank You Thank You