File Download

There are no files associated with this item.

  • Find it @ UNIST can give you direct access to the published full text of this article. (UNISTARs only)
Related Researcher

김미정

Kim, Mijung
Read More

Views & Downloads

Detailed Information

Cited time in webofscience Cited time in scopus
Metadata Downloads

소프트웨어 명세 제작을 위한 LLM

Alternative Title
Large Language Models for Generating Software Specifications
Author(s)
Kim, Mijung
Issued Date
2024-08
URI
https://scholarworks.unist.ac.kr/handle/201301/83889
Citation
정보과학회지, v.42, no.8, pp.16 - 20
Abstract
정확하고 포괄적인 소프트웨어 명세는 소프트웨어 시스템의 정확성, 신뢰성, 품질을 보장하는 데 필수적이다. 일반적인 소프트웨어 명세는 대상 함수의 입력 파라미터 제약 조건과 예상 동작 또는 출력 값을 설명하는 사전 조건 (pre-condition) 및 사후 조건 (post- condition)을 포함한다. 이러한 명세는 효과적인 테스트 케이스와 테스트 오라클 (oracle) 을 생성하고, 비정상 동작 식별을 위해 자주 요구된다 [1-4]. 이러한 방법론은 소프트웨어 개발 과정에서 발생할 수 있는 오류를 사전에 방지하고, 소프트웨어의 전체적인 품질을 향상시키는 데 기여한다.소프트웨어 공학 학계에서는 소프트웨어 텍스트(예: 문서나 주석)에서 명세를 자동으로 추출하는 많은 접근 방식을 제안해왔다. 이러한 접근 방식에는 규칙 기반 방법[1, 5-6], 기계 학습(ML) 기반 방법[7-8], 검색 기반 방법[9] 등이 포함된다. 예를 들어, Jdoctor [5]는 패턴, 어휘, 의미 매칭을 활용하여 코드 주석을 기계가 읽을 수 있는 사전/사후 조건 명세로 변환하여 테스트 생성을 자동화한다. 이를 통해 잘못된 경고를 줄이고 더 많은 결함을 발견할 수 있었다. 그러나 대부분의 기존 작업은 특정 도메인에 특화되어 있으며, 휴리스틱(heuristics) [5,6]이나 대량의 수작업으로 주석화된 데이터(annotated data) [1,9] 에 의존한다. 이러한 의존성은 명세 자동 추출의 접근 방식을 다른 도메인에 일반화하는 데 어려움을 초래한다.대규모 언어 모델(Large Language Model, LLM)이 등장하면서, 방대한 양의 문서와 소스 코드를 사전 학습하여 코드 생성, 프로그램 수리, 추론 등 다양한 소프트웨어 공학 작업에 적용되고 있다. 이러한 모델들은 전통적인 접근 방식과 비교할 때 꽤 경쟁력 있는 성능을 보여주고 있다. 소프트웨어 명세 추출이 주로 소프트웨어 텍스트(예: 주석이나 문서)를 분석하고 추출하며, 자연어를 명세로 변환하는 과정을 포함하기 때문에, 다음 질문이 자연스럽게 제기된다: LLM이 문서로부터 소프트웨어 명세를 생성하는 데 효과적인가?위 두 가지 질문에 답하기 위해 본 원고에서는 LLM의 소프트웨어 명세 제작 능력을 규칙 기반 방법등의 기존 접근 방식과 비교하여 평가하는 연구를 소개한다. 즉, 소프트웨어 명세 추출에서 레이블이 지정된 데이터의 부족으로 인해, 퓨샷학습 (Few Shot Learning) 기법 [10] 을 사용하여 제한된 라벨링 데이터 수로 효과를 극대화한다.
Publisher
한국정보과학회
ISSN
1229-6821

qrcode

Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.