DigitalSE Logo

Technical Debt in the Engineering of Complex Systems

Abstract

Technical debt (TD) is a widely adopted metaphor in the software engineering field, referring to short-term compromises in software artifacts that make future refactoring or maintenance very expensive or even impossible. Using commercial off-the-shelf (COTS) decisions as examples, this chapter adapts the TD metaphor to the systems engineering field, expands the TD landscape and taxonomies, and discusses strategies and tactics to cope with TD in the context of engineering complex systems. We expect that the TD notion and taxonomy inspire alternative perspectives for the analysis, communication, and alignment of design decisions across cross-organizational stakeholders, with the intention to mitigate challenging integration and obsolescence issues in the engineering of complex systems.


Leads

Ye Yang

Amazon.com Inc.

Dinesh Verma

Stevens Institute Of Technology

Publications

  1. Abts , C. , Boehm , B.W. , and Clark , E.B. ( 2000 ). COCOTS: A cots software integration lifecycle cost model-model overview and preliminary data collection findings . In ESCOM-SCOPE Conference , Orlando, FL, USA (18–21 February 2020). pp. 18 – 20 .

  2. Alelyani , T. , Michel , R. , Yang , Y. et al. ( 2019 ). A literature review on obsolescence management in cots-centric cyber physical systems . Procedia Computer Science 153 : 135 – 145 .

  3. AlOmar , E.A. , Christians , B. , Busho , M. et al. ( 2022 ). Satdbailiff-mining and tracking self-admitted technical debt . Science of Computer Programming 213 : 102693 .

  4. Besker , T. , Martini , A. , Lokuge , R.E. , et al. ( 2018 ). Embracing technical debt, from a startup company perspective . In 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME) , Madrid, Spain (23–29 September 2018). pp. 415 – 425 .

  5. Bhuta , J. and Boehm , B. ( 2007 ). Attribute-based cots product interoperability assessment . In Proceedings of the 2007 Sixth International IEEE Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems (ICCBSS'07) , Banff, Alberta, Canada (26 February–2 March 2007). pp. 163 – 171 .

  6. Bogner , J. , Verdecchia , R. , and Gerostathopoulos , I. ( 2021 ). Characterizing technical debt and antipatterns in AI-based systems: a systematic mapping study . In Proceedings of the 4th International Conference on Technical Debt, 2021 IEEE/ACM International Conference on Technical Debt (TechDebt) , Virtual (19–21 May 2021). pp. 64 – 73 .

  7. Clark , B. ( 2018 ). A taxonomy of tech debt . Riot Games (online).

  8. Clark , B. and Clark , B. ( 2007 ). Added sources of costs in maintaining COTS-intensive systems. CrossTalk . The Journal of Defense Software Engineering .

  9. Cunningham , W. ( 1993 ). The WyCash portfolio management system . ACM SIGPLAN OOPS Messenger 4 ( 2 ): 29 – 30 .

  10. Fairbanks , G. ( 2020 ). Ur-technical debt . IEEE Annals of the History of Computing 37 ( 4 ).

  11. Federal Acquisition Regulation (FAR), 48 C.F.R . ( 2019 )

  12. Garlan , D. , Allen , R. , and Ockerbloom , J. ( 1995 ). Architectural mismatch or why it's hard to build systems out of existing parts . In Proceedings of the 17th International Conference on Software Engineering , Seattle, WA, USA (23–30 April 1995). pp. 179 – 179 .

  13. Kruchten , P. , Nord , R.L. , and Ozkaya , I. ( 2012 ). Technical debt: From metaphor to theory and practice . IEEE Software 29 ( 6 ): 18 – 21 .

  14. Kruchten , P. , Nord , R.L. , and Ozkaya , I. ( 2019 ). Managing Technical Debt: Reducing Friction in Software Development . Addison-Wesley Professional .

  15. Lenarduzzi , V. , Besker , T. , Taibi , D. et al. ( 2021 ). A systematic literature review on technical debt prioritization: Strategies, processes, factors, and tools . Journal of Systems and Software 171 : 110827 .

  16. Letouzey , J.-L. and Whelan , D. ( 2016 ). Introduction to the Technical Debt Concept . Corryton, TN : Agile Alliance .

  17. Li , Z. , Avgeriou , P. , and Liang , P. ( 2015 ). A systematic mapping study on technical debt and its management . Journal of Systems and Software 101 : 193 – 220 .

  18. Martini , A. , Bosch , J. , and Chaudron , M. ( 2015 ). Investigating architectural technical debt accumulation and refactoring over time: a multiple-case study . Information and Software Technology 67 : 237 – 253 .

  19. Martini , A. , Besker , T. , and Bosch , J. ( 2018 ). Technical debt tracking: current state of practice: a survey and multiple case study in 15 large organizations . Science of Computer Programming 163 : 42 – 61 . ISSN 0167-6423.

  20. Nugroho , A. , Visser , J. , and Kuipers , T. ( 2011 ). An empirical model of technical debt and interest . In Proceedings of the 2nd workshop on managing technical debt , Honolulu, HI, USA (May 2011). pp. 1 – 8 .

  21. Rubin , K.S. ( 2012 ). Essential Scrum: A Practical Guide to the Most Popular Agile Process . Addison-Wesley .

  22. da Saraiva , J. D. S. , Neto , J. G. , and Kulesza , U. , et al. ( 2021 ). Exploring technical debt tools: a systematic mapping study . In Proceedings of the International Conference on Enterprise Information Systems (ICEIS) , virtual (26–28 April 2021). pp. 280 – 303 .

  23. Sierra , G. , Shihab , E. , and Kamei , Y. ( 2019 ). A survey of self-admitted technical debt . Journal of Systems and Software 152 : 70 – 82 .

  24. Tang , Y. , Khatchadourian , R.T. , Bagherzadeh , M. , Singh , R. , Stewart , A. & Raja , A. ( 2021 ). An empirical study of refactorings and technical debt in machine learning systems . In Proceedings of the IEEE/ACM 43rd International Conference on Software Engineering (ICSE) , Madrid, Spain (22–30 May 2021). pp. 238 – 250 .

  25. Yang , Y. , Michel , R. , Wade , J. et al. ( 2019 ). Towards a taxonomy of technical debt for cots-intensive cyber physical systems . Procedia Computer Science 153 : 108 – 117 .

  26. Yang , Y. , Boehm , B. , and Wu , D. ( 2006 ). Cocots risk analyzer . In Proceedings of the IEEE 5th International Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems (ICCBSS'05) , Orlando, FL, USA (13–16 February 2006).

SERC Logo

The Systems Engineering Research Center (SERC) was established in the Fall of 2008 as a government-designated University Affiliated Research Center (UARC). The SERC has produced 15 years of research, focused on an updated systems engineering toolkit (methods, tools, and practices) for the complex cyber-physical systems of today and tomorrow.


Follow us on

LinkedIn