MIT System Design and Management Presentation

How to Analyze and Visualize a Large, Interconnected Software System: A Study of Fedora 20 with Lessons for All by Dan Sturtevant, PhD., and Dave Allan

Presented on January 26th, 2015 – YouTube video of presentation available here, presentation slides here

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 discuss:

1) How to visualize the system at multiple levels (including the view from 60,000 feet) and gain meaningful insights about its hidden structure,

2) How to benchmark across the system to better understand its composition and variations in complexity and quality, and

3) How this approach might be applied to other software systems.

Contact the Authors:

  • Dan Sturtevant, CEO of Silverthread Inc. and Researcher at Harvard Business School
  • Dave Allan, Director of Software Engineering Silverthread Inc.

Faculty Member Outlines Values of Software System Architecture

Faculty Member Outlines Value of Software System Architecture by Alan MacCormack

Over the last 10 to 15 years, even the most traditional of industries have come to rely on software, for everything from inventory control to vehicle navigation. The average automobile today has more software than the first Apollo moon rocket. Your garden variety microwave may even have an algorithm for cooking popcorn to fit your specific tastes. Despite this dramatic increase in the pervasiveness and importance of software, however, many companies lack a fundamental understanding of the architecture underlying their code. This problem costs firms millions of dollars per year.

Read Full Article

SDM Best Thesis Analyzes Costs of Software System Complexity

SDM Best Thesis analyzes costs of software system complexity by Andrei Akaikine

Maintaining a complex system at a “good enough” level  of functionality comes at a cost. In systems where stability is
paramount, personnel dealing with small emergencies traditionally rely on “Band-Aid” fixes that increase complexity and heighten the risk of destabilizing the whole system with each new modification, however minor.

Andrei Akaikine’s thesis focuses on the following three questions:
• Is there a relationship between engineering efforts required for a basic
maintenance task and the overall software system complexity?
• Are any components more susceptible than others to change during
system maintenance tasks?
• Can the redesign of a system be economically justified?

Read Full Article