Join Now!

Join our welcoming International Design Community.

Read about the many benefits of becoming and remaining a member.

Full, Associate, Departmental and Institutional Membership available.

Complete this application form to join now.

Design Society Rigi Meeting 2016, Erlangen, Germany
Theses repository

System Design and the Cost of Architectural Complexity

System Design and the Cost of Architectural Complexity

Language: English

Year: 2013

Author: Daniel J. Sturtevant

Supervisor: Alan D. MacCormack, Steven D. Eppinger,Christopher L. Magee,and Daniel Jackson,

Institution: Massachusetts Institute of Technology

Pages: 166

Abstract

Many modern systems are so large that no one truly understands how they work. It is well known in the engineering community that architectural patterns (including hierarchies, modules, and abstraction layers) should be used in design because they play an important role in controlling complexity. These patterns make a system easier to evolve and keep its separate portions within the bounds of human understanding so that distributed teams can operate independently while jointly fashioning a coherent whole. This study set out to measure the link between architectural complexity (the complexity that arises within a system due to a lack or breakdown of hierarchy or modularity) and a variety of costs incurred by a development organization. A study was conducted within a successful software firm. Measures of architectural complexity were taken from eight versions of their product using techniques recently developed by MacCormack, Baldwin, and Rusnak. Significant cost drivers including defect density, developer productivity, and staff turnover were measured as well. The link between cost and complexity was explored using a variety of statistical techniques.Within this research setting, we found that differences in architectural complexity could account for 50% drops in productivity, three-fold increases in defect density, and order-of-magnitude increases in staff turnover. Using the techniques developed in this thesis, it should be possible for firms to estimate the financial cost of their complexity by assigning a monetary value to the decreased productivity, increased defect density, and increased turnover it causes. As a result, it should be possible for firms to more accurately estimate the potential dollar-value of refactoring efforts aimed at improving architecture.

Keywords: software complexity, software architecture, design structure matrix, cost of complexity

Join Now!

Join our welcoming International Design Community.

Read about the many benefits of becoming and remaining a member.

Full, Associate, Departmental and Institutional Membership available.

Complete this application form to join now.

Keywords
SIG Workshop - March 2013 - 1