Document not found! Please try again

Enhancing Aspect-Oriented Business Process

0 downloads 0 Views 919KB Size Report
Oct 19, 2015 - ivin g. P riva cy. Thesis Supervision. Course Supervision. Se cu rity. Cross-cutting concerns: Core-Concerns: M. M. Cross-cutting Concerns.
Enhancing Aspect-Oriented Business Process Modeling with Declarative Rules Authors:

Amin Jalali Fabrizio Maria Maggi Hajo A. Reijers

This is the authors version of a work that was submitted/accepted for publication in:

Johannesson, Paul and Lee, MongLi and Liddle, StephenW. and ´ ´ pez, OscarPastor Opdahl, AndreasL. and Lo (Eds.) Conceptual Modeling 34th International Conference, ER 2015, Stockholm, Sweden, Oct 19-22, 2015. Proceedings Lecture Notes in Computer Science, Volume 9381, Springer International Publishing, Sweden, pp. 108-115.

The original publication is available at

SpringerLink

Notice: Changes introduced as a result of publishing processes such as copy-editing and formatting may not be reflected in this document. For a definitive version of this work, please refer to the published source: 10.1007/978-3-319-25264-3 8

c

Copyright 2015 Springer International Publishing Switzerland

Enhancing Aspect-Oriented Business Process Modeling with Declarative Rules Amin Jalali1 , Fabrizio Maria Maggi2 , and Hajo A. Reijers3,4 1

Stockholm University, Sweden University of Tartu, Estonia 3 VU University Amsterdam, The Netherlands 4 Eindhoven University of Technology, The Netherlands [email protected] , [email protected] , [email protected] 2

Abstract. When managing a set of inter-related business processes, typically a number of concerns can be distinguished that are applicable to more than one single process, such as security and traceability. The proper enforcement of these cross-cutting concerns may require a specific configuration effort for each of the business processes involved. Aspect-Oriented Business Process Modelling is an approach that aims at encapsulating these concerns in a model-oriented way. However, stateof-the-art techniques lack efficient mechanisms that allow for the specification of concerns in such a way that they can be executed in parallel to other parts of the process. Moreover, existing techniques exclusively focus on the formulation of mandatory concerns. To address these limitations, this paper proposes a new approach to encapsulate both optional and mandatory concerns, which can be executed concurrently with other process functionalities. One core element of the new approach is that it extends current Aspect-Oriented Business Process Modelling approaches with declarative rules. Thus, this hybrid approach allows for a sophisticated management of cross-cutting concerns. Keywords: Business Process Modelling, Aspect Orientation, Cross-Cutting Concerns, Declarative Rules

1

Introduction

Separation of concerns is an important strategy for people to deal with the intricate nature of real-life phenomena, in particular, in the development of systems that need to cope with complexity. For this purpose, designers can divide the specifications of the system into smaller individual modules, which can be managed, understood, and changed separately but still integrated into a comprehensive, overall specification. Business processes, being complex artefacts themselves, usually incorporate many concerns as well. Some of these, e.g., considering security or privacy issues, are not limited to one particular business process, but cross over and are applicable to many business processes. These are known as cross-cutting concerns. For example, each time a financial transaction is carried out as a part of a particular business process, certain security protocols are followed.

2

A. Jalali et al.

In modelling business processes, two types of modularization techniques can be distinguished that are regularly employed to encapsulate cross-cutting concerns. Both of these techniques aim at preventing the redundant implementation of a concern, which reduces future maintenance efforts. With vertical modularization, the process logic that implements a concern is “embedded” in the main process model, i.e., it is being implemented as a subprocess. Therefore, the concern has multiple implementations in different process models and, as a result, is scattered over different process models. In this way, if the rules that govern the applicability of a concern change, this will affect all the parts of the process models in which the relevant sub-process appears. In addition, if the implementation of the concern itself changes, again, all the corresponding sub-processes need to be changed. This is called the scattering problem. On the other hand, with horizontal modularization, the module that encapsulates the concern is implemented as a separate functionality in a separate process model. Thus, if the concern is changed, only this process model should be changed. However, if conditions under which the concern should be addressed are changed, all processes should still be reconsidered to establish whether the module is invoked appropriately, i.e., in accordance with the updated rules. So, even in the case of horizontal modularization, the invocation of the modules that take care of a concern are too closely tangled with the policy module. This problem is referred to as the tangling problem. Aspect-Oriented Business Process Modelling (AO-BPM)1 aims at separating cross-cutting concerns from process models in a way to solve the scattering and tangling problems [2, 3, 6]. To solve the scattering problem, each concern is encapsulated in a module called an advice. In this way, a change in a concern should only affect a single module. To solve the tangling problem, the relations between the core functionality of a business process and the cross-cutting concerns that interact with it are specified separately through a set of pointcuts, i.e., positions in the process in which the advice should be applied. In this way, a change in the relation between the core of a business process and a concern can be managed without altering the specification of these models. The groups of advices with relevant pointcuts that define how they should relate to the core process model are called aspects. While AO-BPM addresses to a large extent how cross-cutting concerns can be managed, it has a severe limitation that stems from its adoption of concepts and semantics from the field of programming. Specifically, it only allows for the definition of cross-cutting concerns that can be executed precisely before, after, or ‘around’ any specific point in a process. This is similar to a fixed point in a single-threaded piece of executable program code. As a result, AO-BPM approaches are not able to deal with cross-cutting concerns such that these can be fulfilled in parallel to some other parts of the business process. For example, as a security concern for the entry process into the United States, the arriving travellers should submit their passport information and customs declaration form 1 Since AOBPM is sometimes used as an acronym for Aspect-Oriented Business Process Management, we opt for the hyphenated acronym to minimize confusion.

Enhancing AO-BPM through Declarative Rules

3

prior to Customs and Border Protection (CBP) inspection.2 A traveller can submit the documents at any time after arrival yet before CBP inspection. This type of concerns cannot be separated through existing AO-BPM approaches since they are not bounded to a single activity in a process model. Indeed, a traveller can do the submission at any time in parallel to the remaining part of the process. In addition, existing AO-BPM approaches cannot specify crosscutting concerns that are optional to follow: they consider each concern as a mandatory process part. To address these limitations, this paper proposes a new approach that extends existing AO-BPM approaches. The new approach supports the definition of both optional and mandatory cross-cutting concerns, which can be defined to be fulfilled in parallel to any other part of the main business process. The major, new element that allows for this is the use of declarative rules that enable a flexible yet precise connection between core process and concerns [10]. The remainder of this paper is structured as follows. Section 2 explains the proposed approach, which is the core idea of this paper. Section 3 discusses related works. Section 4 concludes the paper and explains future directions for research.

2

Approach

Auditing

Archiving

Security

Business Processes

Core-Concerns: Thesis Supervision

Privacy

Cross-cutting concerns:

M Core Concern (main process)

M

Thesis Examination Course Supervision Course Examination

M Cross-cutting Concerns (advices)

Rules (pointcuts)

Aspect Oriented Business Process Model

This section introduces our proposed approach using a case from the educational domain. Fig. 1 depicts four processes, i.e., Thesis Supervision, Thesis Examination, Course Supervision, and Course Examination. The left-hand side of the figure shows the relation between these business processes and a number of cross-cutting concerns. It is visually expressed that a business process must address a concern if the concern crosses over it. Each concern is modeled with one or more advices that define its implementation. In Fig. 1, main process, advices and pointcuts are represented by pentagons (annotated by M as an acronym for “Model”). There are four coloured, cascaded

Fig. 1. Aspect-Oriented Business Process Modelling 2 http://www.cbp.gov/newsroom/national-media-release/2014-08-11-000000/newmobile-passport-control-app-available

Is digitalized? Scan documents

Upload documents

Grade inform advice

Sign the form

Privacy Concern

Provide grading form

Archive exam materials advice

Grade registration advice

A. Jalali et al.

Archive examination advice

Archiving Concern Security Concern

4

Send email to students

Archive material

Fig. 2. CrossCutting Concerns for the Course Examination process

pentagons for advices representing the models for the four concerns. For instance, the Grade Inform advice can be seen to be taking care of the “Privacy Concern” (see Fig. 2). In this way, a business process model only describes the core functionality of the process, which is the core concern or the main process. In our setting, the Course Examination process is one of the main processes, which is modelled without explicitly addressing any cross-cutting concern (see Fig. 3). In this section, we elaborate on how our approach supports a separation of cross-cutting concerns for the Course Examination process. This process should comply with three cross-cutting concerns, i.e., privacy, security and archiving in accordance with the concerns that cross over this process in Fig. 1. 2.1

Cross-cutting concerns

Fig. 2 shows cross-cutting concerns that are applicable for the Course Examination process. These concerns are encapsulated as advices and are modelled using Petri nets [1]. As a privacy concern, the Grade Inform advice specifies that students should be informed about grades through emails. As a security concern, the Grade Registration advice specifies that the administrative staff should provide a grading registration form, which should be signed by the examiner. As an archiving concern, the Archive Examination advice specifies that the examined sheets should be scanned by the administrative staff if they are not in digital format. Subsequently, they should be uploaded to the system. Moreover, the Archive Exam Materials advice specifies that the examiner can optionally archive exam material like questions and correct answers. 2.2

Core concern

The Course Examination starts with the Schedule the Exam task performed by the education secretary (see Fig. 3). Then, students can register for the exam through the Register Students task. In parallel, the Send Exam Question task enables the examiner to send the exam questions (at least one week before the exam) to the secretary. After the registration deadline, the secretary prepares the exams through the Print Exam Materials task.

Enhancing AO-BPM through Declarative Rules

5

After the exam, the administrative personnel registers students who participated in the exam through the Register Participant List task. The examiner grades the exam and reports the result through the Register Grades task. The grades are A, B, C, D, E, Fx and F. Grades Fx and F are failing grades; however, students who receive an Fx have another chance to improve their grade to E. The examiner should provide instructions (as an assignment) for those who received Fx through the Send Fx instructions task. Students can Submit Assignments before the specified deadline. Thereafter, the examiner grades the submissions and reports the result through the Register Grades task. Finally, the Course Leader (can be the same person as the examiner) writes the course summary. 2.3

Pointcuts

Having both a core concern (the main process) and cross-cutting concerns, we can define pointcuts to relate these parts. Pointcuts identify points in each main process to which some advice can be related. Such points are called join points, and they are specific tasks within the core concern. The join points that are related to any advice through pointcuts are called advised join points. With existing AO-BPM approaches, we can only define mandatory advices to be executed exactly before, after, or ‘around’ a join point. For example, we can define an advice that should be executed right after the Register Participant List task. However, doing this implies that the advice should be finished before starting the next task, Register Grades. Thus, it would not be possible for an advice to be enacted in parallel to a part of the main process. We may want, for example, the Grade Registration advice to be executed at some point after registering the grades as long as it is done before the process ends. In addition, in standard AO-BPM approaches, we cannot define optional advices, like the Archive Exam Materials advice in our example. To deal with these issues, we need to extend the definition of pointcuts to: – support the definition of an initiator and a terminator. An initiator / terminator pair allows us to define the interval within which an advice can or must be executed. The initiator can refer to the start of a process instance or to an instance of any task in the main process. The terminator can refer to the end of a process instance or to an instance of any task in the main process; – support the definition of both optional and mandatory advices.

Submit Assignments

Register Students

Schedule The Exam

Send Exam Questions

Send Fx Instruction

Deadline

Print Exam Materials

Register Participant List

Register Grades

Fig. 3. Course Examination process

Write Course Summary

6

A. Jalali et al. Mandatory Constraints

Optional Constraints

Conditional response

I

A

T

I

A

T

Conditional alternate response

I

A

T

I

A

T

Fig. 4. Proposed approach for definition of pointcuts

An instance of the initiator can be followed by a terminator with or without other occurrences of the initiator in between. Thus, we can define an advice to be executed: i) for every occurrence of the initiator until the occurrence of the terminator, or ii) for the first occurrence of the initiator until the occurrence of the terminator. The first option is called an alternate response scenario and the second one a response scenario. Considering that advices can be defined as optional or mandatory, pointcuts can be defined through four declarative rules, called i) the mandatory conditional response (mcr); ii) the mandatory conditional alternate response (mcar); iii) the optional conditional response (ocr); and iv) the optional conditional alternate response (ocar). The graphical representations of these rules are illustrated in Fig. 4. Note that I, A, and T represent the initiator, the advice name, and the terminator respectively. Fig. 5 shows the application of these rules to our running case. Four declarative rules are defined to relate advices to the main process, which are annotated by numbers in the figure. The first rule indicates that the Grade Registration advice should be executed every time the grades are registered, and it should be completed before the process is ended. The second rule indicates that the Grade Inform advice should be executed every time the grades are registered, and it should be completed before the process is ended. The third rule indicates that the Archive Examination advice should be executed after registering the grades (once for all), and it should be completed before the process is ended. The fourth rule indicates that the Archive Exam Materials advice may be executed after registering the participant list, but – if so – it should be finished before the process is ended. The first three rules are mandatory rules, and the last rule is optional. Moreover, the first two rules are of type mcar, because both

I Register Grades

A Grade Registration Advice

I A Register Archive Grades Examination Advice

T End

T End

1

3

I Register Grades

A Grade Inform Advice

T End

I A T Register Archive Exam End Participant List Materials Advice

Fig. 5. Definition of pointcuts for the running case

2

4

Enhancing AO-BPM through Declarative Rules

7

the security and the privacy concerns should be executed for every change in the grades. The third rule is of type mcr; the fourth rule is an ocr.

3

Related Work

The separation of cross-cutting concerns has been investigated in business process modelling and enactment by different researchers. To support modeling, many works have been proposed in AO-BPM that allow for the definition of a concern for a specific point in a process model [2, 3, 6, 9]. Cappelli et al. [2] introduce an extension for the Business Process Model and Notation (BPMN) [8]. This extension enables the definition of advices “before” or “after” a point in a process model. They also extend the Oryx editor to support this definition. The editor is called CrossOryx. Charfi et al. [3] also introduce an extension for BPMN, called AO4BPMN. This extension supports the definition of advices “before”, “after” or “around” a point in a process model. Jalali et al. formalize the AO4BPMN notation for the first time [6]. Patiniotakis et al. [9] introduce bypass and replace elements that enable replacing an advised join point with another activity or skipping it. To support enactment, two approaches have been followed by researchers, called static and dynamic weaving. Static weaving defines how aspect oriented business process models should be merged into traditional models at design time, so that they can be executed later [5]. Dynamic weaving defines the operational semantics for executing aspect oriented business process models at runtime [7]. All these contributions are limited to the definition of concerns related to a specific point in a process model. In this paper, we try to support the definition of (possibly optional) concerns that can be executed in parallel to the main process. This problem has been investigated by Wang et al. in [11]. However, their solution does not solve the tangling problem [4], because the authors introduce additional elements in the core concern to relate it to the cross-cutting concerns. Their approach could not guarantee the soundness of the model either, and it can introduce deadlocks.

4

Conclusion

This paper proposes a new approach to separate cross-cutting concerns when modelling business processes. This approach facilitates this by defining declarative rules to relate process models with cross-cutting concerns. In particular, it extends and improves existing AO-BPM approaches by supporting the definition of concerns that can be executed in parallel to the main process. The new approach also enables the definition of optional cross-cutting concerns. For future work, we aim at defining the formal definition and semantics of this approach. In addition, we plan to support the design and enactment of the proposed approach by implementing artefacts in a Business Process Management System. Finally, we are planning to study the perceived ease of use and perceived usefulness of the approach when modelling a business process. In addition, it would be interesting to investigate how hybrid models can expand the support for flexibility in Business Process Management.

8

A. Jalali et al.

References 1. Wil M.P. van der Aalst. Verification of workflow nets. In Pierre Azma and Gianfranco Balbo, editors, Application and Theory of Petri Nets 1997, volume 1248 of Lecture Notes in Computer Science, pages 407–426. Springer Berlin Heidelberg, 1997. 2. Claudia Cappelli, Flvia Maria Santoro, Julio Cesar Sampaio do Prado Leite, Thais Batista, Ana Luisa Medeiros, and Clarissa S.C. Romeiro. Reflections on the modularity of business process models. Business Process Management Journal, 16(4):662–687, 2010. 3. Anis Charfi, Heiko M¨ uller, and Mira Mezini. Aspect-oriented business process modeling with ao4bpmn. In Thomas Khne, Bran Selic, Marie-Pierre Gervais, and Franois Terrier, editors, Modelling Foundations and Applications, volume 6138 of Lecture Notes in Computer Science, pages 48–61. Springer Berlin Heidelberg, 2010. 4. Amin Jalali. Assessing aspect oriented approaches in business process management. In Bjrn Johansson, Bo Andersson, and Nicklas Holmberg, editors, Perspectives in Business Informatics Research, volume 194 of Lecture Notes in Business Information Processing, pages 231–245. Springer International Publishing, 2014. 5. Amin Jalali. Static Weaving in Aspect Oriented Business Process Management. In to appear in Proc. 34th International Conference on Conceptual Modeling (ER), 2015. 6. Amin Jalali, Petia Wohed, and Chun Ouyang. Aspect oriented business process modelling with precedence. In Jan Mendling and Matthias Weidlich, editors, Business Process Model and Notation, volume 125 of Lecture Notes in Business Information Processing, pages 23–37. Springer Berlin Heidelberg, 2012. 7. Amin Jalali, Petia Wohed, Chun Ouyang, and Paul Johannesson. Dynamic weaving in aspect oriented business process management. In Robert Meersman, Herv Panetto, Tharam Dillon, Johann Eder, Zohra Bellahsene, Norbert Ritter, Pieter De Leenheer, and Deijing Dou, editors, On the Move to Meaningful Internet Systems: OTM 2013 Conferences, volume 8185 of Lecture Notes in Computer Science, pages 2–20. Springer Berlin Heidelberg, 2013. 8. Inc. (OMG) Object Management Group. Business Process Model and Notation (BPMN). Technical report, Object Management Group, Inc. (OMG), 2013. 9. Ioannis Patiniotakis, Nikos Papageorgiou, Yiannis Verginadis, Dimitris Apostolou, and Gregoris Mentzas. An aspect oriented approach for implementing situational driven adaptation of bpmn2.0 workflows. In Marcello La Rosa and Pnina Soffer, editors, Business Process Management Workshops, volume 132 of Lecture Notes in Business Information Processing, pages 414–425. Springer Berlin Heidelberg, 2013. 10. Maja Pesic. Constraint-Based Workflow Management Systems: Shifting Control to Users. PhD thesis, Eindhoven University of Technology, 2008. 11. Jian Wang, Jun Zhu, Haiqi Liang, and Ke Xu. Concern oriented business process modeling. In e-Business Engineering, 2007. ICEBE 2007. IEEE International Conference on, pages 355–358, Oct 2007.

Suggest Documents