TAMRI: A Tool for Supporting Task Distribution in Global Software Development Projects



Similar documents
T task Distribution and Selection Based Algorithm

A Multi-Criteria Distribution Model for Global Software Development Projects

Measurement Information Model

Quality Assurance Assessment in Global Software Development

FOREIGN AFFAIRS PROGRAM EVALUATION GLOSSARY CORE TERMS

ANALYZING SYSTEM MAINTAINABILITY USING ENTERPRISE ARCHITECTURE MODELS

Bayesian Networks and Classifiers in Project Management

Global Software Development

The International ICT Sourcing Ecosystem Key value enablers

Estimating Software Reliability In the Absence of Data

Development of an Automated Tool for Demand Forecasting in Unitywater

Mathematical models to estimate the quality of monitoring software systems for electrical substations

Prediction of DDoS Attack Scheme

Similarity Search and Mining in Uncertain Spatial and Spatio Temporal Databases. Andreas Züfle

Chapter 14 Managing Operational Risks with Bayesian Networks

PRO-REQ: a facilitator guide to implement CMMI-Dev requirements engineering and management areas

CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENTS

Vinay Parisa 1, Biswajit Mohapatra 2 ;

Methods for Assessing Vulnerability of Critical Infrastructure

WiFi-Nano: Reclaiming WiFi Efficiency through 800 ns Slots

Architecture Evaluation Methods: Introduction to ATAM

Building and Using Spreadsheet Decision Models

Nine Common Types of Data Mining Techniques Used in Predictive Analytics

Software Engineering from an Engineering Perspective: SWEBOK as a Study Object

Applying Risk Assessment to Your Audit Plan Break-out Session T3, Tuesday, October 26 2:00-2:50pm

Prediction Markets, Fair Games and Martingales

Project Decision Analysis Process

Collaborative Software Design & Development. *Collaboration*

Using the Cloud to Facilitate Global Software Development Challenges

Compression algorithm for Bayesian network modeling of binary systems

Lightweight Service-Based Software Architecture

Open-EMR Usability Evaluation Report Clinical Reporting and Patient Portal

Fixing First-Time Fix: Repairing Field Service Efficiency to Enhance Customer Returns

Comparing Artificial Intelligence Systems for Stock Portfolio Selection

Another Look at Sensitivity of Bayesian Networks to Imprecise Probabilities

Measurement of Object-Oriented Software Development Projects. January 2001

Building Metrics for a Process

APPLYING A STOCHASTIC LINEAR SCHEDULING METHOD TO PIPELINE CONSTRUCTION

INCORPORATION OF LEARNING CURVES IN BREAK-EVEN POINT ANALYSIS

Steve Masters (SEI) SEPG North America March Carnegie Mellon University

CMMI STANDARDS IN SOFTWARE DEVELOPING PROCESS

An Empirical Approach - Distributed Mobility Management for Target Tracking in MANETs

Optimal Replacement of Underground Distribution Cables

Lloyd Spencer Lincoln Re

Automated Model Based Testing for an Web Applications

Leveraging Agile and CMMI for better Business Benefits Presented at HYDSPIN Mid-year Conference Jun-2014

SOFT 423: Software Requirements

Edmonds Community College Macroeconomic Principles ECON 202C - Winter 2011 Online Course Instructor: Andy Williams

GLOSSARY OF EVALUATION TERMS

How To Find Influence Between Two Concepts In A Network

Modelling operational risk in the insurance industry

An Evaluation Model for Determining Insurance Policy Using AHP and Fuzzy Logic: Case Studies of Life and Annuity Insurances

Chapter 4 SUPPLY CHAIN PERFORMANCE MEASUREMENT USING ANALYTIC HIERARCHY PROCESS METHODOLOGY

The Bayesian Network Methodology for Industrial Control System with Digital Technology

Warehouse Management in

Christian Bettstetter. Mobility Modeling, Connectivity, and Adaptive Clustering in Ad Hoc Networks

ijcrb.webs.com INTERDISCIPLINARY JOURNAL OF CONTEMPORARY RESEARCH IN BUSINESS NOVEMBER 2013 VOL 5, NO 7 Abstract

MIS 424 COURSE OUTLINE

Software Process Improvement Software Business. Casper Lassenius

Informatics 2D Reasoning and Agents Semester 2,

Labor Category For MOBIS SIN 874-1:

Automating the evaluation of flood damages

Holistic education: An interpretation for teachers in the IB programmes

Comparison of K-means and Backpropagation Data Mining Algorithms

Lawrence S. Farey. 193 S.W. Seminole Drive Aloha, OR 97006

The Importance of Continuous Integration for Quality Assurance Teams

Influences of Communication Disruptions on Decentralized Routing in Transport Logistics

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Scenario Planning. Overview. March 15, Kathy Keeley Northland Foundation

TEXATA 2015 PREPARATION GUIDE

Software Engineering (Set-I)

Correlation between competency profile and course learning objectives for Full-time MBA

Process Improvement. Objectives

Assessing the Business Value of Knowledge Retention Projects: Results of Four Case Studies

Integer Programming: Algorithms - 3

The Software Industry

An Algorithm for Automatic Base Station Placement in Cellular Network Deployment

Transcription:

TAMRI: A Tool for Supporting Task Distribution in Global Software Development Projects REMIDI 2009, Limerick, Ireland Ansgar Lamersdorf a_lamers@informatik.uni-kl.de Jürgen Münch Juergen.Muench@iese.fraunhofer.de

Outline Motivation Model Overview Application Scenarios The TAMRI Tool Summary and Outlook Page 2/18

Motivation: Task Allocation Software development processes have to be allocated to distributed sites TAMRI: Tool for Supporting Task Distribution n tasks to m sites up to m n different assignments theoretically possible Task allocation has to consider abilities at sites and communication overhead In practice: often task allocation by cost and availability only High development risks Page 3/18

Challenges of Task Allocation Decisions Multiple goals Multiple influences Organization-specific contexts Uncertainty Cost reduction (assign to low-cost sites), development time (reduce communication overhead), development quality (assign to experts), closeness to markets E.g., expertise at sites, proximity to customer, time zone difference, cultural distance, communication need Different weight on goals, other influencing factors, differences in importance of influences Not all characteristics of remote sites are known; uncertainty in predicting human behavior Not handled by existing planning approaches Research goal: Build decision support model addressing these challenges Page 4/18

TAMRI Overview Identified in empirical study Organizational knowledge: Influencing factors Causal relationships Goal: Task allocation based on multiple criteria Based on specific project characteristics and general organizational experience, make suggestions for task assignment Task allocation has to consider multiple goals and criteria Decision model Input: Values for influencing factors (actual characteristics of project, tasks, sites), weighted goals Output: Assignment suggestions Page 5/18

Empirical Study: Influencing Factors TAMRI: Tool for Supporting Task Distribution Study goal Which factors influence project goals in GSD? Study design Literature study and interviews with 10 practitioners Language difference Cultural difference ++ Common experiences ++ Infrastructur e distance -- Time shift ++ +++ Problems in Communication, Coordination, Control - Coupling between tasks Labor Costs ++ -- --- ++ Productivity Expertise & Knowledge ++ Possibility of Followthe-sun Follow-thesun benefit Process maturity +++ +++ Proximity to customer --- Knowledge fit Needed Proximity ++ ++ Needed Expertise for tasks Model describes causal relations under uncertainty Bayesian Networks Result: Model for evaluating assignment Influences of task assignment on goals - -- ++ +++ --- --- Costs Time Quality Page 6/18

Modeling Impact with Bayesian Networks Bayesian Networks are used for modeling causal relationships under uncertainty Values for each causal relationship are determined by probabilistic tables Example: high Communication need medium Time zone distance Communication need Time zone distance OH Low Med High Low 0% 5% 10% 15% 20% Medium 0% 5% 10% 15% 20% High 0% 2% 5% 8 % 10% 35% 15% 30% 20% 25% Overhead TAMRI: Table values were determined through - study results - own estimations - and mathematical functions Probability 0% 5% 10% 15% 20% Overhead Page 7/18

TAMRI Overview Results of empirical study Optimization algorithm Input: Values for influencing factors Evaluation model Distributed Systems Algorithm Output: Assignment suggestions Evaluation model Optimization algorithm Describes the results of concrete assignment on goals Bayesian Networks Uses assignment evaluation Identifies optimal assignment Based on algorithm of distributed systems (optimal assignment of tasks to processor nodes) Page 8/18

TAMRI Overview Results of empirical study Input: Values for influencing factors Bayesian Network (task execution) Bayesian Network (transmission) Output: Statistical distribution over impact Optimization algorithm Distributed Systems Algorithm Evaluation model uses Bayesian Networks (BN) BN for execution tasks at site: What is the impact on goals if task A is assigned to site 1? BN for transmission overhead: What is the impact of overhead for transmitting information between task A at site 1 and task B at site 2? BNs can be instantiated for every assignment of tasks to sites Result: not single values but probabilistic distribution Page 9/18 Output: Assignment suggestions

TAMRI Overview Results of empirical study Input: Values for influencing factors Bayesian Network (task execution) Bayesian Network (transmission) Output: Statistical distribution over impact Optimization algorithm: Randomization Pick values Distributed Systems Algorithm Input: Execution impact (site, task) Transmission impact (site, site, task, task) Output: Optimal assignment For n >> 1 (n=1000) - Pick random values for every impact function based on statistical distributions - Execute distributed system algorithm - Store optimal assignment Store in list Page 10/18 Output: Weighted list of assignment suggestions

Scenario Overview component_ requirements Tasks: component_ requirements generate_ test cases test_ cases white_box_test transferred input transferred input component_ design transferred input transferred output create_ component_ design component_ design ad_hoc_ design_ inspection component_development defect_ list perform_ tests executable_ code create_ component_ code test_ results transferred output transferred output executable_ code Sites: - low labor costs - small distance - no time shift A - near customer - high labor costs - large distance - large time shift - low labor costs B - large distance - large time shift C Page 11/18 Source: Goldmann, S., Münch, J., Holz, H. (2000): Distributed Process Planning Support with MILOS

Task Allocation Scenario (1) TAMRI: Tool for Supporting Task Distribution Scenario 1 Component development & testing - Development is done at A, testing needs to be assigned to B or C - Follow-the-sun possible between A and C - Higher familiarity at B - Cost rate no criterion Testing Development Page 12/18

Tool Implementation: Scenario 1 TAMRI: Tool for Supporting Task Distribution Factors are organizationspecific and can be changed easily in the implementation Weight Tasks Characteristics and placed Sites of on can development sites testing quality: be AB with added task development task respect Assignment to testing to time: familiar task follow-the-sun site with suggested C slightly prioritized Page 13/18

Task Allocation Scenario (2) TAMRI: Tool for Supporting Task Distribution Scenario 2 Test 1 Dev 1 Development and testing of 3 components - All tasks can be assigned freely - Different coupling between components (1 2: high, 1 3, 2 3: low) - Expertise for development at A, testing at B - Low labor costs at C, possibility of follow-thesun Test 2 Dev 2 Dev 3 Test 3 Page 14/18

Results Scenario 2 Priority: quality and cost Due to complexity, significance in results not so high (best assignment only optimal in 16% of runs) However, general suggestions can be derived from result list - Development should be done at A - It is generally better to do testing at B than at C - But single testing tasks could also be done at C Page 15/18

Summary: Characteristics of TAMRI Model Multiple goals Multiple influences Organization-specific context Uncertainty Different goals can be weighted and aggregated into one impact function Large number of different influencing factors can be specified in Bayesian Networks Bayesian Network concept allows for easily exchanging networks without having to change underlying algorithms; Bayesian Networks can be adapted to organization-specific goals, influencing factors, weights Bayesian Networks can describe causal relationships under uncertainty; results can be produced without having to specify all input parameters; model output reflects uncertainty by providing multiple suggestions Page 16/18

Future Research Adaptation of model to specific contexts Evaluation Eliciting organizational knowledge Process for decision support Bayesian Networks are based on empirical study with input from various types of GSD - Model needs to be adapted to specific environments / organization The model has only been evaluated in hypothetical scenarios - Future work: evaluation in real-world context - Will practitioners accept black-box model? Underlying assumption: knowledge about organization is very detailed (e.g., cultural differences between sites can be classified) - Methods for eliciting knowledge have to be found The decision model has to be integrated into an organizational task allocation process - Includes roles, responsibilities, sub-processes for eliciting knowledge, determining influencing factors Page 17/18

Thank you for your attention! Contact: Dr. Jürgen Münch Juergen.Muench@iese.fraunhofer.de Ansgar Lamersdorf ansgar@lamersdorf.net Page 18/18