A Multicriteria Approach to Support Task Allocation in Projects of Distributed Software Development

Organizations are increasingly investing in Distributed Software Development (DSD) over the years. A typical decision-making problem in the distributed scenario consists of deciding which team should be allocated each task. That decision takes into account a relative degree of subjectivity. That setting is suitable for applying Verbal Decision Analysis (VDA). This paper introduces an approach to support the allocation of tasks to distributed units in DSD projects, structured on the hybridisation of methods of Verbal Decision Analysis for classification and rank ordering applied to influencing factors and executing units. Firstly, a review of the literature was conducted aiming to identify the approaches to support the allocation of tasks in DSD contexts. Then, an approach was developed by applying VDA-based methods for classification and ordering. Bibliographic research and the application of surveys with professionals allowed identifying and characterising the main elements that influence task assignment in DSD projects. Afterwards, experiences were carried out in five real-world companies. In the end, the proposed approach has been submitted to the evaluation by the professionals of the participating companies and by some project management experts. The proposed approach comprises a workflow containing responsible actors and descriptions of the activities. Automated tools are also employed in automating the implementation of the approach. After applying the approach in five companies, task assignment recommendations are presented in groups for each company, according to the task type, i.e., requirements, architecture, coding, and testing, ranging from the most to the least preferable office. Results of the experiences and evaluations held during this work present evidence that the proposed approach is flexible, adaptable, and easy to understand and to use. Moreover, it helps to reduce decision subjectivity and to think of new aspects, supporting the task allocation process in DSD.

[1]  Adriano Bessa Albuquerque,et al.  Applying verbal decision analysis in distributed software development: Rank ordering the influencing factors in task allocation , 2016, 2016 11th Iberian Conference on Information Systems and Technologies (CISTI).

[2]  Pär J. Ågerfalk,et al.  A framework for considering opportunities and threats in distributed software development , 2005 .

[3]  Veda C. Storey,et al.  Design science in the information systems discipline: an introduction to the special issue on design science research , 2008 .

[4]  Adriano Bessa Albuquerque,et al.  Analysis of task allocation in distributed software development through a hybrid methodology of verbal decision analysis , 2017, J. Softw. Evol. Process..

[5]  Siffat Ullah Khan,et al.  Factors influencing clients in the selection of offshore software outsourcing vendors: An exploratory study using a systematic literature review , 2011, J. Syst. Softw..

[6]  Siri-on Setamanit,et al.  Planning and improving global software development process using simulation , 2006, GSD '06.

[7]  Siri-on Setamanit,et al.  Using simulation to evaluate global software development task allocation strategies , 2007, Softw. Process. Improv. Pract..

[8]  I. Tamanini,et al.  Towards an applied multicriteria model to the diagnosis of Alzheimer's disease: A neuroimaging study case , 2009, 2009 IEEE International Conference on Intelligent Computing and Intelligent Systems.

[9]  Pankaj Jalote,et al.  Assigning tasks in a 24-hour software development model , 2004, 11th Asia-Pacific Software Engineering Conference.

[10]  Plácido Rogério Pinheiro,et al.  Applying a Decision Making Model in the Early Diagnosis of Alzheimer's Disease , 2007, RSKT.

[11]  Ricardo Colomo Palacios,et al.  Towards a Framework for Work Package Allocation for GSD , 2011, OTM Workshops.

[12]  Adriano Bessa Albuquerque,et al.  Task Allocation Approaches in Distributed Agile Software Development: A Quasi-systematic Review , 2015, CSOC.

[13]  Omar Abou Khaled,et al.  Interweaving knowledge management, argumentation and decision making in a collaborative setting: the KAD ontology model , 2005, Int. J. Knowl. Learn..

[14]  Rafael Prikladnicki,et al.  MuNDDoS - Um Modelo de Referência para Desenvolvimento Distribuído de Software , 2004, SBES.

[15]  Adriano Bessa Albuquerque,et al.  Task assignment to distributed teams based on a qualitative multi-criteria approach , 2017, 2017 12th Iberian Conference on Information Systems and Technologies (CISTI).

[16]  Rex V. Brown,et al.  Numerical and verbal decision analysis: comparison on practical cases , 2000 .

[17]  Jürgen Münch,et al.  Towards a Multi-criteria Development Distribution Model: An Analysis of Existing Task Distribution Approaches , 2008, 2008 IEEE International Conference on Global Software Engineering.

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

[19]  Philippe Kruchten,et al.  Task Coordination in an Agile Distributed Software Development Environment , 2006, 2006 Canadian Conference on Electrical and Computer Engineering.

[20]  Mario Piattini,et al.  Challenges and Improvements in Distributed Software Development: A Systematic Review , 2009, Adv. Softw. Eng..

[21]  Victor R. Basili The Role of Controlled Experiments in Software Engineering Research , 2006, Empirical Software Engineering Issues.

[22]  Gilberto Montibeller,et al.  Supporting the allocation of software development work in distributed teams with multi-criteria decision analysis , 2008 .

[23]  Adriano Bessa Albuquerque,et al.  A Multi-criteria Model for Planning and Fine-Tuning Distributed Scrum Projects , 2011, 2011 IEEE Sixth International Conference on Global Software Engineering.

[24]  Adriano Bessa Albuquerque,et al.  Applying Verbal Decision Analysis in Selecting Specific Practices of CMMI , 2012, RSKT.

[25]  Plácido Rogério Pinheiro,et al.  OrclassWeb: A Tool Based on the Classification Methodology ORCLASS from Verbal Decision Analysis Framework , 2014 .

[26]  Isabelle Tamanini,et al.  A Novel Multicriteria Model Applied to Cashew Chestnut Industrialization Process , 2009 .

[27]  Helen M. Moshkovich,et al.  Marketing decisions in small businesses: how verbal decision analysis can help , 2010 .

[28]  Isabelle Tamanini,et al.  Reducing incomparability in multicriteria decision analysis: an extension of the ZAPROS method , 2011 .

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

[30]  Maria Edith Villela Pedras Uma ferramenta de apoio ao gerenciamento de desenvolvimento de software distribuído , 2011 .

[31]  Dmitry Kochin,et al.  VERBAL DECISION ANALYSIS METHODS FOR DETERMINING THE EFFICIENCY OF INVESTMENTS IN CONSTRUCTION , 2004 .

[32]  Ita Richardson,et al.  Global software development and collaboration: barriers and solutions , 2010, INROADS.

[33]  Plácido Rogério Pinheiro,et al.  A Multicriteria Model Applied in the Diagnosis of Alzheimer's Disease: A Bayesian Network , 2008, CSE.

[34]  Adriano Bessa Albuquerque,et al.  Applying Multi-Criteria Decision Analysis to Global Software Development with Scrum Project Planning , 2011, RSKT.

[35]  Tania Fatima Calvi Tait,et al.  Dimanager: A Tool for Distributed Software Development Management , 2004, ICEIS.

[36]  Adriano Bessa Albuquerque,et al.  Applying Verbal Decision Analysis to Task Allocation in Distributed Development of Software , 2016, SEKE.

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

[38]  Oleg I. Larichev,et al.  Decision support system for classification of a finite set of multicriteria alternatives , 2002, Decis. Support Syst..

[39]  Jürgen Münch,et al.  TAMRI: A Tool for Supporting Task Distribution in Global Software Development Projects , 2009, 2009 Fourth IEEE International Conference on Global Software Engineering.

[40]  Plácido Rogério Pinheiro,et al.  Verbal decision analysis applied on the optimization of Alzheimer's disease diagnosis: a case study based on neuroimaging. , 2011, Advances in experimental medicine and biology.

[41]  Marcelo Cataldo,et al.  Siemens Global Studio Project: Experiences Adopting an Integrated GSD Infrastructure , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).

[42]  S.-o. Setamanit,et al.  Improving Global Software Development Project Performance Using Simulation , 2007, PICMET '07 - 2007 Portland International Conference on Management of Engineering & Technology.

[43]  Jürgen Münch,et al.  A multi-criteria distribution model for global software development projects , 2010, Journal of the Brazilian Computer Society.

[44]  Adriano Bessa Albuquerque,et al.  Hybrid Approaches of Verbal Decision Analysis in the Selection of Project Management Approaches , 2015, ITQM.

[45]  Plácido Rogério Pinheiro,et al.  Applying a New Approach Methodology with ZAPROS , 2008 .

[46]  Oleg I. Larichev,et al.  Ranking multicriteria alternatives: The method ZAPROS III , 2001, Eur. J. Oper. Res..

[47]  Mahmood Niazi,et al.  Critical Success Factors for Offshore Software Development Outsourcing Vendors: A Systematic Literature Review , 2009, 2009 Fourth IEEE International Conference on Global Software Engineering.

[48]  Plácido Rogério Pinheiro,et al.  A co-evolutionary interaction design of digital TV applications based on verbal decision analysis of user experiences , 2009 .

[49]  Päivi Parviainen,et al.  Philips experiences in global distributed software development , 2007, Empirical Software Engineering.

[50]  Marum Simão Filho,et al.  Project portfolio prioritization aided by verbal decision analysis , 2018, 2018 13th Iberian Conference on Information Systems and Technologies (CISTI).

[51]  Alexander I. Mechitov,et al.  ARACE - A New Method for Verbal Decision Analysis , 2015, Int. J. Inf. Technol. Decis. Mak..

[52]  Plácido Rogério Pinheiro,et al.  A Model for Mobile Television Applications Based on Verbal Decision Analysis , 2007, SCSS.

[53]  Plácido Rogério Pinheiro,et al.  Applied hybrid model in the neuropsychological diagnosis of the Alzheimer's disease: a decision making study case , 2010, Int. J. Soc. Humanist. Comput..

[54]  Plácido Rogério Pinheiro,et al.  Project management aided by verbal decision analysis approaches: a case study for the selection of the best SCRUM practices , 2015, Int. Trans. Oper. Res..

[55]  Sabrina Marczak,et al.  MuNDDoS: A Research Group on Global Software Development , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).

[56]  Victor R. Basili,et al.  Empirical Software Engineering Issues. Critical Assessment and Future Directions, International Workshop, Dagstuhl Castle, Germany, June 26-30, 2006. Revised Papers , 2007, Empirical Software Engineering Issues.

[57]  Plácido Rogério Pinheiro,et al.  Applying Verbal Analysis of Decision to Prioritize Software Requirement Considering the Stability of the Requirement , 2017, CSOC.

[58]  Thelma Elita Colanzi,et al.  Um Ambiente de Desenvolvimento Distribuído de Software- DiSEN , 2007 .

[59]  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.

[60]  Sabrina Marczak,et al.  An Ontology for Task Allocation to Teams in Distributed Software Development , 2013, 2013 IEEE 8th International Conference on Global Software Engineering.

[61]  Adriano Bessa Albuquerque,et al.  Task Allocation in Distributed Software Development: A Systematic Literature Review , 2018, Complex..

[62]  Alexander I. Mechitov,et al.  Verbal Decision Analysis: Foundations and Trends , 2013, Adv. Decis. Sci..

[63]  Mahmood Niazi,et al.  Barriers in the selection of offshore software development outsourcing vendors: An exploratory study using a systematic literature review , 2011, Inf. Softw. Technol..