The Human Cost of Complexity: Linking Product Architecture and Employee Turnover

In the INFORMS 2014 presentation, Alan and Dan summarized recent studies showing that modular systems are cheaper to maintain (in terms of defects) and easier to adapt (in terms of productivity) and also dive into new work highlighting that the human costs that such systems generate for those working within them. This case study paid particular attention to the impact of complexity on employee turnover. Developers working on the most complex parts of a system were more likely to leave. These results highlight the critical links between technical and social systems.


Take Back Control of Your Software Systems and Drive Results

  • Do you have a software project that is behind schedule?
  • Are open issues growing instead of shrinking?
  • Does your team’s productivity seem to be grinding to a halt?
  • Have you implemented an agile process but don’t feel agile?
  • Have you invested in code quality tools and process, but still can’t keep up with the changing requirements?

If this sounds familiar, click on the link above to learn how to take back control of your software systems and drive results.


How to Analyze and Visualize a Large, Interconnected Software System: A Study of Fedora 20 with Lessons for all

When working inside a system of enormous scale, people often understand only the part with which they are involved. As long as the whole system is sufficiently modular, people tend to believe they can construct reasonably reliable mental models of their component and how it interfaces with others. However, this is not always safe; research shows that hidden structures can interconnect components of a complex system at higher levels, causing organizational problems that are difficult to see, understand, and address.

Fedora 20 is composed of more than 2,500 interconnected software packages developed and managed by globally distributed teams. Estimates have placed the number of software developers who have contributed at over 100,000. In this webinar, Daniel Sturtevant and David Allan will present research that addresses the architectural complexity of the Fedora Linux operating system and software collection. They will discuss:

  • How to visualize the system at multiple levels (including the view from 60,000 feet) and gain meaningful insights about its hidden structure;
  • How to benchmark across the system to better understand its composition and variations in complexity and quality; and
  • How this approach might be applied to other software systems.


Technical Debt in Large Systems: Understanding the Cost of Software Complexity

In this webinar, Dan says that many modern systems are so large that no one truly understands how they work. Because these systems exceed the bounds of human understanding, different design teams must work on separate chunks, glue their work together, and hope that the whole thing behaves as expected. That doesn’t always happen. In this webinar, we discuss how to measure complexity and architecture in a large codebase, and how to measure the risk and cost it imposes on the development organization. In this case study at a real commercial firm, those costs were substantial.