혁신적인 AI 기반 소프트웨어 개발: LLM을 활용한 비기능적 요구사항 자동 생성
본 연구는 대규모 언어 모델(LLM)을 활용하여 소프트웨어 개발 초기 단계에서 중요하지만 종종 간과되는 비기능적 요구사항(NFRs)을 자동으로 생성하는 프레임워크를 제시합니다. 다양한 LLM의 성능 비교 분석 결과, Gemini-1.5-pro와 Llama-3.3-70B가 우수한 성능을 보였으며, 전문가 평가와의 높은 일치율을 통해 LLM 기반 NFR 자동 생성의 실현 가능성을 확인했습니다.

소프트웨어 개발에서 비기능적 요구사항(NFRs)을 간과하면 심각한 문제가 발생할 수 있습니다. 하지만 NFRs는 종종 간과되거나 파악하기 어려워 소프트웨어 품질에 악영향을 미칩니다. Jomar Thomas Almonte, Santhosh Anitha Boominathan, Nathalia Nascimento 등 연구진은 이러한 문제를 해결하기 위해 대규모 언어 모델(LLM)을 활용한 획기적인 프레임워크를 개발했습니다.
이 프레임워크는 기능적 요구사항(FRs)으로부터 품질 중심의 NFRs를 도출하는 데 초점을 맞춥니다. Deno 기반 파이프라인 내에서 맞춤형 프롬프팅 기법을 사용하여 각 기능적 요구사항에 대한 관련 품질 속성을 식별하고 해당 NFRs를 생성하여 체계적인 통합을 지원합니다. 핵심은 생성된 요구사항의 품질과 적합성 평가입니다. 과연 LLM이 고품질의 NFR 제안을 생성할 수 있을까요?
연구진은 3,964개의 FRs 중 대표적인 34개의 FRs를 선정하여 ISO/IEC 25010:2023 표준을 기반으로 LLM이 적용 가능한 속성을 추론하여 1,593개의 NFRs를 생성했습니다. 평가는 NFR의 유효성, 품질 속성의 적용 가능성, 분류 정확도의 세 가지 차원에서 이루어졌습니다. 평균 13년의 경력을 가진 10명의 소프트웨어 품질 평가 전문가가 하위 집합에 대한 관련성과 품질을 평가했습니다.
평가 결과, LLM이 생성한 NFRs는 전문가 평가와 높은 일치율을 보였습니다. 1~5점 척도에서 중간값 유효성 및 적용 가능성 점수는 각각 5.0(평균: 4.63 및 4.59)이었습니다. 분류 작업에서 LLM이 할당한 속성의 80.4%가 전문가의 선택과 일치했으며, 8.3%는 근접한 결과였고 11.3%는 불일치했습니다. 8가지 LLM에 대한 비교 분석을 통해 gemini-1.5-pro가 가장 높은 속성 정확도를 보였고, llama-3.3-70B는 더 높은 유효성 및 적용 가능성 점수를 달성했습니다.
이러한 결과는 LLM을 사용한 자동화된 NFR 생성의 실현 가능성을 보여주며, AI 지원 요구사항 엔지니어링에 대한 추가적인 탐구의 기반을 마련합니다. 앞으로 AI가 소프트웨어 개발 과정을 어떻게 더욱 효율적으로 만들어갈지 기대됩니다! 🎉
Reference
[arxiv] Automated Non-Functional Requirements Generation in Software Engineering with Large Language Models: A Comparative Study
Published: (Updated: )
Author: Jomar Thomas Almonte, Santhosh Anitha Boominathan, Nathalia Nascimento
http://arxiv.org/abs/2503.15248v1