Dependency models as a basis for analyzing software product platform modularity : a case study in strategic software design rationalization
Name
71360367-MIT.pdf
Description
Full printable version
Size
7.29 MB
Format
Adobe PDF
Checksum (MD5)
619d3b3a92620667a4cbe6f28b098953
Author(s)
LaMantia, Matthew J. (Matthew John)
Advisor(s)
James M. Utterback.
Alternative Title
influence of architecture on software product platform longevity and extensibility
Date Issued
2006
Publisher
Massachusetts Institute of Technology
Abstract
It is broadly accepted among software managers and architects that maintaining the integrity of software designs is important for the long-term health and viability of software product platforms. The use of modular, information-hiding architectures is considered beneficial in this regard, because they enable the addition of new features and the correction of software defects without widespread changes (Parnas, 1972; Parnas, 1978). Moreover, modular architectures in general add value to system designs by creating options to improve the system by substituting or performing experiments on individual modules (Baldwin and Clark, 2000). Recent research has sought to clarify and to define formally these notions of modularity, and their value in the software domain, though the use of software dependency models and software design structure matrices. These models provide a graphic representation of the relationships between the building blocks of large software systems, which can be used to aid visual understanding of their structure, and which also form the basis for quantitative metrics for evaluating the degree of modularity of a software system (MacCormack et al., 2005; Sangal et al., 2005; Sullivan et al., 2006).
(cont.) The goal of this thesis is to contribute to the development and validation of formal models of modularity and value, by examining the design evolution of two similar software systems through the lens of software-dependency-based design structure matrices. We find that the design structure matrix model demonstrates a form of information-hiding modularity that allows different rates of experiment in different software modules, and that also allows substitution of a software module without substantial change to the rest of the software system. Moreover, the cases demonstrate that such a substitution scenario can confer distinct strategic advantages to a firm. Based on these results, we suggest that software managers and architects explore modular architectures that localize areas of risk - technical and otherwise - in software modules with well-defined interfaces.
Description
Thesis (S.M.)--Massachusetts Institute of Technology, System Design and Management Program, 2006.
Includes bibliographical references (p. 129-131).
Subjects
System Design and Management Program.
MIT Department
System Design and Management Program.
Terms of Use
M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission.
Persistent DSpace Link