Demonstration of leave request

Initialization of a workflow

This is a workflow for leave/vacation requests. In free from the workflow is this: You acting as an employee request leave by filling out a form. The request goes to the secretary (Notarius or Socius) who checks that you have the needed days on your account. If this goes well he forwards the request to Prefectus for approval. If not approved, it is sent back to the employee for either modification or cancellation.

Prefectus will either approve or not. If he approves the request is sent to the secretary of the employee for update in HR's system. If he doesn't approve the request is sent back to the employee. The secretary will subtract the days from HR and then inform the employee that the leave is approved.

This workflow is an example of explicit forwarding to the secretary, supervisor and employee. The system is programmed to figure out who your secretary is, and in this example Primus, Secundus, Socius and Prefectus has Notarius as their secretary. Tertius, Quartus and Notarius has Socius. Everybody has Prefectus as supervisor - even Prefectus.

All account names are spelled in all lowercase. The password is the first letter of the account name.

Excercises for the reader

  1. The Check Formalia activity is a good candidate for automatisation.
  2. Rather than assigning the Update HR System to a specific secretary, you can let them draw the tasks from a shared pool. All you have to do is to remove the incoming routing on that activity and make the activity pullable by the Secretary role. But remember the observation: When it is everybody's responsibility - it is nobody's responsibility.
  3. Finally, you could make it possible for the requester to withdraw his request while it's inactive on the secretary's and supervisor's work queue.