Bottlenecks Identification in Software Development Process: A Quali-Quantitative Approach

This paper presents the quali-quantitative results of a study on the identification of bottlenecks in the software development process. The research was developed in an environment learning of Software Engineering and had the collaboration of students of the Department of Computer Science (DCC) of the Federal University of Rio de Janeiro (UFRJ). The main objective of the research is to verify the existence of productive bottlenecks in Software Development Process (SDP), typify them and if possible to promote treatments to solve the impacts in the process and in the software product. For this, three experimental rounds were carried out and three different domains were applied. Each round had deferential teams working in the same domain. The experiments also involved the Unified Process (UP) to guiding the SDP and the Theory of Constraints (TOC) to identify and treat the restrictive elements found in the productive process. As results, the work presents a set of qualitative constraints subdivided into two groups: (1) Behavioral Constraints (BC), and (2) Technical Constraints (TC). The identification of these qualitative constraints allowed quantitative bottlenecks to be detected. The research also showed that bottlenecks are associated with certain tasks performed in the software development environment within a given domain. In general, these tasks are consuming resources, such as effort, time and human resources. This fact leads to the software product to a low quality due to the lack of completeness and correctness of the artifacts delivered to the end of the productive process.

[1]  Jeffrey C. Carver,et al.  Issues in using students in empirical studies in software engineering education , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[2]  Philippe Kruchten,et al.  Using grounded theory to study the experience of software development , 2011, Empirical Software Engineering.

[3]  Austen Rainer,et al.  A quantitative and qualitative analysis of factors affecting software processes , 2003, J. Syst. Softw..

[4]  S. Rahman,et al.  Theory of constraints , 1998 .

[5]  S S Mahapatra,et al.  Application of Theory of Constraints on Scheduling of Drum-buffer-rope System , 2006 .

[6]  Arie van Deursen,et al.  An exploratory study of the pull-based software development model , 2014, ICSE.

[7]  Agneta Nilsson,et al.  Assessing the effects of introducing a new software development process: a methodological description , 2013, International Journal on Software Tools for Technology Transfer.

[8]  Michael Martin Nieto,et al.  Photon and graviton mass limits , 2008, 0809.1003.

[9]  Stephen G. MacDonell,et al.  Factors that affect software systems development project outcomes: A survey of research , 2011, CSUR.

[10]  P. Schroeder The Goal: A Process of Ongoing Improvement , 1994 .

[11]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[12]  Rory V. O'Connor,et al.  The situational factors that affect the software development process: Towards a comprehensive reference framework , 2012, Inf. Softw. Technol..

[13]  Sankar Sengupta,et al.  A new method for bottleneck detection , 2008, 2008 Winter Simulation Conference.

[14]  I. Newman Qualitative-Quantitative Research Methodology : Exploring the Interactive Continuum , 1999 .

[15]  Weidong Xia,et al.  Toward Agile: An Integrated Analysis of Quantitative and Qualitative Field Data , 2010, MIS Q..

[16]  Shilpa S. Dani,et al.  The Goal — A Process of Ongoing Improvement — 20th Anniversary Edition, 3rd revd edn by Eliyahu M. Goldratt with David Whitford, North River, Great Barrington, MA, 2004, pp. 384, pbk (ISBN 0-88427-178-1). , 2006 .

[17]  U Dave,et al.  Critical Chain , 1998, J. Oper. Res. Soc..

[18]  Sildenir Alves Ribeiro,et al.  Bottleneck Identification in Software Development Processes: A Proposal Based on the Principles of the Theory of Constraints , 2015, 2015 IEEE 10th International Conference on Global Software Engineering Workshops.

[19]  Thomas Zimmermann,et al.  Information needs for software development analytics , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[20]  Mr. Shamuvel,et al.  Application Of Theory Of Constraints On Scheduling Of Drum-Buffer-Rope System , 2013 .

[21]  A. van de Merwe It's not luck , 2002 .

[22]  John Davies,et al.  The theory of constraints thinking processes: retrospect and prospect , 2008 .

[23]  Antonio J. Alencar,et al.  Research Opportunities on the Application of the Theory of Constraints to Software Process Development , 2017, J. Softw..

[24]  Arvind Bhardwaj,et al.  Fundamental Concepts of Theory of Constraints: An Emerging Philosophy , 2010 .