行政院國家科學委員會專題研究計畫 成果報告
商業流程階層化方法之研究 研究成果報告(精簡版)
計 畫 類 別 : 個別型
計 畫 編 號 : NSC 96-2221-E-011-024-
執 行 期 間 : 96 年 08 月 01 日至 97 年 07 月 31 日 執 行 單 位 : 國立臺灣科技大學工業管理系
計 畫 主 持 人 : 歐陽超
計畫參與人員: 碩士班研究生-兼任助理人員:王碩宏 碩士班研究生-兼任助理人員:李華峻 碩士班研究生-兼任助理人員:葉宗昀 碩士班研究生-兼任助理人員:鄒錦銘
報 告 附 件 : 出席國際會議研究心得報告及發表論文
處 理 方 式 : 本計畫涉及專利或其他智慧財產權,1 年後可公開查詢
中 華 民 國 97 年 10 月 16 日
An Approach to Transfer an EPC based Business Process Model into a Hierarchical Function Model
C. Ou-Yang S.H. Wang
Department of Industrial Management
National Taiwan University of Science and Technology 43, Sec. 4, Keelung Rd.
Taipei, Taiwan, 106
(Submitted to Expert System with Applications, ESWA)
Abstract
With the increasing complexity of business process, to offer an effective and efficient process modeling tool is an important issue. Currently, a process model was usually included a lengthy process contained many process components and hence might be difficult to study by the users as well as the managers.
Another concept, functional approach, was also widely used by business modelers. Many tools applied the hierarchical concept to build a functional model.
That is, a macro model was developed in the top level, then, the detailed models were built in the lower level to form a tree style. In other words, in the hierarchical approach, the more detailed model can be found in the lower level and the more abstract model can be specified in the higher level.
In this paper, an approach transferred an Event Process Chain (EPC) based process model into the respective hierarchical functional model was proposed. The proposed approach would identify the structure errors in a process model and then modified it to a structured process model. Then a blocking approach would be used to group sets of process elements into several sub-function units and to form a hierarchical model.
Key Words: Hierarchical Model, Process Model, Event Process Chain (EPC)
1. Introduction
The approach of business modeling has been addressed recently due to the implementation of business application technologies such as ERP. A business model would be developed to incorporate with the development of an ERP software such as the “best practice” model for SAP. In most of the cases, the business models would be specified in terms of the process. For examples, SAP applied EPC (event process chain) approach to specify its business model. A business process such as ordering process would be described in terms of EPC. An ERP user should be familiar with the process while using the software. However, in the real case, a process model usually included a lengthy process contained many process components and hence might be difficult to study by the users as well as the managers.
In addition to model a business from its process point view, functional approach was widely used by business modelers. Many tools such as IDEF or ARIS applied the hierarchical concept to build a functional model. This concept was expressed in the upper part of Fig-1. In this approach, a macro model was developed in the top level, then, the detailed models were built in the lower level to form a tree style. In other words, in the hierarchical approach, the more detailed model can be found in the lower level and the more abstract model can be specified in the higher level.
Therefore, one can study the business model from a macro level to the detailed level or vise versa. One of the benefits of this approach was that a model can be studied from the abstract level to the detailed level. There would be no lengthy model in a sub-level of a hierarchical model. In addition, a manger only needed to study the properly abstract model and let the detailed parts to carry out by the subordinate users.
As just mentioned, many business model used by ERP were specified in terms of process and hence might be too detailed to study by management level. On the other hand, a hierarchy functional model can represented a model from its abstracted point of view and hence might be suitable for the management level to study. However, there still lacks a bridge to link the process model and its respective hierarchical model (Fig-1).
In this paper, an approach transferred an EPC based process model into the respective hierarchical functional model was proposed. The proposed approach would identify the structure errors in a process model and then modified it to a structured process model. Then a blocking approach would be used to group sets of process elements into several sub-function units and to form a hierarchical model.
2. Background
Due to the application of information technology in the workflow and ERP areas, various kinds of issues have been addressed on applying business modeling
technologies to support the building of ERP reference models. Most of the modeling methods in the late 80s were focused on developing a comprehensive approach in a specific domain. Very few techniques have addressed on bridge the gaps among the domains. This situation has been changed in the mid 90s when certain approach has focused on integrating the modeling concepts from various perspectives. Then, in the early 2000, due to the application of IT in business, several modeling approaches have considered the environment of automated workflow systems. In addition, the theories of analyzing a developed workflow model to verify its effectiveness have been addressed. Many approaches were based on Petri-net since it has a very solid theory background to support the modeling and analysis tasks. The following review would focus on some of the topics stated in this paragraph.
As just mentioned, most of the modeling methods were focused on a specific domain, such as IDEF0, IDEF1X and IDEF3 were addressed on modeling function, information and process areas respectively [Vernadat 96]. Although there were not formal definitions about the integration of various IDEF approaches, several works have developed their own techniques to integrate different IDEF methods in a business framework [Doniavi 00], or a CIM system [Lingzhi 96].
Various researchers have applied IDEF approach in various domains such as a comprehensive IDEF modeling approach has been developed and applied in the manufacturing, [Cheng 99]. Another IDEF0 model has been developed to specify the integration of a maintenance system into MRPII [IP 00]. In addition, several works has been focused on integrate IDEF with other modeling approach such as UML [Kim 03] [Dorador 00].
Since early 90’s, several works has addressed on integrating various kinds of modeling techniques as a comprehensive approach to support business modeling.
Among those, CIMOSA and ARIS applied similar approach to build a business model.
[Vernadat 96] [Sheer 94]. Both approaches model a business from four points of view:
organization, information and function, and process view. In addition, both methods had adopted a tree-stage modeling approach, requirements definition, design specification and implementation, to develop a complete business model.
The difference between these methodologies might be ARIS concept had integrated three business views: organization, information and function, into process view. As to the CIMOSA, it had categorized business models as three layers: generic, partial and particular. In addition, CIMOSA also provide modeling templates in various views to regulate the modeling works.
Most of the research applied ARIS concepts were addressed on modeling business activities from multiple views. For instance, a customer relationship system was designed and analyzed through the four viewpoints [Chang 06]. Another work was
addressed on integration the information view into a process model in a PDM/ERP collaboration system [Ouyang 02]. As to the works related to CIMOSA, many works were addressed on applied the templates and constructs to develop a CIMOSA model in various fields such as production planning [Ortiz 99], re-engineering [Abdmouleh 04], and software system selection [Naeger 95].
In the recent years, due to the fast development of information technology, several modeling methods have embedded web-based concepts into the approach.
Among those, the most well-known technique probably was BPMN (Business Process Modeling Notation). It was developed by BPMI (Business Process Management Initiative) as a standard for business process modeling. “The primary goal of BPMN is to provide a notation that is readily understandable by all business users, from the business analysts that create the initial drafts of the processes, to the technical developers responsible for implementing the technology that will perform those processes, and finally, to the business people who will manage and monitor those processes” [BPMN 04].
BPMN also provided a mapping to an XML based BPM (Business Process Management) execution language BPEL4WS. Therefore, the business process can be defined in terms of BPMN notations and then transferred into BPEL4WS oriented XML language. The transferred XML business process can be executed in the web service environment.
Performance evaluation of workflow systems has been studied by many researchers. Petri net (PN) is one of the most popular methods used to model the systems. Basically, PN properties can be divided as behavior properties and structure properties. The former one was related to the flow of the tokens in the net such as reachabilities, liveness and boundness. The latter one was related to the entire structure of the net such as consistency and conservativeness [Murata 89].
Several researchers also worked on developing the PN schema to represent certain characteristics of business processes. For instance Choi et al. have proposed a colored PN called “Test Net” to represented the concepts of AND/OR/Join/Split proposed by WfMC (Workflow Management Coalition) [Choi 02]. Coves et al. defined the business models as three categories: forward; backward and mutual, and developed the related PN model for each category [Coves 98]. Buhler et al. utilized BPEL4WS (Business Process Execution Language for Web-Service) to model the workflow in an agent-based system and then transferred the model into PN for further analysis [Buhler 05]
Recently, the process modeling approach, event process chain (EPC), has been addressed by many researchers. For instance, a well structured EPC model has been defined such that certain structure error such as deadlock and multiply instance would
not take place [Wiley 97]. In addition, a few researchers have studied the properties of structured model in terms of analyzing the corresponding relationships of the control elements in an EPC model [Aalst 99][Liu 05]. Another approach, graph reduction, was addressed on removing the correct structure from an EPC model step by step based on certain developed rules. The left portion of the model was the place where improper structure might take place [Lin 02]. Finally, an approach which can transfer an EPC model into its corresponding PN model has been developed [Verbeek 01].
Based on this work, certain PN behavior properties such as liveness or boundness can be used to analyze an EPC model.
As just mentioned, certain modeling approach such as IDEF0 and ARIS have embedded the hierarchical modeling concepts such that the reader can view the model from the top level abstract view to the lower level detailed view. However, other process modeling tools such as EPC do not have this perception. It would be very easy to construct a lengthy and complex model and hence cause the readers difficult to study the model. Therefore, this work would tend to develop an approach to transfer an EPC process model into a hierarchical model, and to support the feasibility of viewing the process model.
3. The Proposed Approach
Fig-2 shows the three-level framework of the proposed approach. In the conceptual level, the process model structure will be analyzed such that certain improper structure behaviors would be modified. Then, the structured model would be grouped as several blocks and to form a tree structure and to build a hierarchical business model.
In the design level, the business model would be constructed in terms of EPC (event process chain) diagram. Then the improper structure such as improper nesting, deadlock and multiple instances of an EPC model would be analyzed and corrected.
Finally, the structured EPC model would be grouped as several main blocks and sub-blocks. The grouped EPC model would then be transformed into a hierarchy model.
In the final level, the design-specification level, the EPC model would be constructed by using ARIS modeling tool. The XML file of the model would be generated. A Java based XSLT (XML Translation Template) template would be developed to translated the XML into EPML (EPC XML) file. The translated file would be the input of software EPC Tools. The unstructured model would be identified by the tool. In addition, the category of the improper structure also would be identified and modified to a structured model. This model would be grouped as several blocks in terms of the developed algorithm. The hierarchy structure of the
EPC model would then be constructed in terms of a Java based tools developed by this research.
3.1 The Conceptual Level
As mentioned before, the main concept of this research was to propose an approach such that a process model can be viewed hierarchically. However, in order to build a tree-structure model, it is necessary to modify an improper model into hierarchical form. Therefore, the improper process must be defined and identified first.
In addition, how to modify various kinds of unstructured models into their respective structured model also should be specified first. Then, the next step was to develop an approach to group a structured model into several main blocks and sub-blocks and to build a hierarchical model based on the blocked model.
3.2 The Design Level
In this level, an approach to convert an unstructured business model to a structured model would be specified. The improper structure would be identified first.
Then, the constructs caused the improper structured would be found. An approach modifying the constructs and to convert an improper structure to a proper structure would be proposed. Then, the next stage was to convert a structured model to its hierarchical form. An approach would be used to group a structure model into several main blocks contained respective-sub-blocks, and then to convert the grouped blocks into a tree structure.
3.2.1 Improper Structure Modification
Fig-3 shows the approach to transfer an improper structure to a proper structure.
The first stage was to examine the improper structure of the process model, and the second stage was to analyze the semantic errors of the model.
There were two situations caused an improper structure in a process model [Liu 05]. One was “mismatched split-joint pairs”, and another was due to “improper nesting”. Basically, a pair of corresponding control elements in a process model would be a matched split-joint pairs if either AND Split v.s. AND Join, OR Split v.s.
OR Joint, or XOR Split v.s. XOR Joint. Otherwise, there would be a mismatched split-joint pairs occurred. In addition, if two sets of matched split-joint pairs were not completely in a common path, the improper nesting would be occurred. For detailed definitions of this two terms, please refer to [Liu 05].
For an improper structure model, the process behaviors might contain two kinds of semantic errors [Cuntz 05]. They are deadlock and multiple instances. Basically, most of the situations were due to the unmatched pairs of control elements.
After examining the situations of improper structure and semantic errors, following combinations might take place: (1) the occurrence of improper structure and multiple instances; (2) the co-existence of improper structure and deadlock, and (3) the occurrence of deadlock and multiple instances.
For the first situation, it was required to modify the improper nesting structure into proper hierarchical structure and then to analyze the corresponding control elements to solve the multiple instance problem.
As to the second situation, that was co-existence of improper structure and deadlock. In addition to solve the improper structure problem, it was also necessary to identify the improper corresponding control elements and to solve the deadlock problem.
For the final situation, that was the occurrence of deadlock and multiple instances.
Since both of these situations were due to the improper of corresponding control elements, analyze and modify of the corresponding elements would be necessary.
Based on the above discussion, it can be found that there were three situations should be solved: the improper structure; the deadlock, and the multiple instances.
As for the approach to modify an improper structured model into a structured model, this research applied the nesting model transformation method developed by Liu et al. [Liu 05]. Basically, this approach first identified the corresponding control elements and to determine whether an improper nesting model can be transformed or not. Then, this approach would re-draw the process links to transform a transferable un-nested model into a nested model.
As for the deadlock situation, since it might due to the unmatched pair of control elements, change the Boolean operators in the control constructs were necessary. One case was XOR Split v.s. AND Joint or OR Split v.s. AND Joint for a pair of corresponding control elements. Therefore, the way to correct this error was to modify the joint node to the same type as the split node as shown in Fig-4. Another case was due to the mismatched control elements. For example, in Fig-5, there was no matched control element for the two XOR nodes (node 2 and 3). Therefore, it should add a pair of XOR nodes to the model and modify node 4 as an OR node. The correct model would be a nested model.
Finally, for the multiple instances condition, it might be either the AND Split v.s.
OR Joint, or AND Split v.s. XOR Joint occurred in a pair of corresponding control elements. Therefore, the joint node should be modified as the same type as the split node as shown in Fig-6.
3.2.2 Hierarchical Model Development
Once a process model has been transferred to a structure model, the next task was
to construct a hierarchical form for this model. There are two main tasks in this stage:
to group the model into to several blocks based on the corresponding control elements, and then to develop the tree structure for this model based on the grouped blocks.
The first stage was to group the model constructs into several blocks as shown in Fig-7. An approach applied the concepts of finding corresponding control elements in a process model, and then to form a group of blocks has been developed. The model in Fig-8 would be used as an example.
The following symbols would be defined first:
SP={spi, i=1..n} : a set of split control nodes in a process model.
JP={jpj, j=1..n} : a set of joint controls in a process model.
1 2
{ , ,... }
i i i i
n
sp sp sp sp
i = l l l : a set of links connected from split node spi.
1 2
{ , ,... }
j j j j
n
jp jp jp jp
i = l l l : a set of links connected to joint node jpj.
FPATHi,j={p1i j, ,p2i j, ,...pni j, }: a set of paths from a split node spi to a joint node jpj
, , , ,
,1 ,2 ,
[ , ,.... ]
i j i j i j i j
k k k k n
p = l l l : a path in a process model which is composed by a list of links
, , i j
lk n in a sequence order.
, , , ,
, , 1 ,1
[pki j T] =[lk ni j,lk ni j− ,... ]lki j : a reversed path for pathpki j, .
RPATHj,i={p1j i,,p2j i,,...pnj i,}: a set of reversed paths from a joint node jpj to a split node spi
For example, in Fig-8, the split node set and joint node set can be represented as SP={n1, n2}, JP={n3, n4}. There are two links connected to n1 and n4 respectively.
Therefore, ln1={pa, pi}, and ln4={ph, pk, pl}. In, addition, there are three paths from split node n1 to joint node n4, and hence it can be specified as:
FPATHn1,n4={p1n n1, 4,p2n n1, 4,p3n n1, 4}. Each of the three paths can be represented as:
1, 4
1n n [ , , , , , ]
p = pa pb pc pe pg ph ,p2n n1, 4 =[pa pb pd pf pg ph, , , , , ],
1, 4
3n n [ , , , ] p = pi pj pk pl
In addition, there are three reversed paths from joint node n4 to the split node n1.
Therefore, it can be written as RPATHn4,n1={p1n n4, 1,p2n n4, 1,p3n n4, 1}. Each of the three
paths can be represented as:
4, 1
1n n [ , , , , , ]
p = ph pg pe pc pb pa ,p2n n4, 1=[ph pg pf pd pb pa, , , , , ],
4, 1
3n n [ , , , ]
p = pl pk pj pi . It can be found that [pki j T, ] = pki j, in this case.
Based on the above definitions, a pair of corresponding control elements can be defined as
Definition 1:
For a split control elementspi∈SP, if there exists a joint element jpj∈JP, such that:
1. For each element
i i
k
sp sp
l ∈l , there exist at least an element
, ,
i j i j
pk ∈FPATH such that ,
i
k i j
sp k
l ∈p
2. For each element lkjpj∈ljpj, there exist at least an elementpkj i, ∈RPATHj i,
such that lkjpj∈pkj i,
3. For each element p in FPATHi jk, i,j,, there exists an element p in RPATHkj i, j,i,
such that [p ]ki j, T=p . kj i,
4. spi and jpj have the same Boolean type (AND, OR, XOR), Then, (spi, jpj) will form a pair of corresponding control points.
The first and second conditions indicated that each of the links connected to either a split node or joint node must be in one of the path from the split node to the joint node or vise versa. The third condition specified that for each path from the split node to the joint node, there exists a corresponding reversed path from the joint node to the split node.
For instance, in Fig-8, split node n1 and joint node n4 would forms a pair of corresponding control points. Then,
1.pa l∈ andn1 p1n n1, 4∈FPATHn n1, 4, p2n n1, 4∈FPATHn n1, 4 such that
1, 4 1
pa∈pn n and pa∈p2n n1, 4. In addition, pi l∈ and n1 p3n n1, 4∈FPATHn n1, 4such
thatpi∈p3n n1, 4.
2. ph l∈ andn4 p1n n4, 1∈RPATHn n4, 1, p2n n4, 1∈RPATHn n4, 1 such that
4, 1 1
ph p∈ n n and ph p∈ 2n n4, 1. In addition, pk l∈ and n4 p3n n4, 1∈RPATHn n4, 1such
thatpk∈p3n n4, 1.
3. This condition has been specified in the previous paragraph. It can be found that for eachpkn n1, 4 in FPATHn1,n4, and for each pkn n4, 1 in RPATHn4,n1, such
that[pkn n1, 4]T = pkn n4, 1for k=1,2,3.
4. Both of the node n1 and n4 are AND nodes,
On the other hand, split node n1 and joint node n3 cannot form a pair of corresponding control points sincepa l∈ n1 pi FPATH∉ n n1, 3.
Based on the above definition, an algorithm can be developed to form pairs of split/joint nodes. Then, for each pair, all of the constructs in the path, including the control nodes, event nodes and function nodes would be grouped as a block as shown in Fig-7.
The final step in this stage was to build a hierarchical function model according to the information about the split/joint nodes and the grouped blocks. For instance, In Fig-9-1, the constructs between the control nodes 4 and 10 can be grouped as a block (block A). In addition, the constructs between control nodes 11 and 14 also can be group as another block (block B). Then, the constructs between the control nodes 3 and 16 can be grouped as a higher level block (block C). Finally, the rest of constructs can be formed as a group. The resulted hierarchical model was shown in Fig-9-2.
An algorithm has been developed to construct the tree model. There is one assumption has been made while developing this algorithm. That is in an ordinary EPC model, each event construct usually should follow a function construct. However, in this work, the event construct would not be considered in the building of the hierarchical model since each functional construct in the model would have a corresponded event construct.
The additional symbols were required to specify the algorithm.
fi: a function construct, where i=1..n
k
F : the kth function block in the level i of the tree model. i
Based on the above two definitions, a hierarchical model can be defined as:
Definition 2:
An hierarchical business model be represented as F ={ik Fi+k1+1,Fik+1+2,…, f ,j fj+1,.. }.
Where
i: indicates the level of the tree
k
F : indicates the root node of the in level i of the tree. Its leaf nodes can be i
composed of a set of function block and/or a set of functional constructs.
Based on the above definition, the hierarchical model for the process shown in Fig-9-2 can be specified as:
1
F ={P F , f2C 2, f17}, F ={2C F ,3A F }, 3B F ={f3A 6, f7} and F ={f3B 13}.
The hierarchical model construction algorithm can be specified as:
1. Start from the root node of the tree. That is FiPand i=1.
2. Find the first function node fj in the process model and add into the current level function block F =iP F +fiP j.
3. Travel to the next node or stop search in the end of the process path
3.1 If that node was another function node fj+1, then let F =iP F +fiP j+1 and go to Step 3.
3.2 If that node was a split control node sp, then
3.2.1 Find its corresponding control element jp based on Definition 1, and go to Step 3.
3.2.2 Generate a next level leaf node Fiα+1and add into F . That is iP
P
F =i F +iP Fiα+1.
3.2.3Let the leaf node be the next level root node Fi+P1=Fiα+1, and increase the level counter i=i+1, and for each spited path, go to Step 3.
Let’s use the EPC model in Fig9-1 as an example. As just mentioned, the event nodes in the model would not be considered. The hierarchical model generation sequence would be:
i. Generate root node F 1P
ii. Find the first function node (node-2), let it be f2 and add toF . 1P
iii. Travel to the next node (node-3). Since it’s a split control node, then use step 3.2 in the algorithm.
iv. For Step 3.2.1, find the corresponding control element for node-3. That would be node-16.
i. Back to Step 3 to find the next node was a function node f17. According to Step 3.1, add that node toF . 1P
ii. Back to Step 3 again, and find the end of the path, stop the search of this path.
v. For Step 3.2.2, generate a next level functional blockF2Cand add intoF . 1P
vi. For Step 3.2.3, letF2Cbe the next level root node. For each of the split path, go to Step 3.
The rest of the process would add to sub-function blocks (F ,3A F ) 3B into root
2
FCsince there were two split nodes (node-11 and node-5) in the path. Then, for each of the function block, certain function nodes (f6, f7, f13) would be added separately. The final hierarchical model would be (Fig 9-2):
1
F ={P F , f2C 2, f17}, F ={2C F ,3A F }, 3B F ={f3A 6, f7} and F ={f3B 13}
3.3 The Implementation Stage
In this level, the EPC business model would be constructed in ARIS. The XML file of the model would be exported and translated to an EPML (EPC Markup Language) file through a Java based XSLT translation templates developed by Mendling et al. [Mendling 04]. This EPML file would then be the input of another tool “EPC Tools” to check the semantic of the model [Cuntz 05]. This tool would simulate the EPC process model and identify the improper structure of the model.
Then, the model should be modified by the analyzer based on the modification principles developed by this research. The structured model would then be analyzed by a Java based algorithm to translate to a model represented by a set of blocks. This model would then be transferred to a hierarchical tree model by another Java based
module.
4. The Empirical Application
In this section, an empirical EPC model has been constructed in ARIS Tool (Fig-10). This initial model was an unstructured model contained certain semantic errors such as improper structure, multiple instance and deadlock. The XML of this file will be transferred to EPML through a commercial XSLT translation tool (XsltEditor) developed by Raben System. Through the translation, a code would be assigned to each construct of the EPC model. For instance, in the block-1 of the EPML model showed in Fig-10, ID-139 indicated an arc linked from construct with ID “62” to another construct with ID “33”.
The generated EPML file of the empirical model would then be imported to an EPC simulation tool “EPC Tools”. Basically, a “folder” would be given in the initial construct of the path which planned to be simulated; the folder would stop while there was a semantic error occurred. For instance, in Fig-11-1, a folder has been put in the starting point of the model, and it has stopped in two subsequent process paths due to semantic errors taken place. Since this tool would not specified the kind of error occurred. The user need to find the error type and to modify it based on the approach specified in section 3.2.1.
In addition to the semantic error detection and modification, this empirical model also contained improper nesting structure. The situation should be identified by the analyzer and then used the approach specified in section 3.2.1 to modify it.
For instance, the EPC tools would identify an error in a process block contained a XOR split node and an AND joint node. Based the information in Fig-4, it could be found that a deadlock would occur and the joint node should be modified as XOR to avoid it (Fig-12-1). In addition, in Fig-12-2, another “multiple instances” error could be found and hence could be fixed by applying the information in Fig-6. Finally, the improper nesting in the model also should be modified as shown in Fig-12-3. Through these modifications, the final structured empirical model was showed in Fig-13.
The next stage was to find pairs of corresponding control points. Based on the definition and approach specified in section 3.2, a Java based module was developed.
This module use JAXB (Java Architecture for XML Binding) as the core to search the EPML file of the respective structured EPC model. The search results would be shown in a table. For instance, for the empirical model shown in Fig-14-1, it could be found that there were two pairs of corresponding control points (Node-32, Node-34;
and Node-62, Node-64). These two pairs could be found in the top and bottom rows in the output table of the module. There are six columns in this table. The first column indicated the ID of the split node (Fig-14-2). The second and third column showed the
predecessors and successors of the split node. Also, the fourth row indicated the joint node and the fifth and sixth rows showed the predecessors and successors of the joint node.
For instance, in the first row, the split node was Node-32-XOR. Its predecessor was Node-46 Function 1, and the successors were Node-37 Event 5, Node-62 XOR and Node-66 Event 4 respectively. In addition, the corresponding control node was joint node Node-34-XOR. Its predecessors and successor were Node-9 Event7, Node-37 Event 5, Node-64 XOR; and Node-18 Function 4 respectively. The similar information about another control pairs, Node-62 and Node-64, could be found in the bottom row of Figure-14-2.
Once all of the corresponding control points have been identified, the next stage was to construct the hierarchical tree model. Another Java module, which take the table of control pairs as input and used the function block/function tree construction algorithm specified in section 3.2.2, was developed. Fig-15 showed the constructed hierarchical tree model about the empirical EPC model. As mentioned before, only the functional constructs would be specified in the tree model. It could be found that, instead of the root node in the level-1, there were four nodes in the level-2 of the tree (Node-32; 50; 5, and 42). Each node has its subsequent lower level nodes. For instance, for the root node 32 in the top of the EPC model, it has another lower level tree structure leaded by node 62 as the root. In, addition, there was another lower level node, Function 3, showed in the tree. It should be noticed that, although there were three split links for node 32, one of the branch only contained an event node and hence was not considered by the algorithm.
5. Conclusion and Discussion
An approach to identify the functional hierarchy from an EPC model and then to construct a tree model was proposed in this work. This work can be used to support the feasibility of viewing a complex process model from its abstract level to the detailed stage. The major contributions of this paper are:
1. A structural approach which modified an unstructured EPC model and then converted into a hierarchical tree model was developed.
2. An approach to find the pairs of corresponding control elements from an EPC model has been defined and developed.
3. An approach to construct a hierarchical tree model from an EPC model according its corresponding control elements have been defined and developed.
However, there are some works still worth to do in the future:
1. Analysis the diversity of the process flow after the logic change of the control elements.
In this work, in order to have a proper structure EPC model, a pair of corresponding control elements should have a common control type. However, the change of the control type might affect the decision flow of the process model.
Therefore, it should have an approach to analyze the influence of the process flow after modifying a control element in a model.
2. Extract the abstract meaning of a functional block.
In this work, once a functional block has been identified, the label of the leading function would be used as a tag of the function block. However, in the real world, this approach might not be suitable for a block with many constituted functional elements. An approach to analyze the semantic meaning of the related labels and relationships of the functions in order to find a proper semantic label to represent the function block is required.
Reference
[Abdmouleh 04] Abdmouleh,A., Spadoni,M., and Vernadat, F., “Distributed Client/Server Architecture for CIMOSA-based Enterprise Components”, Computers in Industry, Vol.55 (2004), p239-p253.
[Aalst 99] Aalst van der, W. M. P., “Formalization and Verification of Event-Driven Process Chains,” Information and Software Technology, Vol.41, 1999.
[BPMN 04] Business Process Modeling Notation Version 1.0 (BPMN), BPMI , May 2004.
[Buhler 05] Buhler, P. A. and Vidal, J. M.,“Towards Adaptive Workflow Enactment Using Multiagent Systems”, Information Technology and Management Journal, Vol.6, No.1, 2003, p61-p87.
[Chang 06] Chang, H.K.C., “The Design and Analyses Customer Relationship Management Using ARIS Technique”, International Journal of Management and Enterprise Development, Vol.3, No.1/2, 2006, p1-p28.
[Cheng 99] Cheng-Leung, A., Pheng, K. L., and Leng, G. R. K., “IDEF: a comprehensive modeling methodology for the development of manufacturing enterprise systems,” International Journal of Production Research, Volume 37, No.17, 1999.p3839-p3858.
[Choi 02] Choi, I., Park, C. and Lee, C., “A Transactional Workflow Model for Engineering/manufacturing Processes”, International Journal of Computer Integrated Manufacturing, Vol. 15, No.2, 2002, p178-p192.
[Coves 98] Coves, C. , Crestani, D. & Prunet, F., “Design and Analysis of Workflow Processes with Petri Net”, Proceeding of IEEE International Conference on Systems, Man, and Cybernetics, Vol.1, 1998, p101-p106.
[Cuntz 05] Cuntz, N. and Kindler, E. ”On the Semantic of EPCs: Efficient Calculation and Simulation,” Business Process Management, Proceeding of 3rd International Conference BPM 2005, Nancy, France, 2005, p398-p403.
[Doniavi 00] Doniavi, A., Mileham, A. R., and Newnes, L. B., “A systems approach to photolithography process optimization in an electronics manufacturing environment,” International Journal of Production Research, Volume 38, No.11, 2000.
p2515-p2528.
[Dorador 00] Dorador, J.M., Young, R.I.M., “Application of IDEF0, IDEF3 and UML methodologies in the creation of information models”, International Journal of Computer Integrated Manufacturing, Vol.13, No.5, 2000, p430-p445.
[IP 00] IP, W.H., Kwong, C.K., Fung, R., “Design of Maintenance System in MRPII”, Journal of Quality in Maintenance Engineering, Vol.6, No.3, 2000, p177-p191.
[Kim 03] Kim, C. H., Weston, R. H., Hodgson, A., and Lee, K. H., “The complementary use of IDEF and UML modeling approaches,” Computers in Industry,
Vol. 50, Issue 1,2003, p 35-p56.
[Lin 02] Lin, H., Zhao, Z., Li, H., and Chen, Z., “A Novel Graph Reduction Algorithm to Identify Structural Conflicts,” In Proceedings of the Thirty-Fourth Annual Hawaii International Conference on System Science, IEEE 2002.
[LIU 05] Liu, R and Kumar, A. “An Analysis and Taxonomy of Unstructured Workflows”, 3rd International Conference, BPM 2005.
[Lingzhi 96] Lingzhi, L, Leong, C.N., Gay, R.K.L., “Integration of Information Model (IDEF1) and Fucntion Model (IDEF0) for CIM Information System Design”, Expert Systems with Aplications, Vol.10, No. 3/4, 1996, p373-p380.
[Mendling 04] Mendling, J., and N¨uttgens, M., “Transformation of ARIS Markup Language to EPML,” In: M. Nüttgens, F.J. Rump, eds.: Proc. of the 3rd GI Workshop on Event-Driven Process Chains (EPK 2004), 2004, p27-p83.
[Murata 89] Murata, T. “Petri Nets: Properties, Analysis and Applications”, Proceedings of the IEEE, Vol. 77, No. 4, April 1989, pp.541-580.
[Naeger 95] Naeger, G. and Rembold, U., “An Integrated Apporach to Software Systems Planning and Selection Based on CIMOSA Models”, Control Engineering Practice, Vol. 3, Issue 1, (1995) p97-p103.
[Ouyang 02] Ou-Yang C, Jiang TA Developing an Integration Framework to Support the Information Flow between PDM and MRP. International Journal of Advanced Manufacturing Techonology Vol. 19, p131–p141
[Ortiz 99] Ortiz, A, Lario, F, Ros, L, and Hawa, M., “Building a Production Planning Process with an Approach Based on CIMOSA and Workflow Management Systems”, Computers in Industry, Vol.40 , 1999, p207-p209.
[Sheer 94] Sheer, A.W., Business Process Engineering-Reference Models for Industrial Enterprise, 2nd ed., Springer-Verlag, 2004
[Verbeek 01] Verbeek, H. M. W., Basten, T., and Aalst van der, W. M. P.,
“ Diagnosing Wokflow Pocesses using Woflan,” The Computer Journal, 2001, Vol 44, p244-p279.
[Vernadat 96] Vernadat, F. B., Enterprise Modeling and Application-Principles and Applications, Chapman& Hall, 1996.
[Wiley97] Wiley, J., Sons, and Lawrence, P., “Workflow Management Coalition,” Workflow Handbook, 1997.
Fig-1 Relations between hierarchical model and process model
Conceptual Stage Analyze process model structure Building process model hierarchy
Draw EPC by ARIS
Detect errors of EPC structure
Function tree model of business process Block EPC
Hierarchical Correct EPC
structure
Draw EPC by ARIS
XML File
Transformation by XSLT plate
EPC Tools (Java) EPML
File
Correct EPC structure
Execute algorithms
(Java)
Function tree model of business process
Structure errors report
Structured EPC
Blocked EPC
Input Process Output
Design StageImplementation Stage
Fig-2 Proposed framework
Structure errors
Verify structure behavior
Transform structure
*Improper nesting
*Corresponding control element mismatched
Structured workflow Transform
structure Correct the type of corresponding pair
*Improper nesting?
*Deadlock?
*Multiple Instances
Correct the type of corresponding pair Correct the type of corresponding pair Improper nesting&
Multiple instances
Improper nesting &
Deadlock
Deadlock/
Multiple instances
Fig-3 Improper structure modification
Corresponding control
elements Correction
Split node Join node Change join node type
OR AND OR
XOR AND XOR
Fig-4 Approach to correct an unmatched deadlock
Fig-5 Approach to correct a mismatched deadlock
Corresponding control
elements Correction
Split node Join node Change join node type
AND OR AND
AND XOR AND
Fig-6 Approach to correct a multiple instances condition
Fig-7 The concept of blocking a structured EPC model
Fig-8 An example ECP model
(1)
(2)
Fig-9 (1) The sequence of building a hierarchical model, (2) The hierarchical model
Fig-10 Empirical EPC model and part of its EPML model
(1)
Event 1
Function 1
Event 2
Function 2 Event 3
Event 4
Event 5
Event 6
Event 7 Function 3
Function 4
(2)
Fig-11 (1)The semantic errors detected by “EPC Tools”, (2) the improper structure in the empirical model
Event 8 Event 9
Event 10 Event 11
Function 5 Function 6
Function 7 Function 8
Event 12
Function 9 Event 13 Event 14 Event 15
Event 16 Event 17 Function 10 Function 11 Function 12
Function 13 Function 14 Event 18
Function 15 Event 8 Event 9
Event 10 Event 11
Function 5 Function 6
Function 7 Function 8
Event 12
Function 9 Event 13 Event 14 Event 15
Event 16 Event 17 Function 10 Function 11 Function 12
Function 13 Function 14 Event 18
Function 15
(1)
Event 13 Event 14 Event 15
Function 10 Function 11 Function 12
Event 18
Function 15
Event 13 Event 14 Event 15
Function 10 Function 11 Function 12
Event 18
Function 15
(2)
Event 1 Function 1
Event 2
Function 2 Event 3
Event 4 Event 5
Event 6 Event 7
Function 3
Function 4 Event 1
Function 1
Event 2
Function 2 Event 3
Event 4 Event 5
Event 6
Event 7 Function 3
Function 4
(3)
Fig-12 The improper structure of the empirical models and their modifications
Fig-13 Structured EPC model
(1)
(2)
Fig-14 (1) the empirical EPC model and (2) its corresponding control points
Fig-15 Structured empirical EPC model and its hierarchical tree structure
出席國際學術會議心得報告
計畫編號 96-2221-E-011-024-
計畫名稱 商業流程階層化方法之研究
出國人員姓名
服務機關及職稱 歐陽超,台科大工管系
會議時間地點 May 21 – 25,
Honolulu, Hawaii, USA
會議名稱 The 2008 Hawaii International Conference on Business
發表論文題目 Transfer a Business Process Model into a Hierarchical Function Model
一、參加會議經過
The 2008 Hawaii International Conference on Business was held May 21 – 25, at the Waikiki Beach Marriott Resort & Spa in Honolulu, Hawaii. About 400 participants representing more than 40 countries have attended this conference. I was assigned as the session chair in the “Management Information Systems” session in May 24. Three papers were presented in that session. The detailed information about that session was as follows:
Saturday
Time: 9:40 - 11:10 AM 5/24/2008 Room: Milo IV Session Topic: Management Information Systems Session Chair: Ou-Yang, Chao
Transfer a Business Process Model into a Hierarchical Function Model Ou-Yang, Chao –— National Taiwan University of Science and Technology Wang, S.H. –— National Taiwan University of Science and Technology Applying Universal Design for Learning in a Graduate MIS Course Beckman, Paul –— San Francisco State University
In addition, a paper entitled “Transfer a Business Process Model into a Hierarchical Function Model” from this year NSC project was presented in that conference. About 15 people have attended the presentation and several questioned have asked and discussed after the presentation.
二、與會心得
Hawaii International Conference on Business is a conference contains variety of papers from different fields in business. The depth of the presented papers is diverse. One can find very good case paper such as a paper talked about the supply chain of new
Boeing 787. Another paper talked about how to use GPS to assist the logistic system in a global environment is also very interesting. However, some other papers seem not so well prepared. Basically, this is a conference suitable for graduate students to present papers and achieve experience on international conference.
Transfer a Business Process Model into a Hierarchical Function Model
C. Ou-Yang S.H. Wang
Department of Industrial Management
National Taiwan University of Science and Technology 43, Sec. 4, Keelung Rd.
Taipei, Taiwan, 106
Abstract
With the increasing complexity of business process, to offer an effective and efficient process modeling tool is an important issue. Currently, a process model was usually included a lengthy process contained many process components and hence might be difficult to study by the users as well as the managers.
Another concept, functional approach, was also widely used by business modelers. Many tools applied the hierarchical concept to build a functional model.
That is, a macro model was developed in the top level, then, the detailed models were built in the lower level to form a tree style. In other words, in the hierarchical approach, the more detailed model can be found in the lower level and the more abstract model can be specified in the higher level.
In this paper, an approach transferred an Event Process Chain (EPC) based process model into the respective hierarchical functional model was proposed. The proposed approach would identify the structure errors in a process model and then modified it to a structured process model. Then a blocking approach would be used to group sets of process elements into several sub-function units and to form a hierarchical model.
Key Words: Hierarchical Model, Process Model, Event Process Chain (EPC)
1. Introduction
The approach of business modeling has been addressed recently due to the implementation of business application technologies such as ERP. A business model would be developed to incorporate with the development of an ERP software such as the “best practice” model for SAP. In most of the cases, the business models would be specified in terms of the process. For examples, SAP applied EPC (event process chain) approach to specify its business model. A business process such as ordering process would be described in terms of EPC. An ERP user should be familiar with the process while using the software. However, in the real case, a process model usually included a lengthy process contained many process components and hence might be difficult to study by the users as well as the managers.
In this paper, an approach transferred an EPC based process model into the respective hierarchical functional model was proposed. The proposed approach would identify the structure errors in a process model and then modified it to a structured process model. Then a blocking approach would be used to group sets of process elements into several sub-function units and to form a hierarchical model.
2. Background
Due to the application of information technology in the workflow and ERP areas, various kinds of issues have been addressed on applying business modeling technologies to support the building of ERP reference models. Most of the modeling methods in the late 80s were focused on developing a comprehensive approach in a specific domain. Very few techniques have addressed on bridge the gaps among the domains. This situation has been changed in the mid 90s when certain approach has focused on integrating the modeling concepts from various perspectives. Then, in the early 2000, due to the application of IT in business, several modeling approaches have considered the environment of automated workflow systems. In addition, the theories of analyzing a developed workflow model to verify its effectiveness have been addressed. Many approaches were based on Petri-net since it has a very solid theory background to support the modeling and analysis tasks. The following review would focus on some of the topics stated in this paragraph.
As just mentioned, most of the modeling methods were focused on a specific domain, such as IDEF0, IDEF1X and IDEF3 were addressed on modeling function, information and process areas respectively [Vernadat 96]. Although there were not formal definitions about the integration of various IDEF approaches, several works have developed their own techniques to integrate different IDEF methods in a business framework [Doniavi 00], or a CIM system [Lingzhi 96].
Recently, the process modeling approach, event process chain (EPC), has been
addressed by many researchers. For instance, a well structured EPC model has been defined such that certain structure error such as deadlock and multiply instance would not take place [Wiley 97]. In addition, a few researchers have studied the properties of structured model in terms of analyzing the corresponding relationships of the control elements in an EPC model [Aalst 99][Liu 05]. Another approach, graph reduction, was addressed on removing the correct structure from an EPC model step by step based on certain developed rules. The left portion of the model was the place where improper structure might take place [Lin 02]. Finally, an approach which can transfer an EPC model into its corresponding PN model has been developed [Verbeek 01].
Based on this work, certain PN behavior properties such as liveness or boundness can be used to analyze an EPC model.
As just mentioned, certain modeling approachs such as IDEF0 have embedded the hierarchical modeling concepts such that the reader can view the model from the top level abstract view to the lower level detailed view. However, other process modeling tools such as EPC do not have this perception. It would be very straightforward to construct a lengthy and complex model and hence cause the readers difficult to study the model. Therefore, this work would tend to develop an approach to transfer an EPC process model into a hierarchical model, and to support the feasibility of viewing the process model.
3. The Proposed Approach
Fig-2 shows the three-level framework of the proposed approach. In the conceptual level, the process model structure will be analyzed such that certain improper structure behaviors would be modified. Then, the structured model would be grouped as several blocks and to form a tree structure and to build a hierarchical business model.
In the design level, the business model would be constructed in terms of EPC (event process chain) diagram. Then the improper structure such as improper nesting, deadlock and multiple instances of an EPC model would be analyzed and corrected.
Finally, the structured EPC model would be grouped as several main blocks and sub-blocks. The grouped EPC model would then be transformed into a hierarchy model.
In the final level, the design-specification level, the EPC model would be constructed by using ARIS modeling tool. The XML file of the model would be generated. A Java based XSLT (XML Translation Template) template would be developed to translated the XML into EPML (EPC XML) file. The translated file would be the input of software EPC Tools. The unstructured model would be identified by the tool. In addition, the category of the improper structure also would