Organizational Complexity Within Microsoft

We’ve explored the relationship of Conway’s Corollary with developer productivity by examining how “congruence,” Cataldo’s term for conforming to Conway’s Corollary, yields faster task completion. The other important outcome in any software development project is software quality. It is well known that a defect identified later in the development cycle has a much higher cost to correct. Defects that are not identified until after release are the most costly and therefore the most important to minimize. The cost associated with such defects have more than just monetary effects; perceived quality and company reputation drops when users encounter bugs in software, which can have lasting effects in the marketplace.

In light of Conway’s claims and the cost associated with defects, Nachi Nagappan, Brendan Murphy, and Vic Basili studied organizational structure and post-release defects in Windows Vista [Nagappan et al. 2008] and found a surprisingly strong relationship between the two. In fact, they found that measures of organizational structure were better indicators of software quality than any attributes of the software itself. Put more simply, in the case of Vista, if you want to know whether a piece of software has bugs, you’ll know better by looking at how the people who wrote it were organized than by looking at the code!

At the heart of their study is the premise that software development is a group effort and organizational complexity ...

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.