|   | CMU-ISR-10-104 Institute for Software Research
 School of Computer Science, Carnegie Mellon University
 
    
     
 CMU-ISR-10-104
 
Coordination Breakdowns and their Impact onDevelopment Productivity and Software Failures
 
Marcelo Cataldo, James D. Herbsleb 
March 2010  
CMU-ISR-10-104.pdf Keywords: Metrics/measurement, productivity, organizational
management and coordination, quality analysis and evaluation
 The success of software development projects depends on carefully and 
effectively coordinating the effort of many individuals across the multiple 
stages of the development process. In software engineering, modularization 
is the traditional technique intended to reduce the interdependencies
among modules that constitute a system. Reducing technical dependencies, 
the theory argues, results in a reduction of work dependencies between teams 
developing interdependent modules. Organizational researchers have proposed 
similar theoretical arguments. Although such research streams have been 
quite influential, they have taken a coarse-grain and static view of the
problem of coordination in engineering activities. This paper proposes 
a new perspective on coordination where fine-grain and evolving dependencies 
are front and central. Our empirical analyses demonstrate that considering 
dependencies at a fine-grain level of analysis provides us deeper insight 
to the relationship between technical and work dependencies. Moreover, our 
examination of two large scale projects from two distinct companies showed 
that (a) logical dependencies among software entities are significantly more 
important in terms of coordinating development work compared to syntactic 
dependencies and (b) satisfying coordination needs arising from those logical 
software dependencies with appropriate coordinating actions results in 
significant improvements on development productivity as well as a significant 
reduction in the failure proneness of the software systems.
 
45  pages 
 |