TraceDev: 요구사항-코드 개발을 위한 추적성 기반 멀티 에이전트 프레임워크
요약
TraceDev는 자연어 요구사항을 저장소 수준의 코드로 변환하기 위한 멀티 에이전트 프레임워크입니다. 이기종 추적성 그래프를 활용해 요구사항, 설계, 코드 간의 일관성을 유지하며 복잡한 소프트웨어 개발 시나리오를 지원합니다.
핵심 포인트
- 5개의 특화된 에이전트(정교화, 설계, 개발, 테스트, 검증)로 구성된 프레임워크
- 이기종 추적성 그래프를 통한 산출물 간의 정밀한 정렬 및 검증
- ETOUR 및 SMOS 데이터셋에서 기존 방식 대비 압도적인 성공률 달성
- 구조화된 컨텍스트를 통한 효율적인 메모리 관리 및 신뢰성 확보
현대 소프트웨어 개발에서 대규모 언어 모델 (LLMs)의 급격한 발전은 자연어 요구사항 (NLRs)을 실행 가능한 저장소 수준 (repository-level) 코드로 엔드 투 엔드 (end-to-end) 변환하는 것을 점점 더 가능하게 만들고 있습니다. 그러나 기존 방식들은 일반적으로 단순화된 지침 (예: 단일 문장 설명)에 의존하며, 복잡한 소프트웨어 개발 시나리오를 반영하지 못합니다. 더욱이, 명시적인 요구사항 추적성 (requirement traceability) 메커니즘이 부족하여 생성된 코드를 원래의 요구사항과 정밀하게 정렬하고 검증하기 어렵습니다. 이러한 한계를 해결하기 위해, 우리는 다수의 기능적 포인트와 복잡한 의미론을 포함하는 유스케이스 (use cases)에 기반한 자동화된 소프트웨어 개발을 위한 멀티 에이전트 프레임워크인 TraceDev를 제안합니다. TraceDev는 요구사항 정교화 에이전트 (Requirement Refiner), 설계자 (Designer), 개발자 (Developer), 테스터 (Tester), 검증자 (Validator)를 포함하여 역할별로 특화된 5개의 에이전트를 채택합니다. 특히, 검증자 에이전트 (Validator Agent)는 이전 4개의 에이전트와 상호작용하기 위해 요구사항, 설계 모델, 코드 산출물 (artifacts)을 연결하는 이기종 추적성 그래프 (heterogeneous traceability graph)를 구축하고 유지 관리합니다. 이 추적성 그래프는 다양한 산출물 간의 일관성을 유지하며, 효율적인 메모리 관리를 위한 구조화된 컨텍스트 (context) 역할을 수행하여 신뢰할 수 있는 저장소 수준의 코드 생성을 지원합니다. 우리는 두 개의 널리 사용되는 데이터셋 (125개의 유스케이스 포함)에서 두 개의 최첨단 (state-of-the-art) 방식과 비교하여 TraceDev를 평가했습니다. ETOUR 데이터셋에서 TraceDev는 53.63%의 성공률을 달성하여 베이스라인 방식보다 최대 186.63% 높은 성능을 보였습니다. SMOS 데이터셋에서도 유사한 경향이 관찰되었으며, TraceDev는 56.82%의 성공률을 기록하여 베이스라인 방식을 최대 340.80% 상회했습니다. 이러한 결과는 요구사항으로부터 저장소 수준의 코드를 생성하는 데 있어 TraceDev의 효과를 입증합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기