디지털 라이브러리[ 검색결과 ]
RESTful 웹 어플리케이션 행위 모델 기반 결함 위치 추정
http://doi.org/10.5626/JOK.2020.47.11.1044
웹 어플리케이션의 규모나 복잡성이 전통적인 소프트웨어보다 커 기존 결함 위치 추정 기법을 적용하기 어렵고, 웹 어플리케이션과 같은 복잡한 시스템 대상의 연구들도 시스템 내 구성 요소들 간 간접적 상호작용과 시스템의 동적 재구성을 고려하지 못한다. 이 문제를 풀기 위해 본 연구는 RESTful 웹 어플리케이션의 실행 기록을 구성 요소들이 수행하는 행위들의 순열로 모델링하고, 그 행위 모델 상에서 결함을 위치 추정하는 기법을 제안한다. 이 기법은 직간접적 상호작용을 모두 반영하는 행위 모델을 사용하고 실행 전에 모델을 미리 구축할 필요가 없어 동적 환경에 적합하다. 기법의 평가를 위해 사례 연구를 수행하여 전체 디버깅 대상 수의 1.8%에 해당하는 순위 내에 모든 결함을 위치 추정했다. 본 연구에서 제안하는 행위 모델 기반 RESTful 웹 어플리케이션 결함 위치 추정 기법이 대규모의 복잡한 웹 어플리케이션의 디버깅 노력을 효과적으로 감소시킬 것으로 기대된다.
커버리지 변화 정보를 활용한 코드 누락 결함에 대한 뮤테이션 기반 결함 위치 식별 기법의 성능 향상
http://doi.org/10.5626/JOK.2020.47.9.863
많은 소프트웨어 결함이 코드 누락 결함(omission fault)의 형태를 가지는 데 반하여, 기존의 뮤테이션 기반 결함 위치 식별(mutation-based fault localization) 기법은 코드 누락 결함에 대해 낮은 정확도를 보여 효용성이 낮은 문제가 있다. 본 논문에서는 뮤테이션 기반 결함 위치 식별 기법인 MUSEUM과 Metallaxis에 뮤테이션에 따른 커버리지 변화와 테스트 결과 또는 출력을 연계하는 요소를 추가함으로써 코드 누락 결함을 대상으로 위치 식별 성능을 향상하는 MUSEUM+과 Metallaxis+ 기법을 제안한다. 10개의 코드 누락 결함과 6개의 일반 결함을 포함하는 총 16개 Defects4J 결함사례를 대상으로 실험한 결과, 제안한 MUSEUM+과 Metallaxis+기법은 총 10개의 코드 누락 결함 중 6개에 대해 효과적으로 정확도를 향상시켰으며, 16개 전반에 있어 정확도 향상을 확인할 수 있었다.
메모리 맵 기반 메모리 영역 분할과 메모리 갱신 정보를 활용한 결함 후보 축소 기법
요즘 자동차 제작비용 중 차량용 전자장치에 사용되는 비용이 30% 이상을 차지하고 있다. 따라서 차량용 전자장치에 사용되는 비용 절약의 필요성이 증가하고 있다. 그런데, 완성차 업체들은 차량용 전장부품을 제작하는 일을 대부분 외주 업체에 맡기기 때문에 전장부품의 테스트 및 디버깅의 복잡도가 증가하고 있다. 이로 인해, 차량용 전장부품의 테스트 시에 발생하는 결함의 위치를 찾아내는데 많은 비용과 시간을 소비하고 있다. 이러한 문제를 해결하기 위해, 본 논문에서는 차량용 전장부품을 대상으로 통합테스팅을 수행하는 검사자가 메모리상의 결함후보를 축소할 수 있는 기법을 제안한다. 본 기법에서는 메모리 맵을 이용하여 메모리를 분할하고, 분할된 메모리 영역에 메모리 갱신 정보를 적용해 각 분할 영역의 결함 의심도를 계산한다. 이렇게 계산된 결함 의심도를 기준으로 분할 영역들의 결함 의심순위를 결정할 수 있다. 제안하는 기법을 이용해 결함 후보 영역을 전체 메모리 크기의 1/6 정도로 축소했다.