라우팅 개념
작업이 한 단계에서 다음 단계로 진행되는 방식을 지정하려면 워크플로우 정의에서 단계 사이의 라우트를 정의하십시오.
맵의 마지막 단계를 제외한 모든 단계에는 단계에서 시작되는 라우트가 하나 이상 있습니다.
워크플로우 라우트 | 설명 |
---|---|
항상 참 |
가장 단순한 워크플로우만이 한 단계에서 다음 단계로 이동하는
선형 방식으로 진행합니다. (왼쪽) 그림에서 각 라우트는 아무 조건이 없으므로
항상 참입니다. 팁: 한 단계의 유일한 라우트에 조건을
정의하는 경우 단계 완료 시 조건이 참이 아니면 워크프로우 또는 워크플로우의
특정 브랜치가 중지합니다.
|
라우트 조건 |
대다수 워크플로우에는 참가자에 의한 응답의 결과 또는 워크플로우에 있는
하나 이상의 필드 값에 의거하는 등 여러 면에서 브랜치가 필요합니다.
(왼쪽) 그림에서 실행 단계의 라우트는 항상 참입니다.
평가 단계의 라우트는 평가 단계에서 참가자의 응답 값에 따라 달라집니다.
(라우트 조건이 표현식의 값에 기반할 수도 있습니다.)
라우트 중 하나만 채택됩니다.
|
모두 참인 라우트 선택 |
한 단계에 여러 개의 라우트가 있고 이들 라우트 중 둘 이상이
참으로 평가되는 경우 두 가지의 라우팅 처리 옵션이 있습니다.
참인 라우트 모두 선택 옵션(AND 분할)을 지정하는 경우, 작업은 여러 개의 하위 작업 항목으로 분할됩니다. 왼쪽 그림에서 그래픽으로 가는 라우트는 항상 참이고 라우트 A 또는 라우트 B가 참이 될 수 있으므로, 런타임 시에는 그래픽용 및 ReviewA 또는 ReviewB용으로 독립된 두 개의 작업 항목이 존재합니다. 유효한 맵을 작성하려면 편집 단계에서 보인 것과 같이 참인 모든 라우트의 끝에서 작업을 단일 경로로 유도하는 콜렉터 단계를 정의해야 합니다. 모든 하위 프로세스(이 경우에는 두 개)가 이 단계에 도달할 때까지 처리는 콜렉터 단계(편집) 바로 앞에서 대기합니다. |
AND 분할의 특수 사례
특수 사례 라우트 | 설명 |
---|---|
![]() |
일부 애플리케이션의 경우 동시 처리(AND 분할)를 지정하는 것이
바람직할 수 있지만, 처리가 계속되게 하기 위해 모든 하위 프로세스가
콜렉터 단계에 도달할 때까지 대기하는 것이 불편할 수 있습니다.
왼쪽에 보인 워크플로우에서 워크플로우 작성자는 아카이브 단계에서
처리가 완료되기를 기다리지 않고 ProcessA 단계, 승인 단계 및
워크플로우의 나머지 부분에서 작업이 계속되기를 희망합니다.
왼쪽 그림에서 Submap1에는 두 개의 개별 작업 항목을 생성하기 위해
StartStep에 AND 분할이 포함되어 있습니다.
아카이브 단계의 완료를 대기하지 않도록 하기 위해 ProcessA 단계가 콜렉터 단계로 정의됩니다. 이렇게 하면 ProcessA 경로의 작업 항목이 상위(계속 이어짐)로 지정되고 TerminateBranch 단계에서 종료하는 하위 작업 항목(아카이브 경로)이 해제됩니다. 참고: 아카이브 또는
TerminateBranch 단계가 콜렉터 단계로 정의되면 서브맵 완료 후에도
ProcessA 작업 항목과 아카이브 작업 항목이 모두 계속됩니다.
ReviewDocs에는 두 개의 작업 항목이 있고 나머지 워크플로우에서
계속됩니다.
|
마지막 업데이트 날짜: 2016년 3월
bpfwd011.htm
© Copyright IBM Corp. 2016.