Is it Possible to Make Workflow Management Systems Flexible? Dynamical Systems Approach to Business Processes Ilia Bider Maxim .Khomyakov IbisSoft (Stockholm, Sweden) Magnificent Seven (Moscow, Russia) ilia@ibissoft.se maxim@mag7.ulter.msk.su Abstract One of the potential sources of the inflexibility in WFMS is the literal interpretation of the term workflow. This term suggests a special view on business process, i.e. “flow of work”. This view works very well for manufacturing-like processes, but it is not very suitable for more soft, office processes. The authors suggest to view the business process differently, namely, regard it as a trajectory in the space of all possible states, i.e., state flow. The state-oriented presentation of processes is widely accepted in the mathematical system theory. Application of this approach to business processes gives another perspective to solving the flexibility problem. The execution control in the proposed approach is realized via the notion of valid state, were the state includes activities currently planned for the given process. If the process is not in a valid state, the activities can be added/removed to convert it into a valid one. 1. The problem The field of workflow management received a lot of attention in the past decade. However, it seems that the current workflow management systems (WFMS) still have a number of drawbacks that hinder their widespread use. One of the main obstacles on the road to widespread use of WFMS is their lack of flexibility, i.e. means of handling business processes that deviate from the standard pattern. The topic of flexibility is widely discussed in the workflow literature, see for example [3], and several methods of solving the problem has been proposed (due to the lack of space we cannot refer to all relevant papers). However, most of the proposed solutions are still based on the traditional view on the business process as a “flow of activities” that need to be coordinated by a WFMS system. We feel that the flexibility problem is easier to solve considering an alternative view on the business process, namely, as a trajectory in the space of all possible states. The main ideas of this approach are shortly discussed in the following sections. 2. The work flow view Workflow management systems are aimed at supporting business processes. According to the BPR (Business Process Reengineering) literature (see, for example, [5]), a business process can be viewed as a set of partially ordered activities intended to reach a goal. Some examples of goals are: closing a sale, getting money for an incoming order, which includes delivering (and possibly producing) the goods, discharging the patient from the hospital, which includes taking steps to his/her recovery. The literal interpretation of this definition leads us to regard a process as a predefined flow of activities. When all needed activities have been completed, the goal is reached. For this view, the progress of an individual process (process instance) may be checked against a net of activities that shows a (partial) order in which various activities should/could be executed. Very often, some version of the Petri nets is used to define the order and synchronization of activities (see, for example, [4]). Such net serves as the main means of the process definition. The workflow view is quite suitable for manufacturing processes. For them, the technological discipline is mandatory, and deviations happens not so often. When a deviation does happen, it really constitutes an exception that should be handled manually, i.e. outside the standard process flow. For soft (office) business processes, where deviations are the norm rather than exception, the net representation is not very suitable. A different view on the business process might give a better solution to handle deviations in this kind of processes. 3. The state flow view The general definition of the business process given in section 2 is based on the notion of goal. This notion presumes that at any moment of the process's life, we can tell whether the process’s goal is achieved or not. If it is