gsd systematic task allocation evaluation in distributed software development

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

Upload: shatakirti-er

Post on 23-Jun-2015

474 views

Category:

Documents


1 download

DESCRIPTION

Systematic Task Allocation in Global Software Development

TRANSCRIPT

Page 1: Gsd   systematic task allocation evaluation in distributed software development

Systematic Task Allocation Evaluation in Distributed Software Development

Systematic Task Allocation Evaluationin Distributed Software Development

October 16, 2012

Page 2: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 3: Gsd   systematic task allocation evaluation in distributed software development

Systematic Task Allocation Evaluation in Distributed Software DevelopmentIntroduction

Why we need a Systematic Task Allocation

1 Impact factors2 Constraints

Page 4: Gsd   systematic task allocation evaluation in distributed software development

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

Page 5: Gsd   systematic task allocation evaluation in distributed software development

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..

Page 6: Gsd   systematic task allocation evaluation in distributed software development

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

Page 7: Gsd   systematic task allocation evaluation in distributed software development

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

Page 8: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 9: Gsd   systematic task allocation evaluation in distributed software 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..?

Page 10: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 11: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 12: Gsd   systematic task allocation evaluation in distributed software development

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 :) )

Page 13: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 14: Gsd   systematic task allocation evaluation in distributed software development

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”..?

Page 15: Gsd   systematic task allocation evaluation in distributed software development

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

Page 16: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 17: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 18: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 19: Gsd   systematic task allocation evaluation in distributed software development

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

Page 20: Gsd   systematic task allocation evaluation in distributed software development

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.

Page 21: Gsd   systematic task allocation evaluation in distributed software development

Systematic Task Allocation Evaluation in Distributed Software DevelopmentThank You

Thank You