Generating Business Process Model with Constraint ...

2 downloads 0 Views 955KB Size Report
d18. Property insured d5. Application summary d12. Property address d19. Signed by applicants d6. Employment status verified d13. Current owner of property.
2011년 대한산업공학회 추계학술대회

Generating Business Process Model with Constraint Satisfaction Problem based on Data Flow Bernardo N. Yahya, Hyerim Bae* Industrial Engineering Department Pusan National University Email : {bernardo, hrbae} @pusan.ac.kr * Corresponding Author Email : [email protected] 2011 대한산업공학회 추계학술대회

2011년 대한산업공학회 추계학술대회

Contents 1. Introduction 2. Literature Review 3. Proposed Method 4. Case Study 5. Conclusion & Further Research

2011년 대한산업공학회 추계학술대회

1. Introduction ∙ Background

- Customization becomes a trend. - Customer requires a customized process - The trend of crowdsourcing

∙ Customization Process Model Tool • The ability to customize a process model from large collections of activities in the repository. • It should be able to: • Generate customized process automatically based on constraints • Let the “crowd” generate customized process

Previous Research Formulating the data-flow perspective for BPM Creating process reference model from large collections of process model

2011년 대한산업공학회 추계학술대회

1. Introduction ∙ Problem Definition - How “crowd” can create a valid process - How to create significant customized process

∙ Research Objectives • Make a tool supporting process design for customization • The ability to customize a process model based on customer requirement and constraint from service provider.

• There are 2 specific aims : • Generate customized process automatically based on constraints • Crowdsource-ability

Focus of this study ∙ To generate various alternative of process model based on the data flow using the constraint satisfaction problem.

2011년 대한산업공학회 추계학술대회

2. Literature Review - Yahya, B. N., Bae, H., Bae, J., (2009), “Process Design Selection using Proximity Score Measurement”, 3rd International Workshop on Collaborative Business Process (CBP ’09), Germany. - Yahya, B.N., Bae, H., Bae, J., Kim, D., (2010)“Generating Business Process Reference Model using Genetic Algorithm”, Proceedings of Biomedical Fuzzy Systems Association 2010, Kitakyushu.

-Jimenez-Ramirez, A., Gasca, R.M., Varela-Vaca, A.J., “Contract-based test generation for data flow – business processes using constraint programming”, 5th International Conference on Research Challenges in Information Sciecne (RCIS), pp.1-12, (2011) -- Sun, S.X., Zhao, J.L., Nunamaker, J.F., Sheng, O.R.L., “Formulating the Data-Flow Perspective for Business Process Management” Information System Research, vol. 17, no. 4, pp. 374-391, December 2006. -Halac et al, “Reducing Agent Plans to Workflows”, LADS 2009, LNAI 6039, pp.1634, 2010

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 1. Process Definition P is defined as a set of process p, which is a tuple A ={ai| i=1,…,I} : set of activities L ⊆{lu = (ai,aj) | ai,aj ∈A, lu ∈L} : set of control flow DF : set of data flow IN : input containers OUT : output containers • For a split activity ai, such that |SAi| > 1, where SAi={aj |(ai, aj)∈L}, f(ai) = ‘AND’ if all aj should be executed; otherwise, f(ai)= ‘OR’. • For a merge activity ai, such that |MAi| > 1, where MAi={aj|(aj, ai) ∈L}, f(ai) = ‘AND’ if all aj should be executed; otherwise, f(ai)= ‘OR’.

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 2. Activity Definition - an activity is formally defined as ai = -ni is the identifier of the activity (activity name) -ini, outi correspond to input and output container of activity i, respectively. - Data Container : DC, is the set of data items which are needed to execute an activity or generated by the activity, DC = {dl | l=1,…,L}, dl ∈ IN, OUT , IN= [in1, in2,…,ini], OUT= [out1,out2,…,outi] and IN, OUT ⊆ DC. - Data Item : dl stands for data which is held by input and output containers - Req(ini) and Req(outi) stands for the required input and output of activity i, respectively.

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 3. Start and End Activity • A Start activity (aS) is an activity with an empty set of preceding activities, |MAS|=0. An End activity (aE) is an activity with an empty set of succeeding activities, |SAE|=0.

Definition 4. Data Flow -A data flow, dfi = < ai, di, aj, dj > where di ∈ OUT and dj ∈ IN, ai ,aj ∈ A -The data flow should follow the constraint that any of Req(outi) →Req(inj) : it means that at least there is a flow of required data output of i-th activity to required data input of j-th activity.

Definition 5. Possible Predecessor and Possible Successor Possible predecessor is a set of activities that satisfy the constraints to be predecessor of activity i. Possible successor is a set of activities that satisfy the constraints to be successor of activity i. • pred(ai) ⊆ {apred| apred ∈ A ∧ ∀Req(outpred) →Req(ini)} • succ(ai) ⊆ {asucc| asucc ∈ A ∧∀Req(outi) →Req(insucc)}

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 6. Routing Constraint (RC) A set of routing constraint (RC) consist of three kinds of constraint: - Backward constraint (Cib) : the set of routing constraint needed for a process to execute ai. - Forward constraint (Cif) : the set of routing constraint for a process to execute the successor of ai. - Irrelevant constraint (Cir) : the set of routing constraint that irrelevant for ai.

Definition 7. Conditional Data Dependency Conditional data dependencies : λi(IN, OUT) represents the conditional dependencies of OUT and OUT =[out1,out2,…outi] is the set of output data items produced by ai.

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 8. Satisfaction Function Satisfaction function is a function to return binary value to measure whether such constraint is satisfied or not. - RC = {ck| ∃k ∧ ∀i , ck ∊ Cib ⋃ Cif ⋃ Cir } - satC(Ci*) : satisfaction rate of i-th activity for all type of routing constraint *, where *={b,f}. - satCr(Ci*) : satisfaction rate of i-th activity for all type of routing constraint r.  s a tC (C i )  b



s a ti (c k )  ck  C i

b

k

 k

ck

s a tC (C i )  f



s a ti ( c k )  ck  C i

k

 k

ck

f

s a tC (C i )  r

r

r

s a ti ( c k )  ck  C i

r

k



ck

k

- sati (ck) : satisfaction function of k-th constraint in i-th activity. It is 0 if k-th constraint is not satisfied in i-th activity, 1 otherwise - satir(ck)=0 if k-th irrelevant constraint is satisfied in i-th activity, 1 otherwise.

2011년 대한산업공학회 추계학술대회

3. Proposed Model Definition 9. MAX-CSP - MAX-CSP is defined as maximum the value of satisfaction function among generated process design, as called maximum of constraint satisfaction in the latter part. - In order to find the maximum of constraint satisfaction, we denote - Objective function of MAX-CSP : Z = max zp - zp is the total value of constraint satisfaction of a created process p. We may select the best process p which has the greatest value of constraint satisfaction among all created process.

 zp 

s a tC (C i )  b

i



s a tC (C i )  f

i

 i

| Ci | b



r

i

 |C i

f i

|

 |C i

r

s a tC (C i ) r i

|

2011년 대한산업공학회 추계학술대회

3. Proposed Model Procedure to Generate Process Design based on data-flow with maximum CSP Set of Activities

Determine the possible predecessor & possible successor

Calculate the constraint satisfaction function

Filter the possible predecessor & possible successor

Select the best design based on MAX-CSP

Generate the possible process design

Expert / Manager Decision Verification

2011년 대한산업공학회 추계학술대회

4. Case Study : Loan Application Process Data items d1

Applicant Name

d8

Account balance

d15

Risk

d2

Loan Amount

d9

Account balance verified

d16

Amount adjusted

d3

Annual income

d10

Applicant qualified

d17

Agreed by applicants

d4

Application complete

d11

Interest rate

d18

Property insured

d5

Application summary

d12

Property address

d19

Signed by applicants

d6

Employment status verified

d13

Current owner of property

d20

Signed by loan officer

d7

Credit score

d14

Appraised value of property

d21

Signed by manager

Activities a1

Receive application

a8

Decision Node 2

a15

Decision Node 4

a2

Verify completeness of application

a9

Determine interest rate

a16

Forward to loan officer for signature

a3

Decision Node 1

a10

Request appraisal info

a17

Decision Node 5

a4

Request missing info

a11

Evaluate loan application

a18

Forward to manager for signature

a5

Verify employment status

a12

Decision Node 3

s

Start node

a6

Check credit history

a13

Adjust loan amount

e

End node

a7

Verify liquid assets

a14

Contact applicants for agreement

2011년 대한산업공학회 추계학술대회

4. Case Study : Loan Application Process Routing Constraint in the Property Loan Approval Process c1

d4=Yes

c7

(d17=Yes) AND (d19=Yes)

c2

d4=No

c8

(d17=No) AND (d19=No)

c3

d10=Yes

c9

c4

d4=No

((d15=High) AND (d16>500,000)) OR ((d15=Low) AND (d2>500,000)

c5

d15=High

c10

c6

d15=Low

((d15=High) AND (d16≤500,000)) OR ((d15=Low) AND (d2≤500,000)

Backward, Forward, Irrelevant Routing Constraint Sets Activity

C ib

Cif

Cir

a1,a2,a3



{c1, c2, c3, c4, c5, c6, c7, c8, c9, c10}



a4

{c2}

{c1, c3, c4, c5, c6, c7, c8, c9, c10}



a5,a6,a7,a8

{c1}

{c3, c4, c5, c6, c7, c8, c9, c10}

{c2}

{c1, c3}

{c5, c6, c7, c8, c9, c10}

{c2, c4}

{c1, c3, c5}

{c7, c8, c9, c10}

{c2, c4, c6}

{c1, c3, c5 ∨ c6}

{c7, c8, c9, c10}

{c2, c4}

{c1, c3, c5 ∨ c6, c7}

{c9, c10}

{c2, c4, c8}

{c1, c3, c5 ∨ c6, c7, c9}



{c2, c4, c8, c10}

a9,a10,a11,a12 a13,a14 a15 a16,a17 a18

2011년 대한산업공학회 추계학술대회

4. Case Study : Loan Application Process 4. Request Mission Info OUT: ∅

IN: d4

11. Evaluate loan Application

2. Verify Application Completeness IN: d1 ,d2 ,d3 d8 ,d12

IN: d1 ,d2 ,d6 d7 , d8 , d 9 , d10 ,d11 ,d14

OUT: d4

OUT: d15

5. Verify Employment Status 10. Request Appraisal Info IN: d1 ,d12

13. Adjust loan amount

OUT: d6 ,d10

IN: d1 ,d11 , d14 ,d15

OUT: d13 , d14

1. Receive application IN: ∅

IN: d1 ,d3

6. Check Credit History

OUT: d1 ,d2 ,d3 d5 ,d8 ,d12

IN: d1

7. Verify Liquid Assets

OUT: d16 IN: d1 ,d8

OUT: d9 ,d10

14. Contact Applicants for agreement

OUT: d7 ,d10

IN: d1 ,d2 , d10,d16 ,d18

OUT: d17, d19

9. Determine Interest Rate 18. Forward to manager for signature IN: d1 ,d2 , d5,d10 , d11 ,d15,d16 , d17 ,d19

OUT: d21

Decision Node 1 IN:d4

Decision Node 2 IN:d10

IN: d1 ,d2 , d3,d7 , d14 ,d16

OUT: d11

16. Forward to loan officer for signature IN: d1 ,d2 , d10,d11 , d15 ,d16 , d17 ,d19

Decision Node 3 IN:d15

Decision Node 4 IN:d17 ,d19

OUT: d20

Decision Node 5 IN:d2 ,d15, d16

2011년 대한산업공학회 추계학술대회

4. Case Study : Loan Application Process succ(a1) : Set of possible successor of a1

Set of possible successor of a1

a2 IN: d1 ,d2 ,d3 OUT: d4 d8 ,d12

a4 IN: d4

a5

a1

IN: d1 ,d3 IN: ∅

OUT: ∅

OUT: d1 ,d2 , d3, d5 ,d8 ,d12

OUT: d6 ,d10

IN: d1 ,d2 ,d3 OUT: d4 d8 ,d12

Filtering based on CSP 1. Check Decision 2. Remove activity that require further decision

a6 IN: d1

IN: d4

OUT: ∅

a5 IN: d1 ,d3

OUT: d6 ,d10

a6 OUT: d7 ,d10

IN: d1

a7 IN: d1 ,d8

a4

OUT: d7 ,d10

a7 OUT: d9 ,d10

IN: d1 ,d8

OUT: d9 ,d10

… a10 IN: d1 ,d12

OUT: d13 ,d14

Conditional Data Dependencies λ9

([d16], [d11])

λ17

([d2,d16], ∅)

λ14

([d16], [d17,d19])

λ18

([d16], [d21])

λ16

([d16], [d20])

λe

([d1, d11, d15, d16, d17, d19, d20, d21], [d1, d11, d15, d16, d17, d19, d20, d21])

2011년 대한산업공학회 추계학술대회

4. Case Study : Loan Application Process Supposed that Expert created a process (same with Existing Process)

2011년 대한산업공학회 추계학술대회 Activities Dependencies

Predecessor Set

Cib

Cif

Cir

a1



1

1

1

a2

{a1}

1

1

1

a3

{a2}

1

1

1

a4

{a2}

1

1

1

a5

{a1}

1

1

1

a6

{a1}

1

1

1

a7

{a1}

1

1

1

a8

{a5, a6, a7}

1

1

1

a9

{a1, a6, a10}

1

1

1

a10

{a1}

1

1

1

a11

{a1, a5, a6, a7, a9, a10}

1

1

1

a12

{a11}

1

1

1

a13

{a1, a9, a10, a11}

1

1

1

a14

{a1, a5, a6, a7}

1

1

1

a15

{a14}

1

1

1

a16

{a1, a5, a6, a7, a9, a11, a14}

1

1

1

a17

{a11}

1

1

1

a18

{a1, a5, a6, a7, a9, a11, a14}

1

1

1

Activity

The value of zp=1

2011년 대한산업공학회 추계학술대회

5. Conclusion and Further Research • This paper proposed a constraint satisfaction problem based on data-flow. • This approach can assist novice designer to create a process based on the data-flow requirement. • This method is considered as a tool support to allow crowd generating customized process (crowdsourcing). • In the future, we are going to enhance the research limitation on this study • Verification of data-flow-based process design • Process behavior considerations • The complexity of process models • Other attributes, instead of path distances

2011년 대한산업공학회 추계학술대회

6. References Yahya, B.N., Bae, H., Bae, J., (2009) “Process Design Selection using Proximity Score Measurement”, BPM 2009 Workshop, Germany, LNBIP 43, pp. 330-341. Yahya, B.N., Bae, H., Bae, J., Kim, D., (2010)“Generating Business Process Reference Model using Genetic Algorithm”, Proceedings of Biomedical Fuzzy Systems Association 2010, Kitakyushu. Aalst, W.v.d. (2000), “Workflow Verification: Finding Control-Flow Errors Using Petri-Net-Based Techniques”, Business Process Management, LNCS no. 1806, pp. 161-183, Springer-Verlag. Sun, S. X., Zhao, J.L., Nunamaker, J.F., “Formulating the Data-Flow Perspective for Business Process Management”, Information System Research, vol. 17, no. 4, pp. 374-391, December 2006. Jimenez-Ramirez, A., Gasca, R.M., Varela-Vaca, A.J., “Contract-based test generation for data flow – business processes using constraint programming”, 5th International Conference on Research Challenges in Information Sciecne (RCIS), pp.1-12, (2011) Halac , T.G. Cetin, O, Ekinci, E. E., Erdur, R.C., Dikenelli, O., “Reducing Agent Plans to Workflows”, LADS 2009, LNAI 6039, pp.16-34, 2010 Nilsson, N.J., “Artificial Intelligence, A New Synthesis”, Morgan Kaufmann Publishers, Inc. 1998.

Acknowledgement This work was supported by a Korea Research Foundation grant funded by the Korean Government (MOEHRD) (The Regional Research Universities Program / the Research Center for Logistics Information Technology).

Suggest Documents