A systems interpretation of the software evolution laws and their impact on technical debt management and software maintainability

被引:1
|
作者
Franco, Eduardo Ferreira [1 ]
Hirama, Kechi [1 ]
Armenia, Stefano [2 ]
dos Santos, Joaquim Rocha [3 ]
机构
[1] Univ Sao Paulo, Dept Comp Engn, Sao Paulo, Brazil
[2] Link Campus Univ, Dept Res, Rome, Italy
[3] Univ Sao Paulo, Dept Naval Engn, Sao Paulo, Brazil
关键词
Software maintainability; Software evolution; Technical debt; System thinking; PROJECT-MANAGEMENT; DYNAMICS; INFORMATION; MODEL; FEEDBACK; THINKING; COMPLEX;
D O I
10.1007/s11219-022-09600-6
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The average lifetime of software systems has been growing steadily over the last few decades, and thus, they are demanding increasing resources to remain in operation while still meeting business needs. As a software system ages, it needs to be continuously modified and expanded to stay useful. Whether intentional or not, the various maintenance activities performed during the software's lifetime inevitably introduce quality violations, contributing to building up the software's technical debt. If these violations are not adequately addressed, they can negatively impact the software's maintainability and, thus, the software's capacity to adapt and evolve. In general terms, usually, the aim is to sustain satisfactory levels of technical quality characteristics of the software and, at the same time, preserve the maintenance costs and the tangible software asset itself at acceptable levels to organizations. The long-term impact of various maintenance investment decisions inevitability influences the software's evolutionary path, which goes through numerous iterations throughout its lifetime. This work uses the systems thinking approach to map the main concepts related to the software maintenance processes that account for this tradeoff analysis and decisions and describe their causal relationships. Moreover, it presents a systemic causal-effect relationship map capable of evidencing how some of the emergent behavior arising from long-term operating and maintaining software systems could be endogenously explained.
引用
收藏
页码:179 / 209
页数:31
相关论文
共 50 条
  • [21] Assessing technical debt by identifying design flaws in software systems
    Marinescu, R.
    IBM JOURNAL OF RESEARCH AND DEVELOPMENT, 2012, 56 (05)
  • [22] Technical Debt of Standardized Test Software
    Szabados, Kristof
    Kovacs, Attila
    2015 IEEE 7TH INTERNATIONAL WORKSHOP ON MANAGING TECHNICAL DEBT (MTD) PROCEEDINGS, 2015, : 57 - 60
  • [23] Technical Debt as an External Software Attribute
    Lavazza, Luigi
    Morasca, Sandro
    Tosi, Davide
    2018 IEEE/ACM INTERNATIONAL CONFERENCE ON TECHNICAL DEBT (TECHDEBT), 2018, : 21 - 30
  • [24] An empirical analysis of the impact of software development problem factors on software maintainability
    Chen, Jie-Cherng
    Huang, Sun-Jen
    JOURNAL OF SYSTEMS AND SOFTWARE, 2009, 82 (06) : 981 - 992
  • [25] Examining the Impact of Self-admitted Technical Debt on Software Quality
    Wehaibi, Sultan
    Shihab, Emad
    Guerrouj, Latifa
    2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 1, 2016, : 179 - 188
  • [26] Perceptions of Technical Debt and its Management Activities - A Survey of Software Practitioners
    Albuquerque, Danyllo
    Guimaraes, Everton
    Tonin, Graziela
    Perkusich, Mirko
    Almeida, Hyggo
    Perkusich, Angelo
    36TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING, SBES 2022, 2022, : 220 - 229
  • [27] Technical Debt Management in Brazilian Software Organizations: A Need, an Expectation, or a Fact?
    Silva, Victor
    Jeronimo, Helvio
    Travassos, Guilherme Horta
    PROCEEDINGS OF THE 17TH BRAZILIAN SYMPOSIUM ON SOFTWARE QUALITY (SBQS), 2015, : 200 - 209
  • [28] Preemptive Management of Model Driven Technical Debt for Improving Software Quality
    Izurieta, Clemente
    Rojas, Gonzalo
    Griffith, Isaac
    QOSA'15 PROCEEDINGS OF THE 11TH INTERNATIONAL ACM SIGSOFT CONFERENCE ON QUALITY OF SOFTWARE ARCHITECTURES, 2015, : 31 - 36
  • [29] Technologies to Support the Technical Debt Management in Software Projects: A Qualitative Research
    Silva, Victor
    Travassos, Guilherme Horta
    SBQS: PROCEEDINGS OF THE 18TH BRAZILIAN SYMPOSIUM ON SOFTWARE QUALITY, 2019, : 314 - 314
  • [30] Characterizing Implicit Communal Components as Technical Debt in Automotive Software Systems
    Vogelsang, Andreas
    Femmer, Henning
    Junker, Maximilian
    2016 13TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE (WICSA), 2016, : 31 - 40