[논문 리뷰] What is Software Quality for AI Engineers? Towards a Thinning of the Fog
이 연구는 오스트리아의 10개의 중소기업(SME)에서 AI/ML 컴포넌트에 대한 소프트웨어 품질 보증(SQA) 관행을 탐구하기 위해 준구조화된 인터뷰를 실시하였다. 개발, 통합, 유지보수 단계에서 발생하는 12개의 핵심 품질 문제를 특정하였으며, 그 원인은 낮은 코드 품질, 훈련 부족, 테스트 부족 등이다. 이는 AI 공학 분야의 SQA 향상을 위한 기초적인 통찰을 제공한다.
It is often overseen that AI-enabled systems are also software systems and therefore rely on software quality assurance (SQA). Thus, the goal of this study is to investigate the software quality assurance strategies adopted during the development, integration, and maintenance of AI/ML components and code. We conducted semi-structured interviews with representatives of ten Austrian SMEs that develop AI-enabled systems. A qualitative analysis of the interview data identified 12 issues in the development of AI/ML components. Furthermore, we identified when quality issues arise in AI/ML components and how they are detected. The results of this study should guide future work on software quality assurance processes and techniques for AI/ML components.
연구 동기 및 목표
- 오스트리아의 소규모 및 중소기업(SME)이 AI/ML 컴포넌트에 소프트웨어 품질 보증(SQA) 관행를 어떻게 적용하는지 이해하기 위해.
- 실제 산업 환경에서 AI/ML 컴포넌트의 개발, 통합, 유지보수 과정에서 발생하는 특정 품질 문제를 규명하기 위해.
- 산업적 맥락에서 AI/ML 시스템의 품질 문제들이 언제이고 어떻게 감지되는지 검토하기 위해.
- 현재 관행의 격차를 보완하기 위해 AI 엔지니어의 SQA 프로세스 및 훈련 향상을 위한 실질적인 통찰을 제공하기 위해.
제안 방법
- AI 기반 시스템을 개발하는 오스트리아의 SMEs 소속 10명의 대표자들과 준구조화된 인터뷰를 실시하였다.
- 개발, 통합, 유지보수를 포함한 AI/ML 개발 라이프사이클 전반에서 현장 전문가들의 경험에 초점을 맞추었다.
- AI/ML 품질 보증에서 반복되는 주제와 문제를 규명하기 위해 정성적 데이터 분석을 사용하였다.
- 개방형 질문을 포함한 구조화된 인터뷰 프로토콜을 적용하여 SQA 전략, 과제, 감지 메커니즘을 탐구하였다.
- 네 명의 연구자가 참여한 동료 검토 및 상호 검증을 통해 결과의 일관성과 신뢰성을 확보하였다.
- 문제의 기원, 감지 시점, 근본 원인을 기반으로 품질 문제를 분류하고 문서화하였다.
실험 결과
연구 질문
- RQ1SME들이 AI/ML 컴포넌트의 개발, 통합, 유지보수 과정에서 주로 사용하는 소프트웨어 품질 보증(SQA) 전략은 무엇인가?
- RQ2실제 산업 환경에서 AI/ML 컴포넌트의 개발 및 유지보수 과정에서 나타나는 특정 품질 문제들은 무엇인가?
- RQ3실제로는 AI/ML 시스템의 품질 문제들이 언제이고 어떻게 감지되는가?
- RQ4AI 엔지니어들이 보고한 바에 따르면, AI/ML 컴포넌트의 낮은 소프트웨어 품질의 근본 원인은 무엇인가?
- RQ5현재의 AI/ML SQA 관행은 기존 소프트웨어 공학 관행과 어떻게 다를지, 그리고 어떤 격차가 존재하는가?
주요 결과
- AI/ML 컴포넌트 개발 과정에서 12개의 구분된 품질 문제를 규명하였으며, 이는 코드 품질, 설정, 모델 훈련 관련 문제를 포함한다.
- 많은 품질 문제들은 AI 엔지니어에게 소프트웨어 공학 관행에 대한 공식적인 훈련이 부족하여 낮은 코딩 기준과 기술 부채를 초래함으로써 발생한다.
- 품질 문제들은 통합 및 유지보수 단계에서 자주 발생하며, 특히 데이터 파이프라인 변화, 모델 버전 변화, 라이브러리 업데이트 등으로 인해 발생한다.
- 품질 문제 감지는 종종 수동 점검이나 오류 보고에 의존하는 반응적이고 비공식적인 방식이며, 체계적인 테스트나 모니터링에 의존하지 않는다.
- 많은 문제들이 ML 라이브러리(예: TensorFlow)의 잘못된 사용과 관련이 있으며, 이는 매개변수 잘못 설정이나 배열 크기 불일치 등을 포함한다.
- 소프트웨어 공학 및 머신러닝 커뮤니티 간의 용어와 기대치의 상당한 괴리가 SQA 과정에서 혼란과 오류를 야기하고 있다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.