Developers spend a lot of time looking for files that need to be modified when performing software evolution task. The code change recommendation system is a system that recommends files that need to modify to developers during software evolution task. This allows the developer to reduce the navigation time that occurs during the software evolution process. In this paper, we propose a model based on the recurrent neural network based on the sequence of behaviors generated by the developer in the process of software evolution, and developed a change recommendation system based on this method. A recurrent neural network based model that uses sliding window based context as input data generated by maintaining order information provides more accurate change recommendation than existing association rule mining model using context that does not maintain order information. Our proposed method showed that the average recommendation precision for the four projects used in the experiment is improved by about 20% compared with the previous method.
개발자는 소프트웨어 진화 작업을 수행할 때 수정해야 할 필요가 있는 파일을 찾는데 많은 시간을 소비한다. 코드 변경 추천 시스템은 소프트웨어 진화 작업 중 개발자에게 수정이 필요한 파일을 추천하는 시스템이다. 이를 통해 개발자는 소프트웨어 진화 과정에서 발생하는 파일 탐색 시간을 줄일 수 있다. 본 연구는 개발자가 소프트웨어 진화 과정에서 생성하는 동작의 순서 정보를 이용하여 순환 인공 신경망 기반의 모델을 제안하였으며 이 방법을 기반으로 한 변경 추천 시스템을 개발하였다. 순서 정보를 유지하여 생성된 슬라이딩 윈도우 기반의 문맥(Context)을 입력 데이터로 사용하는 순환 인공 신경망 기반의 모델이 순서 정보를 유지하지 않는 문맥을 사용한 기존의 연관 규칙 마이닝 모델보다 더 정확한 변경 추천을 제공하는 것을 확인할 수 있었다. 실험에 사용한 4개의 프로젝트에 대해 평균 추천 정밀도를 기존 연구에 비해 약 20% 향상시키는 것을 보여주었다.