DeepAI AI Chat
Log In Sign Up

Software Engineering for AI-Based Systems: A Survey

AI-based systems are software systems with functionalities enabled by at least one AI component (e.g., for image- and speech-recognition, and autonomous driving). AI-based systems are becoming pervasive in society due to advances in AI. However, there is limited synthesized knowledge on Software Engineering (SE) approaches for building, operating, and maintaining AI-based systems. To collect and analyze state-of-the-art knowledge about SE for AI-based systems, we conducted a systematic mapping study. We considered 248 studies published between January 2010 and March 2020. SE for AI-based systems is an emerging research area, where more than 2/3 of the studies have been published since 2018. The most studied properties of AI-based systems are dependability and safety. We identified multiple SE approaches for AI-based systems, which we classified according to the SWEBOK areas. Studies related to software testing and software quality are very prevalent, while areas like software maintenance seem neglected. Data-related issues are the most recurrent challenges. Our results are valuable for: researchers, to quickly understand the state of the art and learn which topics need more research; practitioners, to learn about the approaches and challenges that SE entails for AI-based systems; and, educators, to bridge the gap among SE and AI in their curricula.

READ FULL TEXT

page 7

page 12

page 14

page 15

page 16

page 17

page 24

page 35

02/10/2021

Quality Assurance for AI-based Systems: Overview and Challenges

The number and importance of AI-based systems in all domains is growing....
03/17/2021

Characterizing Technical Debt and Antipatterns in AI-Based Systems: A Systematic Mapping Study

Background: With the rising popularity of Artificial Intelligence (AI), ...
03/19/2022

Data Smells: Categories, Causes and Consequences, and Detection of Suspicious Data in AI-based Systems

High data quality is fundamental for today's AI-based systems. However, ...
02/20/2023

A Model-driven Approach for Continuous Performance Engineering in Microservice-based Systems

Microservices are quite widely impacting on the software industry in rec...
05/05/2022

Monitoring AI systems: A Problem Analysis, Framework and Outlook

Knowledge-based systems have been used to monitor machines and processes...
03/14/2023

MeROS: Metamodel for ROS-based Systems

The complexity of today's robot control systems implies difficulty in de...
08/03/2021

The application of artificial intelligence in software engineering: a review challenging conventional wisdom

The field of artificial intelligence (AI) is witnessing a recent upsurge...