Framework for Task Allocation in Global Software Development

The Global Software Development (GSD) promises high-quality software at low cost. It enables round-the-clock development to achieve maximum production in a short period by utilizing expertise around the globe. GSD is only possible if tasks are effectively distributed among sites to ensure smooth development. Therefore, one of the key challenges of GSD is designing a task allocation (TA) strategy. The main objective of the present research is to develop a framework that takes into account important factors, while allocating tasks to distributed sites involved in GSD. The current allocation in plan-based software development is done on ad-hoc basis and does not follow any systematic approach or framework. The framework facilitates decision-makers in allocation of tasks in a manner that controls delay and re-allocation. The study uses a mixed method approach, where the data used to create the framework is acquired via an industrial survey (58 participants) and interviews (10 participants) with GSD practitioners. The developed task allocation framework is validated with the help of an online focus group with participants (7 participants) from around the globe. The ability of the framework to be applicable in real-world scenarios is assessed from the feedback of industry practitioners. They have highlighted the usefulness of the framework to both, practitioners involved in task allocation decision as well as researchers working in the area. The automation and validation of the framework in real-world GSD scenarios is part of future work of this research.

[1]  S. H. Appelbaum Socio‐technical systems theory: an intervention strategy for organizational development , 1997 .

[2]  Daniela E. Damian,et al.  Selecting Empirical Methods for Software Engineering Research , 2008, Guide to Advanced Empirical Software Engineering.

[3]  E. M. Murgado-Armenteros,et al.  Differences between Online and Face to Face Focus Groups, Viewed through Two Approaches , 2012, J. Theor. Appl. Electron. Commer. Res..

[4]  Hadi Hemmati,et al.  An Empirical Study of Search-Based Task Scheduling in Global Software Development , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP).

[5]  Jude Fernandez,et al.  Task Allocation Model in Globally Distributed Software Projects Using Genetic Algorithms , 2012, 2012 IEEE Seventh International Conference on Global Software Engineering.

[6]  Yunwen Ye,et al.  Reducing the Cost of Communication and Coordination in Distributed Software Development , 2007, SEAFOOD.

[7]  Adriano Bessa Albuquerque,et al.  Task assignment to distributed teams aided by a hybrid methodology of verbal decision analysis , 2017, IET Softw..

[8]  Liisa von Hellens,et al.  Qualitative Research in Information Systems , 2007, Australas. J. Inf. Syst..

[9]  Adriano Bessa Albuquerque,et al.  Task Allocation in Distributed Software Development Aided by Verbal Decision Analysis , 2016, CSOC.

[10]  A. Cartelli Socio-Technical Theory and Knowledge Construction: Towards New Pedagogical Paradigms? , 2007 .

[11]  Raghvinder S. Sangwan,et al.  Cost estimation for global software development , 2006, EDSER '06.

[12]  Nils Brede Moe,et al.  Understanding a lack of trust in Global Software Teams: a multiple-case study , 2008, Softw. Process. Improv. Pract..

[13]  P. Sainsbury,et al.  Consolidated criteria for reporting qualitative research (COREQ): a 32-item checklist for interviews and focus groups. , 2007, International journal for quality in health care : journal of the International Society for Quality in Health Care.

[14]  Laura Lehtola,et al.  Using the focus group method in software engineering: obtaining practitioner and user experiences , 2004, Proceedings. 2004 International Symposium on Empirical Software Engineering, 2004. ISESE '04..

[15]  Sanjay Misra,et al.  Methodological framework for the allocation of work packages in global software development , 2014, J. Softw. Evol. Process..

[16]  Pär J. Ågerfalk,et al.  A reference model for successful Distributed Development of Software Systems , 2007, International Conference on Global Software Engineering (ICGSE 2007).

[17]  Fergal McCaffery,et al.  Global Software Engineering: A Software Process Approach , 2010, Collaborative Software Engineering.

[18]  Salma Imtiaz,et al.  Dynamics of task allocation in global software development , 2017, J. Softw. Evol. Process..

[19]  Sajjad Mahmood,et al.  Key factors that influence task allocation in global software development , 2017, Inf. Softw. Technol..

[20]  W. Marsden I and J , 2012 .

[21]  D. Wickramaarachchi,et al.  A method for work distribution in Global Software Development , 2013, 2013 3rd IEEE International Advance Computing Conference (IACC).

[22]  Sajjad Mahmood,et al.  A model for work distribution in global software development based on machine learning techniques , 2014, 2014 Science and Information Conference.

[23]  Marilyn Lichtman,et al.  Qualitative Research in Education: A User's Guide , 2006 .

[24]  Jürgen Münch,et al.  A Survey on the State of the Practice in Distributed Software Development: Criteria for Task Allocation , 2009, 2009 Fourth IEEE International Conference on Global Software Engineering.

[25]  Muhammad Akbar et. al.,et al.  An empirical Study Investigation of Task Allocation Process Barriers in the Context of Offshore Software Development Outsourcing: An Organization Size Based Analysis , 2019, International Journal of Computing and Digital Systems.

[26]  Murgado-ArmenterosEva María,et al.  Differences between online and face to face focus groups, viewed through two approaches , 2012 .

[27]  Pär J. Ågerfalk,et al.  Exploring the Assumed Benefits of Global Software Development , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).