Exploring the structure of complex software designs: An empirical study of open source and proprietary code

被引:322
|
作者
MacCormack, Alan [1 ]
Rusnak, John [1 ]
Baldwin, Carliss Y. [1 ]
机构
[1] Harvard Univ, Sch Business, Boston, MA 02163 USA
关键词
architecture; software; design; product development; modularity; open source;
D O I
10.1287/mnsc.1060.0552
中图分类号
C93 [管理学];
学科分类号
12 ; 1201 ; 1202 ; 120202 ;
摘要
This paper reports data from a study that seeks to characterize the differences in design structure between complex software products. We use design structure matrices (DSMs) to map dependencies between the elements of a design and define metrics that allow us to compare the structures of different designs. We use these metrics to compare the architectures of two software products-the Linux operating system and the Mozilla Web browser-that were developed via contrasting modes of organization: specifically, open source versus proprietary development. We then track the evolution of Mozilla, paying attention to a purposeful "redesign" effort undertaken with the intention of making the product more "modular." We find significant differences in structure between Linux and the first version of Mozilla, suggesting that Linux had a more modular architecture. Yet we also find that the redesign of Mozilla resulted in an architecture that was significantly more modular than that of its predecessor and, indeed, than that of Linux. Our results, while exploratory, are consistent with a view that different modes of organization are associated with designs that possess different structures. However, they also suggest that purposeful managerial actions can have a significant impact in adapting a design's structure. This latter result is important given recent moves to release proprietary software into the public domain. These moves are likely to fail unless the product possesses an "architecture for participation."
引用
收藏
页码:1015 / 1030
页数:16
相关论文
共 50 条
  • [31] An Empirical Study of Architectural Decay in Open-Source Software
    Duc Minh Le
    Link, Daniel
    Shahbazian, Arman
    Medvidovic, Nenad
    2018 IEEE 15TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA), 2018, : 176 - 185
  • [32] An empirical study of integration activities in distributions of open source software
    Adams, Bram
    Kavanagh, Ryan
    Hassan, Ahmed E.
    German, Daniel M.
    EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (03) : 960 - 1001
  • [33] An empirical study of integration activities in distributions of open source software
    Bram Adams
    Ryan Kavanagh
    Ahmed E. Hassan
    Daniel M. German
    Empirical Software Engineering, 2016, 21 : 960 - 1001
  • [34] An Empirical Study of Security Culture in Open Source Software Communities
    Wen, Shao-Fang
    Kianpour, Mazaher
    Kowalski, Stewart
    PROCEEDINGS OF THE 2019 IEEE/ACM INTERNATIONAL CONFERENCE ON ADVANCES IN SOCIAL NETWORKS ANALYSIS AND MINING (ASONAM 2019), 2019, : 863 - 870
  • [35] Empirical Study for Open Source Libraries in Automotive Software Systems
    Zhang, Yanan
    Ning, Yuqiao
    Ma, Chao
    Yu, Longhai
    Guo, Zhen
    IEEE ACCESS, 2023, 11 : 123717 - 123728
  • [36] An Empirical Study on Selection of Open Source Software - Preliminary Results
    Hauge, Oyvind
    Osterlie, Thomas
    Sorensen, Carl-Fredrik
    Gerea, Marinela
    2009 ICSE WORKSHOP ON EMERGING TRENDS IN FREE-LIBRE-OPEN SOURCE SOFTWARE RESEARCH AND DEVELOPMENT, 2009, : 42 - 47
  • [37] An Empirical Study of User Support Tools in Open Source Software
    Raza, Arif
    Capretz, Luiz Fernando
    Basri, Shuib B.
    2019 IEEE 15TH INTERNATIONAL CONFERENCE ON CONTROL AND AUTOMATION (ICCA), 2019, : 964 - 968
  • [38] Towards a Better Understanding of Software Evolution: An Empirical Study on Open Source Software
    Xie, Guowu
    Chen, Jianbo
    Neamtiu, Iulian
    2009 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, CONFERENCE PROCEEDINGS, 2009, : 51 - 60
  • [39] An empirical study of open-source and closed-source software products
    Paulson, JW
    Succi, G
    Eberlein, A
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2004, 30 (04) : 246 - 256
  • [40] A Framework of Code Reuse in Open Source Software
    Tung, Yuan-Hsin
    Chuang, Chih-Ju
    Shan, Hwai-Ling
    2014 16TH ASIA-PACIFIC NETWORK OPERATIONS AND MANAGEMENT SYMPOSIUM (APNOMS), 2014,