디지털 라이브러리[ 검색결과 ]
유사 패치 기반 자동 프로그램 수정 기법
http://doi.org/10.5626/JOK.2025.52.2.152
휴리스틱 기반 자동 프로그램 수정(Automated Program Repair, APR) 기술의 주요 관심사는 탐색 공간의 크기 문제이다. 본 연구에서는 버그를 생성한 수정(Bug Introducing Change)의 유사성을 활용하여 탐색 공간을 줄이고, 적절한 수정 연산자를 제안하는 새로운 접근 방식인 Similar Patch Identifier(SPI)를 제안한다. 이 접근법을 평가하기 위해, 기존의 문맥 기반 APR 도구인 ConFix와 자바 결함 벤치 마크인 Defects4J를 활용했다. 실험을 통해 SPI가 탐색 공간을 각 결함에 적합한 10개의 버그 수정 커밋 후보로 줄였음에도, 기존 APR 도구인 ConFix가 고치지 못했던 4개의 버그에 대한 수정을 만들어내는 유의미한 결과를 확인할 수 있었다.
코드 변경에 대한 검출 기법과 사람의 묘사 차이 분석
http://doi.org/10.5626/JOK.2023.50.2.150
본 연구에서는 코드 변경 검출 기법과 사람이 코드 변경을 묘사하는 방식을 조사하고, 둘을 비교하여 그 차이를 확인하였다. 대표적인 두 가지 코드 변경 검출 기법을 수집된 다량의 코드 변경에 적용한 결과, 두 기법은 같은 코드 변경을 다른 방식으로 묘사하는 경우가 매우 많으며, 3% 미만의 코드 변경에 대해서만 완전히 일치하는 결과물을 내놓는다는 것을 확인하였다. 반면 사람의 경우 제시된 코드 변경을 묘사할 때 약 50%의 의견 일치율을 보였다. 또한 코드 변경을 다른 방식으로 묘사하는 경우의 상당 부분은 실수에 의한 것이고, 이를 감안하였을 때는 71%의 코드 변경에 대해 동일한 방식으로 묘사하는 것을 확인할 수 있었다. 사람과 검출 기법의 비교 결과에서는 검출 기법이 사람이 코드 변경을 묘사한 방식과 일치하는 결과를 내놓는 경우가 변경의 종류 및 변경된 코드의 종류만을 비교할 때 8.20~35.65%에 불과하여 사람과 유사한 결과를 얻기 위해 개선이 필요하다는 것을 알 수 있다.