A Transactional Metamodel For Business Process Modeling With Support To Business Process Patterns Lucinéia Heloisa Thom1, Cirano Iochpe1, Bernhard Mitschang2 1 Instituto de Informática – Universidade Federal do Rio Grande do Sul (UFRGS) Caixa Postal 15.064 – 91.501-970 – Porto Alegre – RS – Brazil 2 Institute for Parallel and Distributed Systems (IPVS) – University of Stuttgart Universitätstrasse 38, 70569 Stuttgart, Germany {lucineia,ciochpe}@inf.ufrgs.br, mitsch@informatik.uni-stuttgart.de Abstract. Currently, there are several metamodels for business process and workflow process modeling. However, the limitations of these metamodels are twofold: First, the use of organizational structure aspects is limited and second they don’t support business (sub)process patterns based on organizational structure aspects. These limitations may restrict the accuracy, efficiency, and productivity of the workflow project. Thesis result specially comprises a Transactional Metamodel of Business Processes (TMBP). TMBP links organizational structure aspects with business (sub)process and makes it feasible to create business (sub)process from the reuse of business (sub)process patterns based on organizational structure aspects. An additional feature of TMBP supports the generation of business subprocess patterns through the Business Process Execution Language for Web Services (BPEL4WS). 1. Introduction Workflow management systems coordinate tasks, resources, and data according to the formal representation of the business process executed in organizations [Mühlen 1999]. A business process can be understood as a partial order of tasks where each task contributes in a stage of the process. At the end of the business process, the organization should reach the objective of the business proposed. A workflow process model is a representation of a business process and comprises all singularities required for the business process automation. Any organization should be modelled according to the business process it must perform. Accordingly, first the business process must be defined and after this the organization must be modelled to best operate it. Based on this definition and the study in [Thom, 2004], thesis conceptualization considers the existence of a strong relationship between organizational structure aspects (e.g., centralization of decision-making, scalar chain and coordination mechanisms) and business process modeling. The main result of the thesis is a new approach for business process modeling. The approach comprises a metamodel for business process modeling with support to business (sub)process patterns based on organizational structure aspects. Additionally, a methodology for business process modeling in the context of the metamodel is also proposed. In the remainder of section 1 the problem that motivates the thesis research as well as corresponding proposal to solve the problem are presented. Section 2 shortly describes the case study developed to discover the candidate patterns. This section also introduces the metamodel for business process modeling. Section 3 briefly characterizes the metamodel methodology for business process modeling. Last but not least, Section 4 gives conclusions and future work. 1.1. Problem Statement and Related Works Recently, business process modeling and workflow process modeling became subject of various specifications and standardization efforts. In the area of workflow patterns, the proposal of Wil van der Aalst [Aalst 2000] is one of the most expressive. However, the patterns are not related with organizational structure aspects. In which concerns metamodels for business and workflow process modeling as presented in [Thom 2005], different consortia including the Business Process Management Initiative (BPMI) as well as the Workflow Management Coalition (WfMC), the World Wide Web Consortium (W3C) and the Organization for the Advancement of Structured Information Standards (OASIS) have proposed different approaches. However, these metamodels present some limitations: • their submodels for organizational structure aspects representation show limited power of expression. Most of them just consider the use of organizational structure aspects in the assignment of task execution performer. • the use of business process patterns based on organizational structure aspects is not considered in business process modeling. Accordingly, the reuse advantages of patterns are not applied in the modeling phase of the workflow project. Therefore the performance and quality of whole workflow project may not be guaranteed. Nevertheless, the workflow process may not represent the real business process as it is executed in the organization hence the organizational structure aspects are limited related with business process modeling. 1.2. The Proposal Aiming to solve the problems outlined in section 1.1, thesis proposal comprises: • 1 Candidate patterns for business (sub)process modeling based on organizational structure aspects1. We call candidate patterns because we agree with the pattern community consensus that a pattern can be established after it is identified in at least 3 real cases. The approach presented in this paper considers only one workflow application, although this application was implemented through a (large) set of workflow process. Accordingly, two more workflow applications are becessary to prove the candidate patterns. Nevertheless, in this papera business (sub)process pattern is understood as a set (one or more) of recurring tasks that can be reused in Examples of organizational structure aspects are: centralization of decision-making in high positions of the prganization and; direct supervision of work (a superior supervises the work of a subordoinate). More examples are in [Thom 2005]. specific situations concerning related organizational structure aspects. The patterns must be stored in the patterns catalogue of the metamodel in development. • Transactional Metamodel of Business Processes. TMBP is an extension of the Transactional Model of the Workflow Processes - TMWP2 [Grefen 1999] with support to organizational structure aspects. The extension mainly focus on: (a) to increase the power of expression of the organizational submodels in business process/workflow process metamodels and; (b) to provide a catalogue of patterns based on organizational structure aspects to be used in business process modeling and workflow process modeling. • Aiming implementation issues we also propose the TMBP methodology. 2. Case Study The candidate patterns for business process modeling were discovered through the development of a case study in a governmental organization. The technique used to discover the patterns is described in [Thom 2003]. In the case study, 3 patterns were discovered [Thom 2003]. Each pattern represents a relationship between one or more aspects of the organization and its more than 60 workflow sub-processes. Next subsection presents an example of pattern described with Buschmann notation [Bushmann 1996] and illustrated with action semantics [Object Management Group 2003]. 2.1. Candidate pattern for document approval The document approval process (see Figure 1) is a sequence of agreements. Each agreement is performed by one organizational role (e.g., manager, director, president of a company). The process ends when all organizational roles performed theirs evaluations or one of then does not agree with the document content. Name: Document Approval Context: In this paper to approve means to make a decision about something that needs to be evaluated (e.g., the evaluation of a document content). Based on it the approval process includes at least two parameters: an item (e.g., document) and an organizational role responsible for the decision task execution. Problem: Depending on the level of decision-making (more or less centralized in the high positions of the organization) the structure of the document approval process may vary. Solution: The document approval pattern is recommend when these two situations are identified: (1) an approval process must be modeled and; (2) the process is executed in a context with high centralization of decision-making and direct supervision of the work (one person responsible for the work of another). The process is composed of four tasks: ToReviewItem; ToRecordSignature; ToGetNumberOfrecordedSignatures; ToAnnulPreviousSignatures. The loop is repeated in the number of organizational roles received via input parameter or one of the organizational roles does not agree with the document content. In this case all performed signatures are annulled and the process must end. Figure 1: Candidate pattern for document approval 2 The Transactional Model of Workflow Processes was developed in the context of WIDE Project. The WIDE Model is composed by three models called: Process Model, Information Model and Organizational Model [Grefen 1999]. OrganizationalRole Item ToReviseItem approve ToRecordSignature ToAnnulPreviousSignature disapprove ToGetNumberOfSignatures Number of signatures Figure 2: An organizational role performs a document review (item). In case it agrees with the document content its signature is recorded. In case it disagrees, all previous signatures (in case they exist) are annulled and the process must end. The actions inside the dashed line are repeated in the number (represented by the four small squares in the dashed line) of organizational roles given by input parameters or a disapproval occurs. 2.2. Introduction to TMBP TMBP is described through the Unified Modeling Language notation. Accordingly, the metamodel is a package composed of five subpackages: PBusinessProcess, POrganizational, PResource, PRouting and PCatalogue (Figure 1). Transactional Model of Business Process (TMBP) POrganizational PResource PCatalog PBusinessProcess PRouting Figure 3: Transactional metamodel of business process Due to space limitation in this paper not all packages of TMBP are described. The description is restricted for those classes instantiated in the specification of the pattern introduced in Section 2.1. A full characterization of the metamodel is in [Thom 2005]. OraganizationalRole in Figure 3 is an instance of the class OrganizationalRole of POrganizational package (Figure 3). This class is linked with Actor (task performer). Additionally, it is associated with OrganizationalUnit (e.g., department, division). Nevertheless, it is a generalization of functional role. A functional role is associated with Skill (e.g., to know how to program in Java) and competence (e.g., may sign orders > than $ 20.000). Organization Actor subordinated of 0.. * 0..* 0..* 0..* 0..* OrganizationalRole 0..* Functional Competence 0..* StructuralAspect 0.. * Figure 4: Organizational package OrganizationalUnit 0..* 0..* 0..* 0..* Skill Item in Figure 2 is an instance of the class ItemType of PResource package. A resource (see Figure 5) is an artefact required for a task execution. It can be: a tool (e.g., word processor, printer) or an item type (e.g., document). Depending on its type an item can have a more complex structure (class SructuredItemType in Figure 5). In this case it is recursively composed of sub-items e.g., an environment process composed of several documents (sub-itens). Resource Tool ItemType StructuredItemType Figure 5: Resource package An instance of the class BusinessProcess (see Figure 6) of PBusinessProcess package transforms an item from an initial state into a final state. Transformations may be decomposed in smaller transformations, where each of them corresponds to a change in the item state. When there are no more transformations to be performed, the item reaches its final state and the organization reaches the aim of its business (in the example of Figure 2, the document is approved or disapproved). Due to its possible high complexity, a business process can be recursively decomposed in to business subprocess, up to the business transaction level. Under the organization’s point of view, a business transaction is the smallest business process unit of work. Each business transaction is responsible for one of the item transformations. BusinessProcess ItemType work item 0..* (from PResource) 1 Actor Subflow (from POrganizational) 1 responsible 0..* SubProcess BusinessTransaction inputs 0..* 0..* responsible 0..* OrganizationalUnit 0..* Resource (from PResource) (from POrganizational) Task Skill SimpleTaskType (from POrganizational) 0..* 0..1 0..* 0..* Routing (fro m PRo uting ) 0..1 next msg SimpleTask SuperTask 0..* 0..* 0..1 previous Manual Figure 6: Business process package Automatic 3. Methodology for Business Process Modeling Based On TMBP TMBP methodology is proposed aiming to achieve implementation issues needed for automatic generation of business (sub)process based on business subprocess patterns stored in TMBP catalogue. Considering the methodology proposed by Electronic Commerce Modeling (ECOMOD) project3, TMBP methodology for business process and workflow process modeling and implementation was developed. The methodology is still subject of discussion and research. Until now it is composed of three steps: • Creation of business process models based on TMBP. The task of this step is the creation of business process models as described in Section 2.1. • Automatic generation of BPEL4WS [Andrews 2003] processes corresponding to the business process models defined in step 1. This step should results in process description as the one presented in Figure 7. • Execution of BPEL4WS process through whatever workflow engine. 3.1. Mapping TMBP business process to BPEL4WS process This section presents some rules for mapping a TMBP process example (as shown in Figure 2) to a correspondent BPEL4WS process. These rules are to be used in the context of the second step of TMBP methodology. Rule for “parameter” mapping: In Figure 2 an organizational role (responsible for a document approval) is received as input parameter. In BPEL4WS this situation is represented with an invoke activity (as shown number 1 of Figure 7). Mapping rule for “decision task”: The decision node (illustrated in Figure 2 as a diamond) is mapped to BPEL4WS as a switch statement. Mapping rule for “record task”: According with Figure 2, the result of a decision can be an approval or a disapproval. If approved the signature or an indication of it needs to be recorded. In BPEL4WS this situation is mapped through an operation (recordsignature). A variable counts the number of signatures to be used in case of disapproval (see number 2 in Figure 7). Mapping rule for “cancel performed task”: If disapproval occurs all previous signatures (in case they exist) must be cancelled. In BPEL4WS this situation can be expressed through a while statement and through an operation (“anulSignature” as shown number 3 and 4 of Figure 7). Process Description (port type description and message description are left out). 3 ECOMOD project was funded by the German National Research Foundation. The project focuses on the development of enterprise models as well as conceptual foundation for cross-organizational business processes and corresponding versatile platforms for electronic trading [Frank 2004]. The Multi-Perspective Enterprise Modeling (MEMO) was created in ECOMOD context. MEMO is a method for the modeling of organizations according to different views as well as different levels of abstraction [Jung 2004]. <process name=“documentApproval”> (1)<invoke partnerLink=“reviewer” portType=“itemReviewerPT” operation=“reviewItem” variable=“review” <correlations> <correlation set= “itemID” initiate=“yes”/> </correlations> </invoke> <switch> <case condition = “bpws:getVariableProperty(‘review’)=“true” <sequence> (2) (3) (4) <invoke partnerLink=“requester” portType=“signaturePT” operation= “recordSignature” from expression= “bpws:getVariableData(‘signatureCount’) + bpws:getVariableProperty(‘auxSignatureCount’ )to variable=‘signatureCount’/> </invoke> </sequence> </case> <otherwise> <while condition = “bpws:getVariableProperty(‘signatureCount’)>0 <sequence> <invoke partnerLink=“requester” portType=“signaturePT” operation= “annulSignature” from expression= bpws:getVariableData(‘signatureCount’) bpws:getVariableProperty(‘auxsignatureCount’ ) “/></invoke></sequence></while> “bpws:getVariableData(‘signatureCount’)= 0 </otherwise> from expression= “bpws:getVariableData(‘numberOfOrganizationalRoles’) bpws:getVariableProperty(‘auxnumberOfSuperiorPositions’) “/></switch></process> Figure 7: TMBP process as BPEL4WS process 4. Conclusions and Future Work With an example of business subprocess patterns identified through the development of a case study in a governmental organization, the transactional metamodel for business process modeling (TMBP) was introduced. The main goal with the metamodel is to provide a bridge between OSA and business (sub)process, minimizing the complexity of business process modeling and at the same time improving the efficiency and quality of it. Furthermore, through business pattern reuse, the productivity within the workflow modeling process is expected to increase. The final remark demonstrated how BPEL4WS might be used in the description of executable business subprocess patterns that support organizational structure aspects. BPEL4WS will become the execution language for business (sub)processes with tool support and platform independency. The thesis approach automatically maps TMBP processes to BPEL4WS processes by generating executable BPEL4WS from TMBP specifications. Last, but not least, TMBP provides a high level specification that supports semi-automatic selection of patterns. As future work TMBP must be extended with different kind of process (technology dependent process versus informational subprocess) and respectively related organizational structure aspects. Additionally to deeper investigate the way patterns should be represented as well as stored, and queried in the pattern catalogue of TMBP as well as to look for adequate inference engines that can answer queries to the catalogue with minimum human interference. Furthermore, to validate TMBP through the application of the metamodel in real study cases. References Aalst, W. van der et al. Et al. (2000) “Advanced Workflow Patterns”. In: International Conference On Cooperative Information Systems, COOPIS, 7. Proceedings… Berlin: Springer-Verlag, p. 18-29. (Lecture Notes in Computer Science, v. 1901). Andrews, T. et al. (2003) “Business Execution Language For Web Services. (Version 1.1)”. Available at: <www.ibm.org>. Visited on June 2004. Buschmann, F. et al. (1996) “Pattern-oriented software architecture”: a system of patterns. New York: John Wiley. Frank, U.; Lange; C. (2004) “Mapping Business Processes to Workflows”. Available at: <http://www.uni-koblenz.de/~ecomod/php/index.php> Grefen, P.; Pernici, B.; Sánchez, G. (1999) “Database Support for Workflow Mangement”: The WIDE Project. Boston: Kluwer Academic. Jung, J. (2004) “Mapping of Business Process Models to Workflow Schemata – An Example Using MEMO-OrgML and XPDL”. Available at: < http://www.unikoblenz.de/FB4/Institutes/IWVI/AGFrank/Publications/>. Mühlen, M. zur. “Evaluation of Workflow Management Systems Using Meta Models” (1999) In: 32nd Annual Hawaii International Conference on Systems Sciences. Minitrack: Workflow and Reengineering on the Internet. Wailea. Object Management Group. (2003) “UML 2.0 Superstructure Specification”. Available at: <http://www.omg.org/technology/documents/formal/uml.htm>. Thom, L.; Iochpe, C. (2003) “Identifying Patterns of Workflow Design Relying on Organizational Structure Aspects”. In: 5th International Conference On Enterprise Information Systems. Proceedings… Angers: ICEIS Press. Thom, L.; Iochpe, C. (2004) “Identifying Patterns of Workflow Design Relying on Organizational Structure Aspects”. In: 5th International Conference On Enterprise Information Systems. Proceedings… Angers: ICEIS Press. Thom, L.; Iochpe, C., M., Bernhard. (2005) “Improving the Workflow Project Quality Via Business Process Patterns Based on Organizational Structure Aspects”. In: 1st GI Workshop XML4BPM 2005 - XML for Business Process Management at BTW. Proceedings…Karlsruhe Germany.