Sunday, 28 April 2013 22:14

Chapter 7 - Ad-hoc Changes of Process Instances

7.1. Adaptation Patterns versus Change Primitives

Discuss the use of adaptation patterns versus change primitives.


7.2. Modifying Business Processes

Cheetah is a tool that provides support for defining and changing BPMN process models based on either change primitives or high-level adaptation patterns. A link for downloading the Cheetah platform can be found at this book's website.

  • Perform the modification task described in Section 7.3.3 with change primitives using the Cheetah platform.
  • Perform the modification task described in Section 7.3.3 with adaptation patterns using the Cheetah platform.


7.3. Modeling and Modifying Business Processes

In the following the pre-take-off process for a general aviation flight under visual flight rules (VFR) is described. Perform the modeling and modification tasks described in the following with both change primitives and adaptation patterns using Cheetah (cf. Excercise 7.2).

Modeling Task: Before conducting a general aviation flight the pilot first has to perform a weather check. Optionally, she can file the flight plan. This is followed by a preflight inspection of the airplane. For large airports the pilot calls clearance delivery to get the engine start clearance. If an airport has a tower, the pilot has to contact ground to get taxi clearance, otherwise she has to announce taxiing. This is followed by taxiing to the run-up area and then run-up the engine to ensure that the airplane is ready for the flight. If the airport has a tower, it is contaced to get take-off clearance, otherwise take-off intentions have to be announced. Finally, the pre take-off process finishes with the take-off of the airplane.

Modification Task 1: If the weather conditions are below safety limits, no flight can be conducted and the process has to be cancelled.

Modification Task 2: During the pre-flight inspections the pilot can detect problems with the airplane. If the problems are severe the flight is immediately cancelled. If the airplane can move under its own power it then taxis to the repair station. Alternatively, the airplane is either towed to the repair station or a mechanician comes to the airplane. Depending on how long the repair activities take, the flight is cancelled, or restarted with a second check of the weather conditions, or proceeds with the pre-flight airplane activity.

Modification Task 3: Problems with the airplane can also be detected during the run-up checks conducted by the pilot. In this case the pilot has to contact ground and ask for taxiing clearance to taxi back to the repair station, assuming that the airplane can still move under its own power. If the latter is not possible, the pilot informs ground about the need for being towed to the repair station. If the airport does not have a tower and the airplane can move under its own power, the pilot announces taxiing back instead. Depending on how long the repair activity takes, the flight is cancelled, or the flight is restarted with a weather check, or the pilot annotates the flightplane before proceeding with the pre-flight airplane activity.


7.4. Applying Ad-hoc Changes to a Process Instance

Consider the process instance depicted in Fig. 7.32. Which of the following ad-hoc changes can be applied to I and which not? Explain your answer and draw the resulting process instance (i.e., perform the required model transformations and state adaptations) if the ad-hoc change is possible!

  • Serially insert activity X between node AND-Split and activity H.
  • Delete activity H.
  • Delete activity B.
  • Swap activities D and E; i.e., move E to the position between C and D.
  • Insert activity Y in parallel with activity C.
  • Move activity G to the position between activities C and D.

Fig. 7.32 Process Instance to be Adapted

7.5. Applying Ad-hoc Changes to a Process Instance containing a Loop

Consider process instance I and its (partial) execution trace depicted in Fig. 7.33. Assume that an activity Perform Allergy Test shall be inserted in parallel with activity Deliver Drug in the model of I

  • Determine the loop-purged execution trace of I
  • Is I(relaxed) state compliant with the process model resulting from this ad-hoc change? Explain your answer.
  • Explain why the described ad-hoc change can be applied to I and draw the process instance resulting from this.
  • Assume that the conducted ad-hoc change is loop-temporary (cf. Section 7.8). How does the process instance look like when the depicted loop enters its next iteration during run-time?

Fig. 7.33 A Process Instance Containing a Loop


7.6. Adaptation Patterns

In this chapter only a subset of the adaptation patterns presented in [353] has been introduced. 

  • To learn more about other adaptation patterns study [353] and visit the book website.
  • Have a look at [353]. Which of the evaluated PAISs support adaptation patterns AP1 (Insert Process Fragment) and AP2 (Delete Process Fragment) respectively?

7.7. Change Features

Answer the following questions.

  • One way to control concurrent changes on a process instance is to hold an exclusive lock on this instance during the definition of the ad-hoc change. Why is this approach not applicable in practice?
  • Give an example of an uncontrolled ad-hoc change of a process instance that might affect proper completion of the instance.
  • Which other process model perspectives might have to be adapted when applying the described adaptation patterns to the control flow schema of a process model?
  • Consider the process instance from Fig. 7.3A: Determine a bias and the distance (cf. Definition 7.2) between this process instance and the one from Fig. 7.3B (and Fig. 7.3C respectively) assuming that the depicted change is accomplished with the adaptation patterns described.

Fig. 7.3 A Process Instance and two Examples of Related Ad-hoc Changes

Read 856 times Last modified on Sunday, 28 April 2013 22:32

Get the Book!

book cover small

To improve is to change; to be perfect is to change often.

_ Winston Churchill