Characterizing Technical Debt and Antipatterns in AI-Based Systems: A Systematic Mapping Study
arXiv:2103.09783 · doi:10.1109/TechDebt52882.2021.00016
Abstract
Background: With the rising popularity of Artificial Intelligence (AI), there is a growing need to build large and complex AI-based systems in a cost-effective and manageable way. Like with traditional software, Technical Debt (TD) will emerge naturally over time in these systems, therefore leading to challenges and risks if not managed appropriately. The influence of data science and the stochastic nature of AI-based systems may also lead to new types of TD or antipatterns, which are not yet fully understood by researchers and practitioners. Objective: The goal of our study is to provide a clear overview and characterization of the types of TD (both established and new ones) that appear in AI-based systems, as well as the antipatterns and related solutions that have been proposed. Method: Following the process of a systematic mapping study, 21 primary studies are identified and analyzed. Results: Our results show that (i) established TD types, variations of them, and four new TD types (data, model, configuration, and ethics debt) are present in AI-based systems, (ii) 72 antipatterns are discussed in the literature, the majority related to data and model deficiencies, and (iii) 46 solutions have been proposed, either to address specific TD types, antipatterns, or TD in general. Conclusions: Our results can support AI professionals with reasoning about and communicating aspects of TD present in their systems. Additionally, they can serve as a foundation for future research to further our understanding of TD in AI-based systems.
arXiv commentAccepted at the 4th International Conference on Technical Debt (TechDebt 2021)
References in corpus (6)
- Software Engineering Challenges of Deep Learning
- Adoption and Effects of Software Engineering Best Practices in Machine Learning
- Making Contextual Decisions with Low Technical Debt
- Towards Guidelines for Assessing Qualities of Machine Learning Systems
- Machine Learning Software Engineering in Practice: An Industrial Case Study
- Component Mismatches Are a Critical Bottleneck to Fielding AI-Enabled Systems in the Public Sector
Cited by in corpus (9)
- Design Patterns for AI-based Systems: A Multivocal Literature Review and Pattern Repository
- Maintainability Challenges in ML: A Systematic Literature Review
- A Case Study on AI Engineering Practices: Developing an Autonomous Stock Trading System
- How Do Model Export Formats Impact the Development of ML-Enabled Systems? A Case Study on Model Integration
- Assessing the Quality of Computational Notebooks for a Frictionless Transition from Exploration to Production
- How do Machine Learning Models Change?
- System Design for an Integrated Lifelong Reinforcement Learning Agent for Real-Time Strategy Games
- Notes On Writing Effective Empirical Software Engineering Papers: An Opinionated Primer
- A Survey of Algorithm Debt in Machine and Deep Learning Systems: Definition, Smells, and Future Work