Skip to main content
QUICK REVIEW

[논문 리뷰] Connecting Software Metrics across Versions to Predict Defects

Yibin Liu, Yanhui Li|arXiv (Cornell University)|2017. 12. 28.
Software Engineering Research참고 문헌 57인용 수 7
한 줄 요약

이 논문은 소프트웨어 모듈의 연속적인 버전 간 시간적 변화를 포착하는 역사적 버전 시퀀스 메트릭(HVSM)을 사용한 새로운 결함 예측 접근법을 제안한다. HVSM 시퀀스를 모델링하기 위해 순환 신경망(RNN)을 활용함으로써, 9개의 오픈소스 프로젝트에서 기존 기준 모델 대비 유의미하게 뛰어난 노력 인식 순위 성능을 달성한다.

ABSTRACT

Accurate software defect prediction could help software practitioners allocate test resources to defect-prone modules effectively and efficiently. In the last decades, much effort has been devoted to build accurate defect prediction models, including developing quality defect predictors and modeling techniques. However, current widely used defect predictors such as code metrics and process metrics could not well describe how software modules change over the project evolution, which we believe is important for defect prediction. In order to deal with this problem, in this paper, we propose to use the Historical Version Sequence of Metrics (HVSM) in continuous software versions as defect predictors. Furthermore, we leverage Recurrent Neural Network (RNN), a popular modeling technique, to take HVSM as the input to build software prediction models. The experimental results show that, in most cases, the proposed HVSM-based RNN model has a significantly better effort-aware ranking effectiveness than the commonly used baseline models.

연구 동기 및 목표

  • 기존 결함 예측기의 한계—코드 메트릭과 프로세스 메트릭이 소프트웨어 프로젝트의 버전 간 모듈의 시간적 진화를 포착하지 못함—를 해결하기 위해.
  • 파일의 다수의 연속적인 버전에 걸쳐 정적 및 변화 메트릭을 통합하는 새로운 결함 예측기인 역사적 버전 시퀀스 메트릭(HVSM)을 제안하기 위해.
  • 소프트웨어 진화의 순차적 성격을 순환 신경망(RNN)을 통해 모델링하여 결함 예측 성능을 향상시키기 위해.
  • 비용 효율성과 순위 효과성에 중점을 두어 내부 프로젝트 결함 예측(WPDP) 시나리오에서 제안된 HVSM-RNN 모델을 평가하기 위해.
  • HVSM-RNN 모델이 7개의 널리 사용되는 기준 분류기 대비 노력 인식 결함 예측에서 통계적으로 유의미하게 뛰어난 성능을 보임을 입증하기 위해.

제안 방법

  • 각 파일의 연속적인 소프트웨어 버전 간 코드 메트릭과 프로세스 메트릭을 수집하여 역사적 버전 시퀀스 메트릭(HVSM)을 구성한다.
  • 코드 메트릭(예: CK 및 McCabe 기능)과 프로세스 메트릭(예: 변경 빈도, 소유자)을 모두 사용하여 정적 및 동적 특성을 시간에 따라 표현하는 HVSM을 추출한다.
  • RNN을 사용해 HVSM의 순차적 입력을 모델링함으로써, 장수명 파일에서 흔히 나타나는 가변 길이 시퀀스를 처리할 수 있도록 한다.
  • 파일 수준의 결함 레이블을 사용해 RNN 모델을 종단 간(end-to-end)으로 학습시켜, 이전 메트릭 추세를 바탕으로 결함 유발 가능성 예측한다.
  • AUC 및 ACC(20% 노력 기준)와 같은 표준 평가 지표를 사용해 노력 인식 시나리오에서의 순위 효과성을 평가한다.
  • 성능 차이의 통계적 유의성을 검증하기 위해 비모수적 통계 검정(Wilcoxon 부호 순위 검정, Cliff’s delta δ, Scott-Knott 검정)을 적용한다.

실험 결과

연구 질문

  • RQ1여러 소프트웨어 버전에 걸친 역사적 메트릭 시퀀스의 통합은 정적 또는 이원적 변화 메트릭에 비해 결함 예측 성능 향상에 기여하는가?
  • RQ2RNN을 사용해 소프트웨어 모듈의 시간적 진화를 모델링하면, 결함 예측에서 더 나은 노력 인식 순위 효과성 달성할 수 있는가?
  • RQ3내부 프로젝트 결함 예측에서 HVSM-RNN 모델은 AUC와 ACC 측면에서 7개의 확립된 기준 분류기(예: 나이브 베이즈, 랜덤 포레스트, 스펙트럴 클러스터링)와 비교해 어떻게 성능을 내는가?
  • RQ4여러 오픈소스 프로젝트에서 비모수적 검정을 통해 평가했을 때, HVSM-RNN 모델의 성능 향상은 통계적으로 유의미한가?
  • RQ5HVSM 기반 특징은 전통적인 코드 메트릭이나 프로세스 메트릭만으로는 포착하지 못하는 진화하는 결함 유발 패턴을 효과적으로 포착할 수 있는가?

주요 결과

  • HVSM-RNN 모델은 모든 9개 프로젝트에서 평균 AUC가 가장 높아, 결함이 있는 파일과 정상 파일을 구분하는 데 뛰어난 성능을 보였다.
  • 노력 인식 평가(20% 노력 기준 ACC)에서 Scott-Knott 검정 결과 RNN 모델이 기준 모델들보다 통계적으로 유의미하게 뛰어난 순위를 기록했다.
  • Wilcoxon 부호 순위 검정과 Cliff’s delta δ를 사용한 승리/무승부/패배 분석을 통해 HVSM-RNN 모델이 대부분의 기준 분류기보다 순위 효과성 측면에서 유의미하게 뛰어난 성능을 보였다.
  • 이러한 방법은 정적 또는 이원적 메트릭이 표현하지 못하는 파일의 장기적 진화 추세를 포착하는 데 뚜렷한 이점이 있었다.
  • RNN 모델은 가변 길이의 HVSM 입력을 효과적으로 처리하여, 기존 분류기들이 고정 길이 입력을 요구하는 주요 한계를 극복했다.
  • 결과적으로, RNN 프레임워크 내에서 코드 메트릭을 사용해 HVSM을 구성하는 것이 프로세스 메트릭에만 의존하는 것보다 더 뛰어난 성능을 낳는다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.