Coordination, Congruence, and Productivity

In 2006, Marcelo Cataldo et al. [Cataldo et al. 2006] asked the question, “How much does coordination affect productivity in a large real-world software project?” The implications of the answer are clear: if coordination plays a large role in productivity, organizations have a vested interest in doing whatever they can to ease coordination. If coordination does not have much of an effect, time and money should be focused on other aspects of a project (e.g., more manpower, better equipment, or siting facilities in economically better locations).

To answer this question, they examined work dependencies, coordination needs, and the time that it took to complete software development tasks for an important project in a large company. The project represented a unit of work as a modification request (MR). An MR is any requested change to the system, whether it be adding a feature, fixing a problem, or performing maintenance to improve the code base. Team members working to complete MRs often need to coordinate their changes for two key reasons:

  • Some MRs have dependencies on other MRs. For instance, a request to add a spellchecker to a word processor cannot be completed until the request to add a dictionary to the project has been completed.

  • A software project is almost always made up of a number of interdependent modules. Thus, changes made to the system are rarely made in isolation and often affect “nearby” modules.

For these reasons, Cataldo and ...

Get Making Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.