1 |
1
소프트웨어 내 결함 위치 추정(fault localization)을 위한 학습 장치에 있어서,소스 코드에 관한 테스트 케이스로 상기 소스 코드를 실행하여 상기 소스 코드에 관한 스펙트럼 데이터를 생성하는 스펙트럼 데이터 처리부;상기 소스 코드 및 상기 소스 코드에 관한 버전 히스토리에 기초하여 상기 소스 코드에 관한 소스 코드 메트릭을 생성하는 소스 코드 메트릭 처리부; 및상기 스펙트럼 데이터, 상기 소스 코드 메트릭 및 상기 소스 코드에 관한 알려진 결함에 기초하여 학습 데이터를 생성하고, 상기 학습 데이터에 기초하여 결함을 포함할 가능성이 높은 순서로 상기 소스 코드의 프로그램 요소들에 순위를 매기도록 랭킹 모델(ranking model)을 학습시키는 학습 처리부를 포함하는 학습 장치
|
2 |
2
제1항에 있어서,상기 스펙트럼 데이터로부터 계산된 결함 의심도 데이터는상기 소스 코드에서 상기 테스트 케이스가 지나간 테스트 커버리지 및 상기 테스트 케이스의 성공/실패 여부에 기초하여 결정된 변수들을 포함하는,학습 장치
|
3 |
3
제2항에 있어서,상기 스펙트럼 데이터 처리부는상기 변수들을 미리 정해진 SBFL(Spectrum Based Fault Localization) 수식들에 대입하여 의심도 점수(suspiciousness score)를 결정하고,상기 학습 처리부는상기 의심도 점수 및 상기 소스 코드 메트릭으로부터 특징을 추출하여 상기 학습 데이터를 생성하고, 상기 학습 데이터에 대한 상기 랭킹 모델의 출력을 상기 알려진 결함에 대응하는 라벨과 비교하여 상기 랭킹 모델을 학습시키는,학습 장치
|
4 |
4
제3항에 있어서,상기 프로그램 요소들은 메소드(method) 및 스테이트먼트(statement)를 포함하고,상기 의심도 점수는 스테이트먼트 레벨의 점수들에 기초하여 메소드 레벨로 집계되는,학습 장치
|
5 |
5
제1항에 있어서,상기 소스 코드 메트릭은상기 소스 코드의 각 프로그램 요소가 데이터베이스에 얼마나 오랫동안 존재했는지를 나타내는 수명 메트릭(age metric), 상기 소스 코드의 각 프로그램 요소가 얼마나 자주 수정되었는지를 나타내는 변화도 메트릭(churn metric) 및 상기 소스 코드가 복잡 정도를 나타내는 복잡도 메트릭(complexity metric)을 포함하는,학습 장치
|
6 |
6
제5항에 있어서,상기 수명 메트릭은 기본 연령 메트릭, 콜 그래프 전파(call graph propagated, CGP) 최소 연령 메트릭, CGP 최대 연령 메트릭 및 CGP 평균 연령 메트릭을 포함하고,상기 변화도 메트릭은 기본 변화도 메트릭, CGP 최소 연령 메트릭, CGP 최대 연령 메트릭 및 CGP 평균 연령 메트릭을 포함하는,학습 장치
|
7 |
7
제1항에 있어서,상기 학습 처리부는유전 프로그래밍(Genetic Programming) 및 서포트 벡터 머신(Support Vector Machine) 중 하나를 이용하여 상기 랭킹 모델을 학습시키는,학습 장치
|
8 |
8
소프트웨어 내 결함 위치 추정(fault localization)을 위한 결함 위치 추정 장치에 있어서,소스 코드에 관한 테스트 케이스로 상기 소스 코드를 실행하여 상기 소스 코드에 관한 스펙트럼 데이터를 생성하는 스펙트럼 데이터 처리부;상기 소스 코드 및 상기 소스 코드에 관한 버전 히스토리에 기초하여 상기 소스 코드에 관한 소스 코드 메트릭을 생성하는 소스 코드 메트릭 처리부; 및상기 스펙트럼 데이터 및 상기 소스 코드 메트릭에 기초하여 결함을 포함할 가능성이 높은 순서로 상기 소스 코드의 프로그램 요소들에 순위를 매기는 랭킹 모델(ranking model)을 포함하는 결함 위치 추정 장치
|
9 |
9
제8항에 있어서,상기 스펙트럼 데이터로부터 계산된 결함 의심도 데이터는상기 소스 코드에서 상기 테스트 케이스가 지나간 테스트 커버리지 및 상기 테스트 케이스의 성공/실패 여부에 기초하여 결정된 변수들을 포함하는,결함 위치 추정 장치
|
10 |
10
제8항에 있어서,상기 소스 코드 메트릭은상기 소스 코드의 각 프로그램 요소가 데이터베이스에 얼마나 오랫동안 존재했는지를 나타내는 수명 메트릭(age metric), 상기 소스 코드의 각 프로그램 요소가 얼마나 자주 수정되었는지를 나타내는 변화도 메트릭(churn metric) 및 상기 소스 코드가 복잡 정도를 나타내는 복잡도 메트릭(complexity metric)을 포함하는,결함 위치 추정 장치
|