본문으로 건너뛰기

© 2026 Molayo

arXiv논문2026. 06. 05. 15:45

SmellBench: 코드 리팩터링(Refactoring) 작업에 대한 코드 에이전트의 세밀한 평가를 향하여

요약

코드 에이전트의 리팩터링 능력을 평가하기 위한 새로운 벤치마크인 SmellBench를 제안합니다. 기존의 기능적 정확성 중심 평가에서 벗어나 코드의 가독성과 유지보수성을 측정하는 데 집중합니다.

핵심 포인트

  • 코드 스멜을 주입하여 통제된 리팩터링 사례 생성
  • 7개 저장소, 7가지 스멜 유형, 3가지 난이도 포함
  • 기능적 정확성, 로컬라이제이션, 리팩터링 품질 평가
  • 에이전트의 파일 간 이해도 부족 문제 지적

코드 에이전트(Code Agents)는 최근 몇 년 동안 눈부신 발전을 이루었으며, 광범위한 소프트웨어 엔지니어링(Software Engineering) 작업 전반에 걸쳐 강력한 능력을 보여주고 있습니다. 그러나 이들의 오용은 종종 가독성, 확장성 및 견고성(Robustness)을 해치는 비대하고 무질서한 코드를 생성하곤 합니다. 이러한 위험에도 불구하고, 기존의 벤치마크(Benchmarks)들은 코드 에이전트의 장기적인 유지보수성(Maintainability)보다는 기능적 정확성(Functional Correctness)을 주로 평가합니다. 본 논문에서는 실제 저장소(Repositories)의 깨끗한 코드 스니펫(Code Snippets)에 코드 스멜(Code Smells)을 선제적으로 주입하는 확장 가능한 코드 리팩터링(Refactoring) 벤치마크인 SmellBench를 제안합니다. 이러한 설계는 사람이 작성한 정답(Ground Truth)을 포함하여 통제되고 고품질이며 다양한 리팩터링 사례를 생성할 수 있게 합니다. 구체적으로, 이는 7개의 실제 저장소에 걸쳐 7가지의 대중적인 스멜 유형, 3가지 난이도 수준, 2가지 지시 설정(Instruction Settings)을 아우르는 294개의 사례를 포함합니다. 나아가 우리는 기능적 정확성, 로컬라이제이션 능력(Localization Ability), 그리고 리팩터링 품질 평가를 다루는 3가지 평가 측면을 설계했습니다. 2개의 대중적인 에이전트와 6개의 대규모 언어 모델(LLMs)을 대상으로 한 실험 결과, 가장 우수한 조합인 Qwen Code + Claude Sonnet 4.5가 스멜 제거(Smell Elimination) 점수에서 단 50.34점을 기록했습니다. 추가 분석에 따르면, 이러한 격차는 로컬 코드 스멜에 집중하고 파일 간 이해(Cross-file Understanding)가 부족하여 종합적인 스멜 제거를 방해하는 데서 발생한다는 점이 밝혀졌습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0