Another example of the requirement imposed by some of the workflow engines on a modeller is that the workflow model is to contain only one ending node, or in case of many ending nodes, the workflow model will terminate when the first one is reached. Again, most business models do not follow this pattern - it is more natural to think of a business process as terminated once there is nothing else to be done. Description A given subprocess should be terminated when there is nothing else to be done. This semantics is typically assumed for every workflow model at the analysis stage.
Most workflow engines terminate the process when an explicit Final node is reached.
Any current activities that happen to be running by that time will be aborted which may be confusing to end-users. The typical solution to this problem is to transform the model to an equivalent model that has only one terminating node. The complexity of that task depends very much on the actual model. Sometimes it is easy and fairly straightforward, typically by using a combination of different join constructs and activity repetition. However, there are situations where it difficult or even impossible to do so.