Adaptation of large-scale open source software - An experience report

被引:0
|
作者
Pizka, M [1 ]
机构
[1] Tech Univ Munich, Inst Informat I4, D-80290 Munich, Germany
关键词
D O I
10.1109/CSMR.2004.1281415
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Within a long-term distributed systems project we repeatedly: stumbled across the well-known yet difficult question to either implement from scratch or comprehend and adapt existing software. Having tried both ways allows us to retrospectively; compare the effectiveness of "from scratch" implementation versus software evolution. By using the code bases of GNU GCC and Linux for the adaptation approach we gained valuable experiences with the comprehension and adaptation of large but sparsely documented code bases. In most cases, the adaptation of existing software proved to be by-far more effective than implementing from scratch. Surprisingly, the effort needed to comprehend the existing voluminous source codes repeatedly proved to be less than expected. In this paper we discuss our positive and negative experiences and the various factors influencing success and failure. Albeit collected in an academic setting, the observations described in this paper might well be transferable to the maintenance of large-scale commercial environments, too.
引用
收藏
页码:147 / 153
页数:7
相关论文
共 50 条
  • [1] Software evolution in open source projects - a large-scale investigation
    Koch, Stefan
    [J]. JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION-RESEARCH AND PRACTICE, 2007, 19 (06): : 361 - 382
  • [2] MapQuant: Open-source software for large-scale protein quantification
    Leptos, KC
    Sarracino, DA
    Jaffe, JD
    Krastins, B
    Church, GM
    [J]. PROTEOMICS, 2006, 6 (06) : 1770 - 1782
  • [3] Analyzing the State of Static Analysis: A Large-Scale Evaluation in Open Source Software
    Beller, Moritz
    Bholanath, Radjino
    McIntosh, Shane
    Zaidman, Andy
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 1, 2016, : 470 - 481
  • [4] A large-scale empirical exploration on refactoring activities in open source software projects
    Vassallo, Carmine
    Grano, Giovanni
    Palomba, Fabio
    Gall, Harald C.
    Bacchelli, Alberto
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2019, 180 : 1 - 15
  • [5] A large-scale study of architectural evolution in open-source software systems
    Pooyan Behnamghader
    Duc Minh Le
    Joshua Garcia
    Daniel Link
    Arman Shahbazian
    Nenad Medvidovic
    [J]. Empirical Software Engineering, 2017, 22 : 1146 - 1193
  • [6] A large-scale study of architectural evolution in open-source software systems
    Behnamghader, Pooyan
    Duc Minh Le
    Garcia, Joshua
    Link, Daniel
    Shahbazian, Arman
    Medvidovic, Nenad
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2017, 22 (03) : 1146 - 1193
  • [7] Open source tools for large-scale neuroscience
    Freeman, Jeremy
    [J]. CURRENT OPINION IN NEUROBIOLOGY, 2015, 32 : 156 - 163
  • [8] Quality Assessment for Large-Scale Industrial Software Systems: Experience Report at Alibaba
    Zhi, Chen
    Deng, Shuiguang
    Yin, Jianwei
    Fu, Min
    Zhu, Hai
    Li, Yuanping
    Xie, Tao
    [J]. 2019 26TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), 2019, : 142 - 149
  • [9] Free and Open Source Software organizations: A large-scale analysis of code, comments, and commits frequency
    Chelkowski, Tadeusz
    Jemielniak, Dariusz
    Macikowski, Kacper
    [J]. PLOS ONE, 2021, 16 (09):
  • [10] Large-scale information retrieval in software engineering - an experience report from industrial application
    Michael Unterkalmsteiner
    Tony Gorschek
    Robert Feldt
    Niklas Lavesson
    [J]. Empirical Software Engineering, 2016, 21 : 2324 - 2365