People and Organizational Measures

Conway’s Law states that “organizations that design systems are constrained to produce systems which are copies of the communication structures of these organizations” [Conway 1968]. Similarly, Fred Brooks argues in The Mythical Man-Month that the product quality is strongly affected by organizational structure [Brooks 1995]. Software engineering is a complex engineering activity. It involves interactions between people, processes, and tools to develop a complete product. In practice, commercial software development is performed by teams consisting of a number of individuals, ranging from the tens to the thousands. Often these people work via an organizational structure reporting to a manager or set of managers. Often failure predictions are obtained from measures such as code churn, code complexity, code coverage, code dependencies, etc. But these studies often ignore one of the most influential factors in software development: specifically, “people and organizational structure.”

With the advent of global software development where teams are distributed across the world, the impact of organization structure on Conway’s Law and its implications on quality are significant. In this section, we investigate the relationship between organizational structure and software quality via a set of eight measures that quantify organizational complexity [Nagappan et al. 2008]. For the organizational metrics, the metrics capture issues such as organizational distance ...

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.