Screen Shot 2014-09-26 at 3.32.46 AM

System Design & the Cost of Architectural Complexity

In this case study, Dan Sturtevant explores the cost of complexity in a software firm with with hundreds of commercial products and $1B in revenue. Techniques for measuring software architecture (and its breakdown) were used to identify parts of codebases that were well structured and other parts that were less-so. In this setting, architecture problems led to a tripling of quality & risk problems, a 2.5X drop in development speed, and staff attrition problems for development teams working on code with architecture issues.


Evolution of the Firefox Codebase

On this website, Ali Almossawi (student of Alan’s) visualizes the evolution of the Firefox Codebase and presents a set of metrics for all releases of Firefox that are indicative of quality.  The site allows one to inspect them through one of several views. By looking at changes in these metrics, one can see the evolution of the Firefox codebase over time. This work is also be useful as a retrospective, investigative tool to help infer when, say, architectural issues may be the cause for unfavorable user sentiment following a release.


How Maintainable is the Firefox codebase?

This article by Ali Almossawi (student of Alan MacCormack) explores a particular facet of quality in Firefox, namely, maintainability. By appealing to the explanatory powers of five practical measures of architectural complexity, and with the aid of static analysis and network manipulation tools, we arrive at some preliminary findings.


Visualizing and Measuring Enterprise Architecture: An Exploratory BioPharma Case

Carliss and Alan (with Robert Lagerström and David Dreyfus) test  a method that was designed and used previously to reveal the hidden internal architectural structure of software to see if it can also uncover new facts about an enterprise architecture.  The test uses data from a 407 interconnected software applications, databases, and services biopharmaceutical company.