gsd systematic task allocation evaluation in distributed software development
DESCRIPTION
Systematic Task Allocation in Global Software DevelopmentTRANSCRIPT
Systematic Task Allocation Evaluation in Distributed Software Development
Systematic Task Allocation Evaluationin Distributed Software Development
October 16, 2012
Systematic Task Allocation Evaluation in Distributed Software DevelopmentIntroduction
What is meant by a Systematic Task Allocation
Evaluating various task allocation alternatives and to effectivelyestablish a customized task allocation practices in an organization.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentIntroduction
Why we need a Systematic Task Allocation
1 Impact factors2 Constraints
Systematic Task Allocation Evaluation in Distributed Software DevelopmentScenario of a Task Allocation Decision Problem
Emperical Basis for the Scenario
Types of distributed development :
1 Outsourcing2 Captive Offshoring
Standard SoftwareCustom Software
Systematic Task Allocation Evaluation in Distributed Software DevelopmentScenario of a Task Allocation Decision Problem
Outsourcing
Outsourcing
1 Complete projects or products to be developed are usuallyassigned to outside contractors.
2 Usually within the national boundaries..
Systematic Task Allocation Evaluation in Distributed Software DevelopmentScenario of a Task Allocation Decision Problem
Captive Offshoring
Captive Offshoring
1 Complete projects or products to be developed are usuallyassigned within an organization that has globally distributedsites.
2 Usually outside the national boundaries..
Figure: Offshoring Market
Systematic Task Allocation Evaluation in Distributed Software DevelopmentScenario of a Task Allocation Decision Problem
Captive Offshoring –> Standard Software
Standard SoftwareAssignment is done based on specialized teams that evolve over along time.
Figure: Offshoring Market
Systematic Task Allocation Evaluation in Distributed Software DevelopmentScenario 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 DevelopmentTask Allocation Scenario
Task Allocation Scenario
GlobalSoft is a large European based company.Develops individual software products for customers inGermany and UK.Its main development centers are located in Frankfurt andCologne, Germany and smaller subsideries in London to beclose to its British customers.Recently opened a site in Bangalore..!! Why..?
Systematic Task Allocation Evaluation in Distributed Software DevelopmentTask Allocation Scenario
Task Allocation Scenario contd..
Now, they have a customer BigIndustries located in London.The old projects were developed at London, Frankfurt andCologne.But now, there is also a possibility to assign some work toBangalore.The design and architecture has already been developed andthey want to distribute the development work.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentApproach
Approach Overview
Goal 1 : Identify the project specific influencing factors for atask allocation decision and their impact.Goal 2 : Evalvate the possible task allocation alternativesaccording to the project specific influencing factiors.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Define Viewpoint
Define Viewpoint
Decide who should be making the decisions..Scenario : At GlobalSoft, the task allocation is done by theresponsible project manager. He was also incharge of the previousprojects of BigIndustries (and the customer was happy :) )
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Define Context
Define ContextDefine the input for the task allocation decision.Scenario : The context of the project is developed as shown.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Define Focus
Define Focus
What is the criteria of the evaluation...? Cost..? Quality..? orsomething else..?.Scenario : At GlobalSoft, the only criterion is the totaldevelopment costs. But, how do we define this ”Developmentcost”..?
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Define Variation Factors
Define Variation Factor
Variation factors are all those factors that have anallocation-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, customerproximity.
2 Site dependencies : Cultural dependencies, time-zonedifferences
3 Task characteristics : Size4 Task dependencies: Coupling5 Task-site dependencies : Application experience, platform
experience
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess 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 abaseline.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Define Impact of Variation Factors
Define Impact of Variation FactorsIn this step, the impact of every variation factor on every criterionin focus is evaluated..Scenario : GlobalSoft uses a CoBRA approach for cost estimation.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Assess the Variation Factors
Assess the Variation Factors
For all tasks and sites identified, the values of the variation factorsare now assessed for the project in hand..Scenario : The project manager assesses all the factors and printthem into an excel model.
Systematic Task Allocation Evaluation in Distributed Software DevelopmentProcess Steps
Evaluate Assignment alternatives
Evaluate Assignment alternativesFinally every possible assignments can now be evaluated using theresults from the previous steps..Scenario : The manager proposes 3 alternatives:
1 Assign all the work to Europe2 Assign testing work to India3 Assign everything to India
Systematic Task Allocation Evaluation in Distributed Software DevelopmentAssumptions made in the paper
Assumptions made in the paper
In the paper, the author makes assumptions based on an optimisticscenario..In real world all necessary information about the relaventinfluencing factors and their impact are not available in aquantified form..The selection of total development cost as the only criterion mayhave 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 DevelopmentThank You
Thank You