Abstract
Aspect-Oriented Software Development is new software development method. It has many advantages related to software performance, maintenance and repair. Also it offers modularization method to a existing programming language for secondary function such as security and fault tolerance. But the present problem is that we have to use new aspect-oriented programming language. Further more when we apply Aspect to legacy system, we have to recompile the source code in order to build software system based on AOSD. In this paper, we propose and design Connector that can be composed with Aspect in legacy system dynamically. To elaborate this work, we use the information of operations about Core and Aspect, and the information of pointcut described with XML. We validate that the proposed Connector has features such as no need of new compiler, no recompilation and no modification of legacy system through case study.
영역지향 소프트웨어 개발 방법론(Aspect-Oriented Software Development)은 소프트웨어의 성능을 향상시키고 유지보수에 많은 이점을 가지는 새로운 소프트웨어 개발 방법론이다. 또한 기존의 프로그래밍 언어가 제공하지 못하는 보안이나 결함 내성과 같은 부가기능에 대해 모듈화하는 방법을 제공하고 있다. 하지만 AOSD기반으로 소프트웨어를 개발하기 위해서는 Aspect를 지원하는 새로운 영역지향 프로그래밍 언어를 사용하거나 레거시 시스템에 Aspect를 적용할 경우에 소스코드의 재 컴파일등과 같은 문제점을 가지고 있다. 이에 본 논문에서는 레거시 시스템에 Aspect를 동적으로 결합할 수 있는 Connector를 제안하고 설계한다. 이를 위하여 Core와 Aspect가 가지는 오퍼레이션에 대한 정보와 XML로 기술된 pointcut정보를 이용한다. 또한 사례연구를 통하여 제안된 Connector를 사용하기 위해 새로운 영역지향 컴파일러가 필요 없고, 레거시 시스템의 수정도 발생하지 않음을 보여 그 유효성을 검증한다.