Article ID: | iaor2016104 |
Volume: | 25 |
Issue: | 1 |
Start Page Number: | 56 |
End Page Number: | 76 |
Publication Date: | Jan 2016 |
Journal: | Production and Operations Management |
Authors: | Dawande Milind, Mookerjee Vijay, Xia Hao |
Keywords: | computers, computers: information, communication, quality & reliability |
The construction of a software system requires not only individual coding effort from team members to realize the various functionalities, but also adequate team coordination to integrate the developed code into a consistent, efficient, and bug‐free system. On the one hand, continuous coding without adequate coordination can cause serious system inconsistencies and faults that may subsequently require significant corrective effort. On the other hand, frequent integrations can be disruptive to the team and delay development progress. This tradeoff motivates the need for a good coordination policy. Both the complexity and the importance of coordination is accentuated in distributed software development (DSD), where a software project is developed by multiple, geographically‐distributed sub‐teams. The need for coordination in DSD exists both within one sub‐team and across different sub‐teams. The latter type of coordination involves communication across spatial boundaries (different locations) and possibly temporal boundaries (different time zones), and is a major challenge that DSD faces. In this study, we model both inter‐ and intra‐sub‐team coordination in DSD based on the characteristics of the systems being developed by the sub‐teams, the deadline for completion, and the nature of division adopted by the sub‐teams with respect to development and integration activities. Our analysis of optimal coordination policies in DSD shows that integration activities by one sub‐team not only benefit that sub‐team (as is the case in co‐located development) but can also help the other sub‐teams by providing greater visibility, thereby resulting in a higher integration frequency relative to co‐located development. Analytical results are presented to demonstrate how the characteristics of the projects and the sub‐teams, and the efficiency of communication across the sub‐teams, affect coordination and productivity. We also investigate the pros and cons of using specialized integration sub‐teams and find that their advantage decreases as the project schedule becomes tighter. Decentralized decisions and asymmetric subsystems are also discussed.