In business process automation and system integration, often you may hear about workflows. However, if you asked several professionals what workflows are, you will get a number of different answers. And this is no surprise since the concept of workflow is decades old and is used in many industries. In software-intensive systems, workflows can be as simple as steps to complete and approve a document or as complex as tasks involved in managing a long-running process between different departments or organizations.
Nevertheless, there are some commonalities in all these approaches to workflow systems, which are described as follows:
Workflows are composed of a series of steps. Each step represents a task or an activity that has to be performed under some circumstances.
The steps can be performed in parallel or in sequence.
Execution of a specific step may depend on the input to that step.
Action in each step may use some rules specific to that step.
These rules can determine...