An optimal coordination method for software development

The problem of coordinating activities while developing large software systems is challenging. In this paper, we formulate a quantitative coordination model to analyze the optimal management policy for incremental software development. Then we develop an effective solution procedure with polynomial complexity to solve the model. Numerical studies show: (1) too large a team size is counter-productive resulting intensive communication overhead; (2) higher level of product structural complexity and communication efficiency favor more development cycles; (3) higher changeover costs and tighter schedule compression discourage more development cycles; (4) communication efficiency has no great impact on the optimal coordination policy but induces great overhead; (5) the optimal number of modules released reveals a U-shape characteristic. Case study shows that communication costs, module integration costs and system integration costs can be greatly reduced through the use of an optimal coordination policy.

[1]  Vijay S. Mookerjee,et al.  A Dynamic Coordination Policy for Software System Construction , 2002, IEEE Trans. Software Eng..

[2]  Stephanie D. Teasley,et al.  Rapid Software Development through Team Collocation , 2002, IEEE Trans. Software Eng..

[3]  Jay R. Galbraith Designing Complex Organizations , 1973 .

[4]  Kevin Crowston,et al.  What is coordination theory and how can it help design cooperative work systems? , 1990, CSCW '90.

[5]  Glenford J. Myers,et al.  Structured Design , 1999, IBM Syst. J..

[6]  Edward M. Roche,et al.  Global Software Teams , 1999 .

[7]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[8]  Vijay S. Mookerjee,et al.  Modeling Coordination in Software Construction: An Analytical Approach , 1995, Inf. Syst. Res..

[9]  Victor R. Basili,et al.  Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.

[10]  Thomas W. Malone,et al.  Modeling Coordination in Organizations and Markets , 1987 .

[11]  Frederick P. Brooks,et al.  The Mythical Man-Month: Essays on Softw , 1978 .

[12]  D L Carver Criteria for estimating module complexity , 1986 .

[13]  A. V. D. Ven,et al.  Determinants of Coordination Modes within Organizations , 1976 .

[14]  J. Alberto Espinosa,et al.  The impact of time separation on coordination in global software teams: a conceptual foundation , 2003, Softw. Process. Improv. Pract..

[15]  Glenford J. Myers,et al.  Structured Design , 1974, IBM Syst. J..

[16]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[17]  Robert E. Kraut,et al.  Coordination in software development , 1995, CACM.

[18]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.