속성문법과 관점지향 프로그래밍 기법을 이용한 BPEL에 새로운 기능을 추가하는 BPEL 엔진 생성기

BPEL Engine Generator for adding New Functions to BPEL based on Attribute Grammar and Aspect-Oriented Programming

초록

BPEL은 서비스 지향 컴퓨팅 환경에서 조건에 따른 작업의 흐름과 웹 서비스의 호출을 기술할 수 있어 다양한 도메인에서 사용되고 있다. 하지만 특정 도메인에서는 BPEL 문법에 없는 새로운 기능이 요구된다. 일반적으로 기존 언어에 없는 새로운 기능을 추가한 경우에 도메인 특화 언어를 새롭게 정의하고 개발해야 하는데, 이를 위해서는 많은 개발 비용이 소요된다. 따라서 새로운 기능이 추가된 도메인 특화언어를 개발하는 대신에 새로운 기능을 추가하여 사용해야 한다. 그러나 이 방법들은 단일 기능을 추가할 수 있을 뿐이고, 필요에 따라 새로운 기능을 설계하고 추가하기 어렵다. 본 논문에서는 필요에 따라 새로운 기능을 추가하기 위해 XML 스키마를 통해 BPEL의 문법적 기능을 확장할 수 있는 XAS4B 문서를 정의하고, 이 문서를 처리하여 기능이 추가된 BPEL 엔진을 생성하는 BPEL 엔진 생성기를 제안한다. XAS4B 문서는 BPEL에 추가되는 문법을 XML 스키마로 작성하고 추가된 문법의 기능을 JAVA 프로그램으로 작성할 수 있도록 한다. 그리고 추가된 기능을 관점지향 프로그래밍의 JAVA 구현체인 AspectJ를 이용하여 새로운 기능의 처리 모듈을 BPEL 엔진에 추가하는 방법을 보인다. 제안하는 시스템은 AspectJ를 이용하여 BPEL 엔진을 수정하지 않고 새로운 기능을 추가할 수 있으며, 요구되는 새로운 기능에대해 동일한 방법을 사용하여 손쉽게 추가할 수 있으므로, 다양한 분야에서 적은 비용으로 새로운 기능을 제공할 수 있다.

키워드

Aspect-Oriented Programming; Attribute Grammar; B2J; AspectJ; BPEL; Workflow; 관점지향 프로그래밍; 속성문법; B2J; AspectJ; BPEL; 워크플로우
제목
속성문법과 관점지향 프로그래밍 기법을 이용한 BPEL에 새로운 기능을 추가하는 BPEL 엔진 생성기
제목 (타언어)
BPEL Engine Generator for adding New Functions to BPEL based on Attribute Grammar and Aspect-Oriented Programming
저자
곽동규; 김종호; 최재영
DOI
10.3745/KTSDE.2015.4.5.209
발행일
2015-05
저널명
정보처리학회논문지. 소프트웨어 및 데이터 공학
권
4
호
5
페이지
209 ~ 218