[논문 리뷰] Software Engineering for AI-Based Systems: A Survey
이 논문은 2010년에서 2020년 사이에 AI 기반 시스템을 위한 소프트웨어 공학(SE4AI)에 대한 체계적 맵핑 연구를 제시하며, 248篇의 연구를 분석하여 핵심 SE 접근법, 과제, 연구 추세를 규명한다. 연구 결과, 소프트웨어 테스팅과 품질이 가장 많이 연구된 분야이며, 유지보수 분야의 연구는 여전히 부족한 편이며, 데이터 관련 과제가 주요 과제로 떠오르며, AI 시스템에서의 SE 관행 갱신의 필요성을 드러낸다.
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.
연구 동기 및 목표
- 연구자, 실무자, 교육자들이 지원할 수 있도록 AI 기반 시스템을 위한 소프트웨어 공학(SE4AI)의 현재 최선의 실천 상태를 종합한다.
- AI 시스템 개발, 운영, 유지보수 분야에서 가장 흔한 SE 접근법, 과제, 연구 추세를 규명한다.
- SWEBOK 지식 영역에 따른 연구 분포를 분석하고, 소프트웨어 유지보수와 같은 미충분한 영역을 강조한다.
- SE4AI를 위한 분류 체계와 개념적 프레임워크를 제공하여未래 연구의 명확성과 일관성을 향상시킨다.
- 특히 데이터 관련 과제를 포함한 주요 과제를 규명하고, AI 시스템을 위한 SE 기준 및 관행 개선을 제안한다.
제안 방법
- 체계적 문헌 리뷰 절차의 지침을 따르며 체계적 맵핑 연구(SMS)를 수행하였다.
- 2010년 1월부터 2020년 3월까지 출판된 논문을 검색하기 위해 12개의 데이터베이스와 arXiv를 활용하였으며, 사전 정의된 포함/배제 기준을 적용하였다.
- 제목/초록, 전문, 최종 자격 여부를 단계별로 검토하는 삼단계 선별 절차를 사용하였으며, 이중 독립 선별 및 공감 도출 방식을 적용하였다.
- SWEBOK 지식 영역(예: 소프트웨어 테스팅, 품질, 요구사항 등)을 사용하여 연구를 분류하고, SE 접근법을 맵핑하였다.
- 연구 기여 내용을 분석하여 과제를 식별하고, 특히 데이터, 윤리, 시스템 특화 문제를 중심으로 주제별로 그룹화하였다.
- 연구 팀과의 질적 분석 및 반복적 코드화를 통해 범주를 정교화하고 일관성을 확보하였다.
실험 결과
연구 질문
- RQ1AI 기반 시스템 개발 및 유지보수에 사용된 주요 소프트웨어 공학 접근법은 무엇이며, 이는 SWEBOK 지식 영역에 어떻게 분포되어 있는가?
- RQ2SE4AI 연구에서 가장 자주 목표로 삼는 품질 특성과 적용 분야는 무엇이며, 주로 사용되는 AI 기술은 무엇인가?
- RQ3AI 기반 시스템 공학에서 가장 두드러진 과제는 무엇이며, 특정 SE 지식 영역과 어떻게 연관되어 있는가?
- RQ42010년에서 2020년 사이에 SE4AI 연구 환경은 어떻게 변화하였으며, 특히 소프트웨어 유지보수와 같은 미대상 영역에서 연구 격차는 무엇인가?
- RQ5주요 연구들이 AI 시스템의 데이터 품질, 모델의 강건성, 윤리적 고려 사항과 같은 실무 과제를 얼마나 다루고 있는가?
주요 결과
- SE4AI 연구의 2/3 이상이 2018년 이후에 발표되어 분야의 급격한 성장을 시사한다.
- 소프트웨어 테스팅(115건)과 소프트웨어 품질(59건)이 가장 많이 연구된 SE 분야이며, 테스트 케이스 생성 및 ISO 26262와 같은 표준의 적응에 초점이 맞춰져 있다.
- 데이터 관련 과제가 가장 빈번한 과제로 나타나며, 확인된 과제의 25%에서 언급되었으며, 데이터 품질, 편향, 부족함이 주요 우려 사항이다.
- 소프트웨어 유지보수가 상당히 부족하게 다뤄져 있으며, 10건 미만의 연구만 확인되어 주요 연구 격차로 지적된다.
- 자동차 분야가 가장 흔한 적용 분야이며, 거의 반수의 연구가 특정 분야를 명시하지 않는다.
- 딥 러닝이 가장 명시적으로 언급된 AI 기법으로, 거의 모든 기여에서 사용되어 현재 AI 기반 시스템에서의 지배적 위치를 반영한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.