728x90

 프로세스 마이닝을 공부하다 보면 workflow net이라는 개념을 종종 보게 된다. 실제로 비즈니스 프로세스를 페트리 넷으로 표현할 때, 모델은 주로 workflow net의 형태로 나타난다. 이번 포스팅에서는 이 workflow net이 무엇인지에 대해 알아보도록 하겠다.

Workflow net이란? 

 우선, workflow net은 페트리 넷의 부분집합이다. 즉, 페트리 넷 중에 특정 조건을 만족하는 페트리 넷만이 workflow net인 것이다. 페트리 넷이 무엇인지 모른다면 다음 포스팅을 참고하도록 한다.

2019/06/20 - [Theory/Process Model] - 페트리 넷(Petri Net)이란?

 

페트리 넷(Petri Net)이란?

페트리 넷(Petri Net)은 프로세스 마이닝의 가장 기본이 되는 프로세스 모델이다. 가장 간단한 형태로 프로세스를 나타낼 수 있기 때문에 많은 Process Discovery 알고리즘들이 이벤트 로그로부터 페트리 넷을 도..

process-mining.tistory.com

 Workflow net의 정의는 다음과 같다.

workflow net의 정의

 이를 풀어서 쓰면 다음과 같은 세 가지 조건으로 나타낼 수 있다. 예시와 함께 알아보도록 하자.

예시 페트리 넷

1. source place가 존재한다.

 input transition이 하나도 없는, petri net의 움직임을 시작하는 역할을 하는 place인 source place가 존재한다. 즉, 예시에서 start로 이름붙여진 place와 같은 것이 존재하는 것이다. 

 

2. sink place가 존재한다.

 output transition이 하나도 없는, petri net의 움직임을 종료하는 역할을 하는 place인 sink place가 존재한다. 즉, 예시에서 end로 이름붙여진 place와 같은 것이 존재하는 것이다. 

 

3. short-circuited net이 strongly connected이다.

 short-circuited net이란, 기존에 있던 페트리 넷의 sink place에서 silent transition (tau)을 거쳐 source place로 가는 arc를 추가시킨 페트리 넷을 말한다. 즉, 우리의 예시의 short-circuited net은 다음과 같다.

short-circuited net

 이 short-circuited net이 strongly connected여야 한다. 즉, 어느 노드 pair에 대해서든 한 노드에서 다른 노드로 갈 수 있는 길이 있어야한다. 우리의 예시 페트리 넷의 short-circuited net은 strongly connected이기 때문에 이는 workflow net이라고 할 수 있다. 

Workflow net의 사용 이유

 그렇다면 이러한 workflow net이 business process의 모델링과 특히 관련이 있는 이유는 무엇일까? 그 이유는, 실제 비즈니스 프로세스를 모델링 할 때에는 이 프로세스가 항상 well-defined된 시작과 끝으로 시작되고 끝나기 때문이다. 예를 들어, 고객의 웹 페이지 내 행동을 모델링한다고 하자. 그렇다면 한 고객의 한 번의 방문은 고객이 홈페이지에 접속함으로써 시작될 것이고, 고객이 홈페이지에서 나가면 끝날 것이다. 이렇게 모든 프로세스들은 이러한 시작과 끝 지점 사이의 다양한 액티비티들로 구성되어 있고, 이것이 workflow net의 형태에 부합하는 것이다. 즉, 이벤트 로그의 하나의 케이스가 workflow net에서 하나의 시퀀스를 firing하는 것과 일치한다고 할 수 있다.

 

 이번 포스팅에서는 workflow net이 무엇이고, 이것이 비즈니스 프로세스와 어떻게 연관되어 있는지에 대해 알아보았다. 하지만 모든 workflow net이 올바른 프로세스를 나타내는 것은 아니다. 예를 들어, workflow net 내의 액티비티이지만 이 액티비티가 한 번도 일어나지 않을 수도 있고, 프로세스가 정상적으로 종료되어야 하는데 토큰이 아직 모델 내에 남아 있을 수도 있다. 다음 포스팅에서는 workflow net이 올바른 프로세스를 나타내고 있다고 판단할 수 있는 조건에 대해 알아보겠다. 

References

1. Section 3.2.3. of  Wil van der Aalst. Process Mining: Data Science in Action (Second Edition) : Springer, 2016.

300x250
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기