COBOL 코드 변형에 대한 LLM 시스템 견고성 평가 프레임워크
📝 원문 정보
- Title: Evaluating perturbation robustness of generative systems that use COBOL code inputs
- ArXiv ID: 2511.18488
- 발행일: 2025-11-23
- 저자: Samuel Ackerman, Wesam Ibraheem, Orna Raz, Marcel Zalmanovici
📝 초록 (Abstract)
대형 언어 모델(LLM)을 구성 요소로 사용하는 시스템은 의미를 바꾸지 않는 사소한 입력 변동에도 민감하게 반응(즉, 비견고)하는 것으로 알려져 있으며, 이러한 민감성은 시스템 활용도를 저하시킬 수 있다. 본 연구에서는 COBOL 코드를 입력으로 사용하는 시스템의 견고성을 평가하기 위한 프레임워크를 제시한다. 적용 사례는 COBOL과 Java 간의 번역이지만, 코드 생성이나 설명과 같은 다른 작업에도 확장 가능하다. COBOL은 많은 기업 핵심 애플리케이션에 사용되지만, 해당 코드는 일반적으로 독점적인 레거시 시스템에 포함되어 있어 LLM 훈련에 활용되기 어렵다. 우리는 COBOL 절(paragraph) 및 전체 프로그램 수준의 변형 방법을 담은 라이브러리를 개발하고, 특정 과제에 대한 벤치마크 데이터셋을 변형 확장 버전으로 구축하였다. 시스템의 견고성은 출력물에 대해 개별 및 집계 메트릭 값을 측정함으로써 평가한다. 마지막으로, 출력물 디버깅과 민감성 원인 파악을 돕는 동적 테이블·차트 시각화 대시보드를 제공한다. 이러한 도구는 전처리 단계에서 다루어야 할 변형을 식별하는 등 시스템 개선에도 활용될 수 있다.💡 논문 핵심 해설 (Deep Analysis)

첫 번째 기여는 “COBOL 파라그래프 및 전체 프로그램 수준의 변형 라이브러리”이다. 여기에는 변수명 교체, 주석 추가·삭제, 공백·줄바꿈 변화, 데이터 선언 순서 변경, 불필요한 레코드 삽입 등 실제 유지보수 과정에서 발생할 수 있는 다양한 변형이 포함된다. 이러한 변형은 의미를 보존하면서도 텍스트 형태를 크게 바꾸어 LLM이 입력을 다르게 해석하도록 만든다.
두 번째 기여는 “변형 확장 벤치마크 데이터셋”이다. 기존의 COBOL‑Java 번역 데이터셋에 변형 라이브러리를 적용해 원본과 변형 버전을 1:1 매핑한 다중 버전 데이터를 생성한다. 이를 통해 동일한 의미를 가진 입력이 여러 형태로 존재할 때, LLM이 일관된 번역 결과를 내는지를 정량적으로 측정할 수 있다.
세 번째 기여는 “메트릭 기반 견고성 평가”이다. 출력물에 대해 정확도(예: BLEU, CodeBLEU), 실행 가능성(컴파일 성공 여부), 기능 일치(테스트 케이스 통과율) 등 개별 메트릭을 산출하고, 변형 전후의 차이를 집계한다. 메트릭 변화량이 클수록 시스템이 입력 변형에 취약하다는 의미이다.
마지막으로, 저자들은 “동적 시각화 대시보드”를 구현하였다. 대시보드는 변형 종류별 메트릭 변동을 테이블·히트맵·라인 차트 등으로 실시간 표시하고, 문제 발생 원인을 빠르게 추적할 수 있게 한다. 예를 들어, 특정 주석 추가가 번역 정확도에 큰 영향을 미친다면, 전처리 단계에서 주석을 제거하거나 표준화하는 전략을 도입할 수 있다.
이 프레임워크는 COBOL에 국한되지 않고, 다른 레거시 언어나 도메인‑특화 코드에도 적용 가능하다. 다만 현재 연구는 번역 작업에 초점을 맞추었으며, 코드 생성·디버깅·설명 등 다른 태스크에 대한 확장성 검증은 향후 과제로 남는다. 또한 변형 라이브러리가 인간 전문가가 설계한 규칙 기반이므로, 실제 운영 환경에서 발생하는 모든 변형을 포괄하지 못할 가능성이 있다. 이러한 한계를 보완하기 위해서는 실사용 로그 기반 자동 변형 추출이나, 변형에 대한 메타학습 기법을 도입해 LLM 자체가 변형에 강인하도록 훈련하는 방안이 필요하다. 전반적으로 본 연구는 레거시 시스템을 AI와 연결하려는 실무자에게 실질적인 평가 도구와 개선 로드맵을 제공한다는 점에서 큰 의의를 가진다.
📄 논문 본문 발췌 (Excerpt)
📸 추가 이미지 갤러리
