Designing an Agile Software Portfolio Architecture: The Impact of Coupling on Performance

by Alan MacCormack, Robert Lagerström, Martin Mocker, and Carliss Y. Baldwin
 
 

Overview — This study deepens our understanding of how firms can better design software portfolio architectures to improve their agility. The authors examined data from over 1,000 different software applications and 3,000 dependencies between them. They found that indirect measures of coupling and dependency have more power in predicting IT agility than direct measures.

Author Abstract

The modern industrial corporation encompasses a myriad of different software applications, which must work in concert to deliver functionality to end users. However, the increasingly complex and dynamic nature of competition in today’s product markets dictates that this software portfolio be continually evolved and adapted in order to meet new business challenges. This ability—to rapidly update, improve, remove, replace, and reimagine the software applications that underpin a firm’s competitive position—is at the heart of what has been called IT agility. Unfortunately, little work has examined the antecedents of IT agility with respect to the choices a firm makes when designing its “Software Portfolio Architecture.” We address this gap in the literature by exploring the relationship between software portfolio architecture and IT agility at the level of the individual applications in the architecture. In particular, we draw from modular systems theory to develop a series of hypotheses about how different types of coupling impact the ability to update, remove, or replace the software applications in a firm’s portfolio. We test our hypotheses using longitudinal data from a large financial services firm, comprising over 1,000 applications and over 3,000 dependencies between them. Our methods allow us to disentangle the effects of different types and levels of coupling. Our analysis reveals that applications with higher levels of coupling cost more to update, are harder to remove, and are harder to replace than those with lower coupling. The measures of coupling that best explain differences in IT agility include all indirect dependencies between software applications (i.e., they include coupling and dependency relationships that are not easily visible to the system architect). Our results reveal the critical importance of software portfolio design decisions in developing a portfolio of applications that can evolve and adapt over time.

Paper Information