• Tidak ada hasil yang ditemukan

6 Conclusions

Dalam dokumen Lecture Notes in Computer Science 5240 (Halaman 110-114)

task of CSO as this required customer actions. But CSO agreed that this would end the consignation settlement process and completed the task in the Wf.

Finally, we re-generated the jBPM process model with all available data from the initial TDG and from the execution of the jBPM Wf with deviating tasks, i.e. under the supervision of SL1, SL2 and CSO, with who we discussed the export modes of ad-hoc tasks (cf. 2). The “order set items” was exported as parallel sub process whereas the other deviations were exported as sequential Wf tasks. A screenshot, showing a part of the final model is given in Figure 5. Users appreciated having the complete Wf with all possible deviations in it: “If the reported balance is ok, I’ll just complete this task [liability statement] straight away … but I certainly want to have it there to make sure I won’t forget it” (CSO). Users highly appreciated the provided jBPM Wf functionality as the automated task assignment would save them the effort to distribute tasks per email as usual. They further reported that they consider the final Wf real-life compliant and will try to use it on regular basis and possibly to develop several variations for different customers.

References

1. van der Aalst, W., Weijters, A.: Process mining: a research agenda. Computers in Industry, vol. 53. Elsevier B.V, Amsterdam (2003)

2. Agostini, A., De Michelis, G.: Rethinking CSCW systems: the architecture of Milano. In:

ECSCW 1997, pp. 33–48. Springer, Heidelberg (1997)

3. Bellotti, V., Dalal, B., Good, N., Flynn, P., Bobrow, D.G., Ducheneaut, N.: What a To-Do:

Studies of Task Management towards the Design of a Personal Task List Manager. In: CHI 2004, pp. 735–742. ACM Press, New York (2004)

4. Bellotti, V., Ducheneaut, N., Howard, M., Smith, I., Grinter, R.: Quality Versus Quantity:

E-Mail-Centric Task Management and Its Relation With Overload. Human-Computer In- teraction, vol. 20, pp. 89–138. Lawrence Erlbaum Associates, Mahwah (2005)

5. Bernstein, A.: How Can Cooperative Work Tools Support Dynamic Group Processes?

Bridging the Specificity Frontier. In: CSCW 2000, pp. 279–288. ACM Press, New York (2000)

6. Beyer, H., Holtzblatt, K.: Contextual Design: Defining Customer-Centered Systems. Mor- gan Kaufmann, San Francisco (1998)

7. Button, G.: What’s Wrong With Speech-Act Theory. Computer Supported Cooperative Work 3(1), 39–42 (1994)

8. Fischer, G., Giaccardi, E., Ye, Y., Sutcliffe, A., Mehanjiev, N.: Meta-Design: A Manifesto for End-User Development. Communication of the ACM 47(9) (September 2004)

9. Forrester Research. Increase Business Agility with BPM Suites. Forrester Research Inc.

(2006)

10. Herrmann, T.: Evolving Workflows by User-driven Coordination. In: Reichwald, R., Schlichter, J. (eds.) Tagungsband D-CSCW 2000, pp. 103–114. Teubner (2000)

11. Holz, H., Maus, H., Bernardi, A., Rostanin, O.: From Lightweight, Proactive Information Delivery to Business Process-Oriented Knowledge Management. Journal of Universal Knowledge Management (2), 101–127 (2005)

12. JBoss Business Process Management, jBPM,

http://docs.jboss.org/jbpm/v3/userguide/index.html

13. Jorgensen, H.D.: Interactive Process Models. Ph.D. Thesis, Norwegian University of Sci- ence and Technology, Trondheim, Norway (2004)

14. Lieberman, H.: Your Wish is My Command: Programming by Example. Morgan Kauf- mann, San Francisco (2001)

15. Lieberman, H., Paterno, F., Wulf, V.: End-User Development. Springer, Heidelberg (2006) 16. MacLean, A., Carter, K., Lövstrand, L., Moran, T.: User-tailorable systems: pressing the

issues with buttons. In: Proc. CHI 1990, pp. 175–182. ACM Press, New York (1990) 17. Mørch, A., Mehandjiev, N.: Tailoring as Collaboration: The Mediating Role of Multiple

Representations and Application Units. Computer Supported Cooperative Work 9(1), 75–

100 (2000)

18. Object Management Group, BPMN, http://www.bpmn.org/

19. Riss, U., Rickayzen, A., Maus, H., van der Aalst, W.: Challenges for Business Process and Task Managemen. Journal of Universal Knowledge Management (2), 77–100 (2005) 20. Schwarz, S., Abecker, A., Maus, H., Sintek, M.: Anforderungen an die Workflow-

Unterstützung für wissensintensive Geschäftsprozesse. In: WM 2001, 1st Conference for Professional Knowledge Management, Baden-Baden, Germany (2001)

21. Stoitsev, T., Scheidl, S., Spahn, M.: A Framework for Light-Weight Composition and Management of Ad-Hoc Business Processes. In: Winckler, M., Johnson, H., Palanque, P.

(eds.) TAMODIA 2007. LNCS, vol. 4849, pp. 213–226. Springer, Heidelberg (2007)

Jussi Vanhatalo1 2, Hagen V¨olzer1, and Jana Koehler1

1IBM Zurich Research Laboratory, S¨aumerstrasse 4, CH-8803 R¨uschlikon, Switzerland {juv,hvo,koe}@zurich.ibm.com

2Institute of Architecture of Application Systems, University of Stuttgart, Germany

Abstract. We consider workflow graphs as a model for the control flow of a busi- ness process model and study the problem of workflow graph parsing, i.e., finding the structure of a workflow graph. More precisely, we want to find a decompo- sition of a workflow graph into a hierarchy of sub-workflows that are subgraphs with a single entry and a single exit of control. Such a decomposition is the cru- cial step, for example, to translate a process modeled in a graph-based language such as BPMN into a process modeled in a block-based language such as BPEL.

For this and other applications, it is desirable that the decomposition be unique, modular and as fine as possible, where modular means that a local change of the workflow graph can only cause a local change of the decomposition. In this paper, we provide a decomposition that is unique, modular and finer than in pre- vious work. It is based on and extends similar work for sequential programs by Tarjan and Valdes [11]. We show that our decomposition can be computed in linear time based on an algorithm by Hopcroft and Tarjan [3] that finds the tri- connected components of a biconnected graph.

Keywords: Workflow graph parsing, Control flow, Model decomposition, BPMN to BPEL translation/ roundtripping, Subprocess detection, Graph theory.

1 Introduction

The control flow of a business process can often be modeled as a workflow graph [10].

Workflow graphs capture the core of many business process languages such as UML ac- tivity diagrams, BPMN and EPCs. We study the problem of parsing a workflow graph, that is, decomposing the workflow graph into a hierarchy of sub-workflows that have a single entry and a single exit of control, often also called blocks, and labeling these blocks with a syntactical category they belong to. Such categories are sequence, if, repeat-until, etc., see Fig. 1(a). Such a decomposition is also called a parse of the work- flow graph. It can also be shown as a parse tree, see Fig. 1(c).

The parsing problem occurs when we want to translate a graph-based process de- scription (e.g. a BPMN diagram) into a block-based process description (e.g. BPEL process), but there are also other use cases for workflow graph parsing. For example, Vanhatalo, V¨olzer and Leymann [14] show how parsing speeds up control-flow analy- sis. K¨uster et al. [6] show how differences between two process models can be detected and resolved based on decompositions of these process models. We believe that parsing also helps in understanding large processes and in finding reusable subprocesses.

M. Dumas, M. Reichert, and M.-C. Shan (Eds.): BPM 2008, LNCS 5240, pp. 100–115, 2008.

c Springer-Verlag Berlin Heidelberg 2008

s1 x1 x2 e1 a1 a2

a4

s1 x1 x2 x3 x4 e1

a1 a2 a3

s1 x1 x2 x3 x4 e1

a1 a2 a3

(a) (b)

If Repeat-Until

Sequence 2 Sequence 1

If Repeat-Until

Sequence 3 Sequence 1

If

Repeat-Until Sequence 1 Sequence 2

(d)

If Sequence 3

Sequence 1

If Sequence 1

Sequence 3

(c) (e)

a1

a2 a3 a1 a2 a4

Fig. 1. (a), (b) Two parses of the same workflow graph. (c) Parse tree corresponding to (a). (d) Workflow graph obtained by a local change and its parse. (e) Parse tree corresponding to (d).

For a roundtripping between a BPMN diagram and a BPEL process, it is desirable that the decomposition be unique, i.e., the same BPMN diagram always translates to the same BPEL process. Consider, for example, the workflow graph in Fig. 1(a). The translation algorithm proposed by Ouyang et al. [9] is nondeterministic. It may produce one of the two parses shown in Fig. 1(a) and (b), depending on whether the if-block or the repeat-until-block is found first by the parsing algorithm.

One idea to resolve some of this nondeterminism is to define priorities on the syn- tactic categories to be found [9,7,8]. For example, if in each step the parsing algorithm tries to find sequences first, then if-blocks and then repeat-until-blocks, we can only obtain the parse in Fig. 1(a) in our example. However, this can introduce another prob- lem. If we change a single block, say, the repeat-until block by replacing it, e.g. by a single task, we obtain the workflow graph shown in Fig. 1(d). Fig. 1(d) also shows the parse we obtain with the particular priorities mentioned above. The corresponding parse tree is shown in Fig. 1(e). It cannot be derived from the tree in Fig. 1(c) by just a local change, viz., by replacing the Repeat-Until subtree. For a roundtripping between a BPMN diagram and a BPEL process, it would be much more desirable that a local change in the BPMN diagram also result in only a local change in the BPEL process.

Replacing a block in the BPMN diagram would therefore only require replacing the corresponding block in the BPEL process. We then call a such decomposition modular.

The existing approach to the BPMN to BPEL translation problem [9] is not modular.

Furthermore, it does not provide, because of the above problems, a specification of the translation that is independent of the actual translation algorithm.

Sequence 1

If Repeat-Until

s1 x1 x2 x3 x4 e1

a1 a2 a3

Fig. 2. Modular decomposition of the process from Fig. 1

A unique and modular decomposition is provided by the program structure tree de- fined by Johnson et al. [4,5] for sequen- tial programs. It was applied to workflow graphs by Vanhatalo et al. [14] to find control-flow errors. The corresponding de- composition for our first example is shown in Fig. 2. It uses the same notion of a block

as Ouyang et al. [9] do, that is, a block is a connected subgraph with a single entry and a single exit edge. But in contrast to the approach of Ouyang et al. [9], non-maximal sequences are disregarded in the program structure tree. For example, Sequence 2 in Fig. 1(a) [likewise Sequence 3 in subfigure (b)] is non-maximal: it is in sequence with another block.

Another general requirement for parsing is to find as much structure as possible, i.e., to decompose into blocks that are as fine as possible. As we will see (cf. Sect. 4), this allows us to map more BPMN diagrams to BPEL in a structured way. It has also been argued [9] that the BPEL process is more readable if it contains more blocks.

Furthermore, debugging is easier when an error is local to a small block rather than to a large one.

In this paper, we provide a new decomposition that is finer than the program struc- ture tree as defined by Johnson et al. [4,5]. It is based on and extends similar work for sequential programs by Tarjan and Valdes [11]. The underlying notion of a block is a connected subgraph with unique entry and exit nodes (as opposed to edges in the pre- vious approach). Accordingly, all blocks of the previous approach are found, but more may be found, resulting in a more refined parse tree. We prove that our decomposition is unique and modular. Moreover, we show that it can be computed in linear time, based on an algorithm by Hopcroft and Tarjan [3] that finds the triconnected components of a biconnected graph.

The paper is structured as follows. In Sect. 2, we define the refined process structure tree and discuss its main properties. In Sect. 3, we describe how to compute the process structure tree in linear time. Proofs of the main theorems can be found in a technical report [13].

Dalam dokumen Lecture Notes in Computer Science 5240 (Halaman 110-114)