Abstract
The primary tasks of a workflow management system specify workflow models with respect to resource, control-flow, data-flow, functional, and operational perspectives, and to enact their workcases (workflow instances). In terms of enacting workflow models, the essential criterion grading the quality of the system is "how much is the system able to guarantee the correctness of workflow models' enactment?". Particularly, the workflow determinacy problem, which may be caused by the interference of the control-flow and the data-flow specifications, is the most challenging issue in guaranteeing the correctness of the system. We are able to solve the problem by either of the following two approaches-analysis of workflow model and verification of workflow enactment. In the paper, we propose a technique that guarantee the system's correctness through verifying workflow enactment. In other words, the technique is able to detect the conflicts of control-flow and data-flow enactments existing on a workflow model, which causes the system to be non-determinant in enacting workflow models. Finally, by applying the technique to the e-Chautauque workflow management system developed by the authors' research group, we prove that the technique is a feasible solution for the workflow determinacy problem.
워크플로우 관리 시스템은 크게 다섯 가지 측면, 즉 자원(조직)측면, 제어흐름측면, 데이터흐름측면, 이력관리측면, 운용(응용프로그램)측면의 핵심규격을 정의하고 분석하는 모델링모듈과 그 규격에 따른 워크케이스를 실행시키는 엔진모듈로 구성된다. 또한, 워크플로우 관리 시스템의 품격을 결정짓는 핵심기준은 "제정된 규격에 따른 워크플로우 실행의 정확성을 얼마나 보장할 수 있는가?"이다. 특히, 워크플로우의 제어흐름측면규격과 데이터흐름측면규격의 상호간섭으로 발생할 수 있는 "워크플로우 결정성 문제"는 워크플로우 실행의 정확성 보장 여부를 결정짓는 핵심문제이며, 이에 대한 해결방안은 모델링모듈 차원의 워크플로우 분석기법과 엔진모듈 차원의 워크플로우 실행 검증기법으로 나뉘어 구현될 수 있다. 본 논문에서는 워크플로우 결정성 문제에 대한 해결방안으로 엔진모듈 차원의 워크플로우 실행 검증기법, 즉 워크플로우 엔진모듈에 의해 실행되는 액티비티들간의 상호간섭 조건(제어흐름과 데이터흐름)을 검출할 수 있는 메커니즘을 제안한다. 또한, 제안된 메커니즘을 저자 소속의 연구실에서 개발한 워크플로우 관리 시스템에 실제 적용한 결과를 제시함으로서 워크플로우 결정성 문제에 대한 실행 가능한 해결방안임을 증명한다.