Daily Arxiv

전 세계에서 발간되는 인공지능 관련 논문을 정리하는 페이지 입니다.
본 페이지는 Google Gemini를 활용해 요약 정리하며, 비영리로 운영 됩니다.
논문에 대한 저작권은 저자 및 해당 기관에 있으며, 공유 시 출처만 명기하면 됩니다.

Generating Software Architecture Description from Source Code using Reverse Engineering and Large Language Model

Created by
  • Haebom
Category
Empty

저자

Ahmad Hatahet, Christoph Knieke, Andreas Rausch

개요

소프트웨어 아키텍처 기술서(SAD)는 현대 소프트웨어 시스템의 복잡성을 관리하는 데 필수적이다. 본 논문은 리버스 엔지니어링 기술과 대규모 언어 모델(LLM)을 통합하여 소스 코드로부터 SAD를 반자동으로 생성하는 방법을 제안한다. 이를 통해 정적 및 동작 아키텍처 뷰를 복구하고, 구성 요소 다이어그램을 추출하며, 프롬프트 엔지니어링을 통해 아키텍처적으로 중요한 요소를 필터링하고, 소스 코드 로직을 기반으로 상태 머신 다이어그램을 생성한다. C++ 예시를 통해 LLM이 구성 요소 다이어그램을 추상화하고 복잡한 소프트웨어 동작을 정확하게 표현할 수 있음을 보여준다.

시사점, 한계점

반자동 SAD 생성은 수동 작업의 필요성을 줄이고 시스템 이해도와 장기적인 유지 관리성을 향상시킨다.
LLM은 구성 요소 다이어그램 추상화에 효과적이며 전문가의 개입 의존도를 낮춘다.
Few-shot prompting을 통해 도메인 지식을 활용하여 복잡한 소프트웨어 동작을 정확하게 표현할 수 있다.
C++ 예시를 사용하여 방법론을 시연했지만, 다른 프로그래밍 언어에 대한 일반화 가능성은 추가 연구가 필요하다.
생성된 SAD의 정확성과 완전성은 LLM의 성능과 입력 데이터의 품질에 따라 달라질 수 있다.
자동화된 SAD 생성 과정의 효율성과 확장성을 평가하기 위한 추가 연구가 필요하다.
👍