Cúram 프로세스는 방향 지정, 연결, 비순환이라는 특성을 가진 그래프를 구성해야 합니다. 복잡하게 들릴 수 있겠지만 이러한 용어는 매우 단순한 몇 가지 그래프 특성에 사용되는 기술적 용어에 불과합니다.
- "방향이 지정된" 그래프는 각 가장자리가 한쪽 방향으로만 진행되는 그래프(대개 digraph라고 함)입니다. 워크플로우 관점에서는 활동 B에서 활동 A로 되돌리는 데 활동 A에서 활동 B로의 상태 전이를 사용할 수 없습니다. 그래프와 digraph에 대해 '비순환' 특성(아래에 나와 있음)이 서로 다르게 정의되어 있기 때문에 여기서만 언급합니다.
- "연결된" 그래프는 각 꼭지점에 도달할 수 있는 그래프입니다. 워크플로우 관점에서 프로세스의 각 활동은 시작 활동에서 종료 활동까지 하나 이상의 경로에 도달할 수 있어야 합니다.
이 경우 워크플로우가 구조를 가질 수 없게 되어 하나 이상의 활동이 실행되지 않을 수 있습니다.
- 마지막으로 "비순환" digraph는 방향이 지정된 주기가 없는 그래프입니다. 워크플로우 관점에서 임시 루프(루프 시작 및 루프 종료 활동 대신 상태 전이를 통해 생성된 루프)가 없음을 의미합니다.
임시 루프는 편리하긴 하지만 프로그래밍 언어의 GOTO 명령문처럼 프로세스가 읽고 이해하기가 매우 어려울 수 있습니다. 명시적 루프 구성을 사용하면 더욱 명확하면서도 이해하기 쉬운 프로세스 정의가 생성됩니다.
또한 엔진이 루프 발생 위치를 파악할 수 있어 런타임에 루프가 반복되는 횟수를 추적할 수도 있습니다.