Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

We are going to design a Approval flow which would require more than one person's approval. The approval process would require each and every one person of the approval group to approve. When there's one of them rejects, the whole approval process would be rejected immediately. And, as expected, each of them would need to approve in order to get it approved in overall.

For the process design, we would require 2 separates workflow processes.

Image Modified

Figure 1: The main process - Apply Process

Image Modified

Figure 2: Individual Approval Process

By design, one would need to kick start the "Apply" Process first and submits the "Apply" activity. Then, "Generate Approval" would spawn as many "Approval" Process as needed according to the number of users returned in "Approver Group" participant mapping.

Each of the "Approver" process instances would gather decision from its respectful Approver. Then, "Update Application" will execute to trigger "Waiting For Response" activity in the parent process ("Apply" Process) which will then execute the "Process Approval" tool to evaluate if it is enough to make a final decision and move forward.