초록
동적 조각화 기법은 프로그램을 이해하기 쉬운 조각단위로 분해하여 소프트웨어 개발자나 유지보수자가 프로그램을 쉽게 이해할 수 있도록 지원한다. 본 논문에서는 프로그램을 조각화하는데 걸리는 시간을 단축할 수 있는 동적 조각화 알고리즘을 제안하였다. 모든 문장에 대해 배정연산자를 기준으로 우측에서 사용되는 참조변수집합과 좌측에서 사용되어 변수의 값에 영향을 미치는 변경변수집합을 산출하고, 변수선어부분의 모든 변수에 대해 변수간 관련성(VV)을 작성하였다. 이를 활용하여 제안한 알고리즘을 적용하면 동적조각을 추출할 수 있다. 제안한 알고리즘의 성능을 기존방법과 비교한 결과 기준변수의 개수가 3개 이상인 경우에는 문장의 평균 비교횟수를 35% 감소시킴으로써 동적조각을 추출하는 과정에 소요되는 시간을 단축시킬 수 있었다.
Dynamic slicing method decomposes a program into slices and supports to be understood programs easily by software developer or maintainer. In this paper, we propose dynamic slicing algorithm to reduce time to decompose a program. We produce reference-variable set used in right and modify-variable set used in left on the basis of the assignment operator of all sentences and extract Inter-Variable Relationship(VV) for all variables of variable declaration. Proposed algorithm extracts dynamic slices by using them and execution trace of program. In conclusion, proposed algorithm improved the performance by reducing the time to extract dynamic slices by decreasing average comparison count of sentence when the number of criterion variables is three or more.