PDF- Camunda BPM Platform, Predictive Monitoring -An Interactive Metaheuristic Search Framework for Software Service - Camunda BPM Loan Assessment Process Lab v1.0

BPM Loan Assessment Process Lab v1

Description

Camunda BPM Platform Loan Assessment Process Lab

Allan Fernandez 08725853

Allan Fernandez 8725853

Camunda BPM Platform 2014

Camunda BPM Platform

La Rosa,

Mendling and H

Reijers

The complete process description can be downloaded from http://fundamentals-of-bpm

org/wpcontent/uploads/LoanAssessmentProcessDescription

Camunda is an open source Java based BPM platform used primarily to automate Business Process Model and Notation (BPMN) 2

It is built around the process engine component

The software is still in the development stage and some features are currentl being implemented

There are certain limitations to the use of BPMN 2

Some elements are dependent on specific modelling criteria,

failing to satisfy which doesn’t produce the expected outputs

Keeping these hindrances in mind,

the loan assessment process has been redesigned as and when needed to overcome them

Constraints observed have been listed with necessary references and inputs from Camunda development team

Java and Groovy programming languages have been used to integrate some tasks into the loan assessment process

This lab uses Camunda BPM Platform V7

A java development kit (JDK) version 6

Eclipse IDE is also required for the process designer

Camunda BPM Platform 2014 Table of Contents 1

Camunda BPM Platform 2014 Appendix B: Loan Asssessment Process without Email Task

open source platform for Business Process Management

It is dedicated to Java developers and their typical software development infrastructure,

while providing Business IT-Alignment during process design and runtime using the BPMN 2

0 standard

Camunda BPM Platform 2014 Camunda’s core is a native BPMN 2

It integrates with Java EE 6 and is a perfect match for the Spring Framework

On top of the process engine,

one can also choose from a stack of tools for human workflow management,

The tutorial uses Camunda version V7

0-Final

It has a lightweight POJO core and uses a relational database for persistence

ORM mapping is provided by the mybatis mapping framework

Spring Framework Integration

CDI/Java EE Integration

Runtime Container Integration (Integration with application server infrastructure)

Camunda Tasklist: A web application for human workflow management and user tasks

The task list allows process participants to inspect their workflow tasks and navigate to task forms in order to work on the tasks and provide data input

Camunda Cockpit: A web application for process monitoring and operations

Camunda Cockpit allows searching for process instanced,

inspecting their state and repairing broken instances

Camunda Cycle: A web application for synchronizing BPMN 2

Camunda-bpmn

js: JavaScript framework for parsing,

rendering and executing BPMN 2

Camunda BPM Platform 2014 1

It acts as a platform to develop applications for different programming languages such as: Ada,

JavaScript,

Python etc

A unique feature of Eclipse is that it provides an extensible plug-in system for customizing the workspace as per the work environment needs

Camunda provides a plugin called ‘Camunda Modeller’ which is integrated into Eclipse (Indigo/Juno/Kepler) to design the BPMN model and deploy it on Camunda Process Engine as a war file

Camunda Modeller has been integrated into Eclipse Kepler as part of designing and building the lab

0 elements

Camunda BPM Platform 2014

Properties applet

The two main features of Camunda Modeller plug-in is it provides a range of BPMN 2

Features supported by Properties Applet: 

Define expressions,

java delegates and classes to automate the BPMN process models

Create user forms

Camunda BPM Platform 2014 1

Camunda Cockpit: With camunda BPM Cockpit you can monitor and administrate your running process instances

The Cockpit architecture allows you to use plugins to extend the functionality,

so you can individually adapt the tool to your personal requirements

Camunda Tasklist: The Tasklist is a demo web application to provide you with the possibility to work on User Tasks

The Tasklist is part of camunda BPM distribution and ready to use by opening http://localhost:8080/camunda/app/tasklist

Camunda Cycle: With Cycle you can synchronize the BPMN diagrams in your business analyst's BPMN tool with the technically executable BPMN 2

Depending on your tool we can realize forwardand a reverse engineering,

while you can store your BPMN 2

Camunda BPM Platform 2014 2

download a distribution of camunda BPM platform

You can chose from different application servers

In this tutorial,

we will use the Apache Tomcat 7 based distribution

After having downloaded the distribution,

unpack it inside a directory of your choice

After you have successfully unpacked your distribution of camunda BPM platform,

execute the script named start-camunda

This script will start the application server and open a welcome screen in your Web browser

http://localhost:8080/camunda-

Camunda BPM Platform 2014

Step 2: Install Camunda Modeller Use the following links to install the plugins: Kepler

org/release/camunda-modeler/updatesites/kepler/latest/site/

Indigo and Juno http://camunda

org/release/camunda-modeler/update-sites/latest/site/

Add the update site URL (see above) as an Eclipse Repository

Camunda BPM Platform 2014 The item camunda Modeler appears

Select it and click Next

Wait for the installation details

Click Next

Before you can download the plugin you will be prompted to accept the User Agreement

Click Next

Camunda BPM Platform 2014

The installation progress window appears

You will get a security warning message during the installation

Click OK

After the installation has finished you will be prompted to restart your Eclipse

Click Restart Now

After the restart the camunda modeller is ready to use

Camunda BPM Platform 2014

This opens the New Project Wizard

In the New Project Wizard select Maven / Maven Project

Click Next

On the first page of the New Maven Project Wizard select "Create a simple project (skip archetype selection)"

Click Next

On the second page (see screenshot),

configure the Maven coordinates for the project

Since we are setting up a WAR Project,

make sure to select Packaging: war

When you are done,

Eclipse sets up a new Maven project

The project appears in the Project Explorer View

Camunda BPM Platform 2014 Step 2: Add Camunda Maven Dependencies The next step consists in setting up the Maven dependencies for your new process application

Add the following dependencies to the pom

1 provided

Camunda BPM Platform 2014

3 false

Now you can perform the first build

Select the pom

perform a Right Click and select Run AS / Maven Install Step 3: Add a Process Application Class Next,

loanapproval and add a Process Application class to it

The Process Application class constitutes the interface between your application and the process engine

ProcessApplication

ServletProcessApplication

@ProcessApplication("Loan Approval App")

Camunda BPM Platform 2014 public class LoanApprovalApplication extends ServletProcessApplication { // empty implementation }

Step 4: Add a META-INF/processes

xml deployment descriptor The last step for setting up the process application is adding the METAINF/processes

xml deployment descriptor file

This file allows us to provide a declarative configuration of the deployment(s) this process application makes to the process engine

This file needs to be added to the src/main/resources/META-INF folder of the Maven project

Camunda BPM Platform 2014 2

0 diagram

In the eclipse Package Explorer select the src/main/resources folder

Right-click and select New > Other

Go to the folder Other and select BPMN 2

0 Diagram

Click Next

On the second page,

you must specify the file name of the process

Put in loanapproval

Click Finish

Step 2: Start with a Simple Process

Start by modeling a simple process

From the Palette on the right hand side to the canvas,

drag a Start Event Double Click on the Label of the Start Event

A text box opens

Type "Loan Request Received"

When editing Labels,

you can add line breaks by typing Shift + Enter

Add a User Task to the process

Name it "Approve Loan"

Add an End Event named "Loan Request Approved"

Camunda BPM Platform 2014

Step 3: Configure a User Task

Open the properties view

If the properties view is not visible,

select it from the menu: Window / Show View / Other

This opens a dialog

From the dialog select Properties

Select the User Task on the canvas

This updates the selection in the Properties View

Scroll to the Property named Assignee

Type "john"

After you are done,

Camunda BPM Platform 2014

Step 4: Configure an executable Process

Since we model an executable process,

we should give it an ID and set the isExecutable property to true

Open the properties view and click on a free spot of the modeling canvas

This displays the properties of the process itself

configure an ID for the process

Type "approve-loan" in the property field Process Id

The ID property is used by the process engine as identifier for the executable process and it is best practice to set it to a human-readable name

Second,

configure the Name of the process

Type "Loan Approval" in the property field Name

Finally,

check the box of the Is Executable property

If you do not check this box,

the process definition is ignored by the process engine

After you are done,

Camunda BPM Platform 2014

Select the pom

perform a Right Click and select Run AS / Maven Install

This will generate a WAR file named loan-approval-0

1-SNAPSHOT

war In the target/ folder of your Maven project

Camunda BPM Platform 2014

Step 2: Deploy to Apache Tomcat

In order to deploy the process application,

copy-paste the loan-approval-0

1SNAPSHOT

war from your Maven project to the $CAMUNDA_HOME/server/apachetomcat/webapps folder

Check the log file of the Apache Tomcat server

If you see the following log message,

the deployment was successful:

Camunda BPM Platform 2014

Step 3: Check with camunda Cockpit and Tasklist

Now use cockpit to check whether the process is successfully deployed

Go to http://localhost:8080/camunda/app/cockpit

Your process is visible on the start screen

go to camunda Tasklist (http://localhost:8080/camunda/app/tasklist)

Log in with demo / demo

After you have logged in,

button to start a process instance

Loan Approval from the list

This opens a page which explains that no form has been defined for starting the process

Click on Start process using generic form

The generic form can be used whenever you have not added a dedicated form for a User Task or a Start Event

Click on the

Fill in the form as shown in the

When you are done,

If you now go back to camunda Cockpit,

you see the newly created process instance that is waiting in the User Task

Log out of the Tasklist and log back in with the user credentials "john / john"

Now you see the Approve Loan task in your inbox

Click on the

This displays the process

diagram highlighting the User Task that is waiting for you to work on it

Camunda BPM Platform 2014

To work on the task,

there is no task form associated with the

Click on Work on task using generic form

This displays the variables you have put in in the first step

Camunda BPM Platform 2014

Camunda BPM Platform 2014 3

Loan Officer,

Finance Officer,

Property Appraiser and Insurance Sales representative

Camunda BPM Platform 2014

*Please Note: There is a bug with respect to using two or more pools and has been noted under constraints 1 of the Appendix in report Step 2 Create a Start event in Loan Applicant lane and name it ‘Loan application completed’

Create a form under start event with the following field name and types:

Loan Application Field Name Applicant_Name Applicant_Surname Email Home_Phone Mobile_Phone Current_Address Previous_Address Current_Employer Monthly_Net_Revenue Bank_Name Account_Type Account_Number Account_Balance Property_Type Property_Address

Field Type String String String Long Long String String String Long String String String Long String String

Required(R)/Optional(O) R R R R R R O R R R R R R R R

Camunda BPM Platform 2014 Purchasing_Price Loan_Type Loan_Provider Loan_Amount Loan_Duration Loan_Start_Date Loan_End_Date Interest_Type Interest_Rate Insurance_Quote_Required Administration Information Application_Identifier Application_Submission_Date Application_Revision_Date Application_Status

Comment_on_Status

Long String String Long String Date Date Enum (Variable/Fixed) Long Boolean

R R R R R R R R R R

String String String Enum (Complete/ Incomplete/ Assessed/ Rejected/ Cancelled/ Approved) String

O O O O

Camunda BPM Platform 2014

Field names defined under “Form fields” view

Id and Label denotes the field name Type denoted the field type Validation=> name= required and config= true for required field name

Field names defined under “Form fields” view

Id and Label denotes the field name Type denoted the field type Properties=> id= default and value= “ “ for optional field name

*Please Note: There is a bug with respect to default and initial user assignment validation and has been noted in the constraints 2 and 4 of the Appendix

Camunda BPM Platform 2014

Field names defined under “Form fields” view

Id and Label denotes the field name Type denoted the field type Value=> id and name denotes the dropdown options for the field name

Step 3 Create a User Task: Update Loan Application and assign user ‘Mary’ (General>>Assignee) as Loan Applicant Create a timer for the user task so that the loan application is cancelled after a time interval of 5 days

Create a form for Loan Application as described in step 2

Camunda BPM Platform 2014

Create a boundary event

Assign a timer definition to the boundary event

Camunda BPM Platform 2014

Create an intermediate end event

Camunda BPM Platform 2014

In Properties applet>>Event>>Duration= P5DT0H0M0S in ISO 8601 format (D->days,

T->Time,

H->Hours,

M->Minutes,

S->Seconds

Step 4 Create an Event-Based join gateway to join the two tasks

Camunda BPM Platform 2014

Step 5 Create a script task to check if Email,

Home_Phone and Mobile_Phone fields are in the right format and add Application_Identifier,

Application_Submission_Date and Application_Revision_Date to the loan application form along with the appropriate comments in Comments_on_Status field (if format is wrong)

Furthermore if the application is in right format,

the flow should proceed to ‘Credit History’ task else it should revert to ‘Update Loan Application’ task

Camunda BPM Platform 2014

Script Language: Groovy Script: if(Email ==~ /[a-z_][a-z0-9_][email protected][a-z0-9_

[a-z]{1,3}/) { Application_Status= 'complete'

} else { Application_Status = 'incomplete'

"Wrong Format")

setVariable ("Comment_on_Status",

"Revision Needed")

} if(Home_Phone ==~ /\d{10}$/) { Application_Status = 'complete'

Application_Status = 'incomplete'

"Wrong Format")

setVariable ("Comment_on_Status",

"Revision Needed")

} if(Mobile_Phone ==~ /\d{10}$/) { Application_Status = 'complete'

Application_Status = 'incomplete'

"Wrong Format")

Camunda BPM Platform 2014 execution

setVariable ("Comment_on_Status",

"Revision Needed")

} Application_Identifier = execution

getVariable ("ProcessInstanceId")

setVariable ("Application_Identifier",

Application_Identifier)

setVariable ("Application_Submission_Date",

setVariable ("Application_Revision_Date",

Step 6 Add an Exor split gateway with the following Listener expression: ${Application_Status=='complete'} or ${Application_Status=='incomplete'} (for routing appropriately)

For ‘Update Loan Application’ user task sequence flow

assign the flow condition: ${Application_Status=='complete'} For ‘Check Credit History’ user task sequence flow

assign the flow condition: ${Application_Status=='incomplete'}

Camunda BPM Platform 2014 Step 7 Add a parallel split gateway to execute user tasks ‘Check Credit History’ and ‘Appraise Property’ simultaneously

Step 8 Create a User Task: Check Credit History and assign user ‘Peter’ (General>>Assignee) as Finance Officer

Create a Credit History Report form as per Step 2

The loan application form should be visible to the Finance Officer,

Credit History Report Field Name

Field Type

Finance Officer Identifier Court Judgement Information Bankruptcy Information Credit Assessment

Required(R)/Optional(O)/Not Applicable (N/A) N/A

Loan Application History: Amount Loan Application History: Duration

String O Enum N/A (B/BB/BBB/A/AA/AAA) Long N/A String

Camunda BPM Platform 2014 Loan Application History: Start Date Loan Application History: End Date Loan Application History: Interest Overdue Credit Accounts: Amount Overdue Credit Accounts: Duration Overdue Credit Accounts: Start Date Overdue Credit Accounts: End Date Overdue Credit Accounts: Interest Current Credit Card Provider: Amount Current Credit Card Provider: Duration Current Credit Card Provider: Start Date Current Credit Card Provider: End Date Current Credit Card Provider: Interest

Camunda BPM Platform 2014

Validation: readonly=True to make the loan application form fields as non-editable

Step 9 Create a User Task: Appraise Property and assign user ‘Mary’ (General>>Assignee) as Property Appraiser

Create a Property Appraisal Report form as per Step 2

Property Appraisal Report Field Name

Field Type

Application_Identifier Property Appraiser Identifier Surrounding Properties1: Name Surrounding Properties1: Value Surrounding Properties2: Name Surrounding Properties2: Value Surrounding Properties3: Name Surrounding Properties3: Value Estimate Value Comments_on_property

String String

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) RO N/A

Long String

N/A N/A

Camunda BPM Platform 2014

Step 10 Create a Service Task: Assess Loan Risk to automatically assign Risk Weights as per Credit Assessment selected

Create a Java class to execute this task

Credit Assessment

Risk Weight

Camunda BPM Platform 2014

Java class is assigned to the Service Task

Java code to execute the service task

Camunda BPM Platform 2014 Java code to execute the Service Task: package org

DelegateExecution

JavaDelegate

public class risk_assessment implements JavaDelegate { protected long Risk_Wt

protected String Credit_Asst=""

public void execute(DelegateExecution execution) throws Exception { Credit_Asst= (String) execution

getVariable("Credit_Assessment")

getVariable("Credit_Assessment"))

equals(Credit_Asst)) { Risk_Wt=0

equals(Credit_Asst)){ Risk_Wt=20

equals(Credit_Asst)) { Risk_Wt=40

equals(Credit_Asst)) { Risk_Wt=60

equals(Credit_Asst)) { Risk_Wt=80

equals(Credit_Asst)) { Risk_Wt=100

Risk_Wt)

println("Risk Weight" + Risk_Wt)

println("Credit_Assessment = " + Credit_Asst)

Camunda BPM Platform 2014

Step 11 Add a parallel join gateway to execute the outputs of ‘Assess Loan Risk’ and ‘Appraise Property’ tasks simultaneously

Step 12 Create a User Task: Assess eligibility and assign user ‘John’ (General>>Assignee) as Loan Officer

Loan Application form,

Credit History report and Property Appraisal report must be visible to the Loan Officer but in read-only format

Create the following fields in the user form as per step2 Field Name

Field Type

Loan Officer Identifier Eligibility_Status

String Enum (eligible/ineligible) String

Comments_on_eligibility

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) N/A N/A N/A

Camunda BPM Platform 2014

Step 13 Create a script task-Update form status to check for eligibility status of loan application

If eligibility status=’eligible’,

change Application_Status=’assessed’ and assign sequence flow to ‘Prepare and Acceptance Task’

If eligibility status=’ineligible’,

Application_Status=’rejected’ change assign sequence flow to ‘View Rejected Application’ task

Camunda BPM Platform 2014

Script Language: Groovy Script: if ((Eligibility_Status=='ineligible')) { Application_Status='rejected'

} else { Application_Status='assessed'

} out:println "Application_Status" + Application_Status

out:println "Applicant_Name" + Applicant_Name

out:println "Applicant_SurName" + Applicant_SurName

out:println "Home_Phone" + Home_Phone

out:println "Mobile_Phone" + Mobile_Phone

out:println "Current_Address" + Current_Address

out:println "Previous_Address" + Previous_Address

out:println "Current_Employer" + Current_Employer

out:println "Monthly_Net_Revenue" + Monthly_Net_Revenue

out:println "Bank_Name" + Bank_Name

out:println "Account_Type" + Account_Type

out:println "Account_Number" + Account_Number

out:println "Account_Balance" + Account_Balance

out:println "Property_Type" + Property_Type

out:println "Property_Address" + Property_Address

out:println "Purchasing_Price" + Purchasing_Price

out:println "Loan_Type" + Loan_Type

out:println "Loan_Provider" + Loan_Provider

out:println "Loan_Amount" + Loan_Amount

out:println "Loan_Duration" + Loan_Duration

out:println "Loan_Start_Date" + Loan_Start_Date

out:println "Loan_End_Date" + Loan_End_Date

Camunda BPM Platform 2014 out:println out:println out:println out:println out:println

"Interest_Rate" + Interest_Rate

"Interest_Type" + Interest_Type

"Application_Submission_Date" + Application_Submission_Date

"Application_Revision_Date" + Application_Revision_Date

"Comment_on_Status" + Comment_on_Status

Step 14 Add an Exor split gateway with the following Listener expression: ${Application_Status=='assessed'} or ${Application_Status=='rejected'} (for routing appropriately)

For ‘View rejected Application’ user task sequence flow

assign the flow condition: ${Application_Status=='rejected'} For ‘Prepare and Send Acceptance Pack’ user task sequence flow

assign the flow condition: ${Application_Status=='assessed'}

Step 15

Camunda BPM Platform 2014 Create a User Task: View Rejected Application and assign user ‘Mary’ (General>>Assignee) as Loan Applicant

Create an intermediate end event ‘Decision Accepted’ as per step3

The user must be able to view the loan application in read-only format

Step 16 Create a User Task: Prepare and Send Acceptance Pack and assign user ‘John’ (General>>Assignee) as Loan Officer

Loan Application form,

Credit History report,

Property Appraisal report and fields added in ‘Assess Eligibility’ user task must be viewed in read-only format

The following fields must be added

Repayment Agreement Field Name

Field Type

Application_Identifier Repayment Schedule: Monthly Repayment Amount Repayment Schedule: Number of repayments Insurance_Quote_Required

String Long

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) RO N/A

Enum (complete/incomplete)

Camunda BPM Platform 2014

Step 17 Add an Xor split gateway with the following Listener expression: ${Insurance_Quote_Required=='complete'} or ${Insurance_Quote_Required=='incomplete'} (for routing appropriately)

For ‘Prepare and send home insurance quote’ user task sequence flow

assign the flow condition: ${ Insurance_Quote_Required=='incomplete'} For the Exor join gateway sequence flow

assign the flow condition: ${Insurance_Quote_Required=='complete'}

Camunda BPM Platform 2014

Step 18 Create a User Task: Prepare and Send Acceptance Pack and assign user ‘Mary’ (General>>Assignee) as Insurance Sales Representative

The following fields must be added:

Home Insurance Quote Field Name

Field Type

Application_Identifier Home Insurance Total Cost Additional Cost on monthly loan repayment Insurance Terms and Conditions Insurance Sales Representative Identifier

String Long

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) RO N/A

Boolean

Camunda BPM Platform 2014

Step 19 An Exor-join gateway is used to alternatively route the outputs of ‘Prepare and send home insurance quote’ user task and ‘quote not requested’ sequence flow

Camunda BPM Platform 2014

Step 20 Create a User Task: Verify repayment agreement and assign user ‘John’ (General>>Assignee) as the Loan Officer

Loan Application form,

Credit History report,

Property Appraisal report,

Repayment agreement and home insurance quote must be viewed in read-only format

A timer event with a wait period of 2 weeks (14 days) is added as per step 3,

at the end of which the loan application is cancelled

The following fields are added under agreement summary

Agreement Summary Field Name

Field Type

Application_Identifier Conditions agreed Repayment agreed

String Boolean Boolean

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) RO N/A N/A

Camunda BPM Platform 2014

In Properties applet>>Event>>Duration= P14DT0H0M0S in ISO 8601 format (D->days,

T->Time,

H->Hours,

M->Minutes,

S->Seconds

Step 21 Create a User Task: Take final decision and assign user ‘Peter’ (General>>Assignee) as the Loan Officer

Loan Application form,

Credit History report,

Property Appraisal report,

Repayment agreement,

home insurance quote and Agreement Summary must be viewed in read-only format

The following fields are added

Camunda BPM Platform 2014 Field Name

Field Type

Final_decision

Enum (approve/reject)

Required(R)/Optional(O)/Not Applicable (N/A)/ Read Only (RO) N/A

Step 22 Create a script task-Update final decision status to notify the final decision to the loan applicant

Depending on the Final_decision field output from Take final decision user task,

Application_Status is changed either to approved or rejected

Camunda BPM Platform 2014

Script Language: Groovy Script: if (Final_decision=='approve') { Application_Status='approved'

} else if (Final_decision=='reject') { Application_Status='rejected'

} else { Application_Status='unknown'

} out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println

"Application_Status" + Application_Status

"Applicant_Name" + Applicant_Name

"Applicant_SurName" + Applicant_SurName

"Current_Address" + Current_Address

"Previous_Address" + Previous_Address

"Current_Employer" + Current_Employer

"Monthly_Net_Revenue" + Monthly_Net_Revenue

"Account_Number" + Account_Number

"Account_Balance" + Account_Balance

Camunda BPM Platform 2014 out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println out:println

"Property_Type" + Property_Type

"Property_Address" + Property_Address

"Purchasing_Price" + Purchasing_Price

"Loan_Provider" + Loan_Provider

"Loan_Duration" + Loan_Duration

"Loan_Start_Date" + Loan_Start_Date

"Loan_End_Date" + Loan_End_Date

"Interest_Rate" + Interest_Rate

"Interest_Type" + Interest_Type

"Application_Submission_Date" + Application_Submission_Date

"Application_Revision_Date" + Application_Revision_Date

"Comment_on_Status" + Comment_on_Status

Step 23 Create a User Task: View final decision and assign user ‘Mary’ (General>>Assignee) as Loan Applicant

Create an end event ‘Accept Final decision’ to complete the process

The user must be able to view the loan application in read-only format

Camunda BPM Platform 2014 Step 24 Download the bullzip pdf printer from the following link: http://www

Camunda BPM Platform 2014 Install Bullzip printer

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 4

The following results must be displayed after compilation

Camunda BPM Platform 2014 Step2: Navigate to target>>mortgage-Approval-0

1-SNAPSHOT

Step3: Launch start-camunda

Camunda BPM Platform 2014 Camunda BPM Platform is displayed

Step4: Navigate to webapps folder in the downloaded Camunda BPM platform (The path used in the tutorial is: camunda_use>>server>>apache-tomcat-7

Camunda BPM Platform 2014

If deployment is successful,

the following message is displayed:

Camunda BPM Platform 2014 5

Authority Level

Specific task in Loan Process

Loan Applicant

Loan Applicant

Loan application completed start event (Reason for separate login for specific task is to overcome constraint 4 mentioned in Appendix) All tasks in loan applicant lane

John Peter Mary Mary

Loan Officer Finance Officer Property Appraiser Insurance Sales Representative

Second Loan Officer

All tasks in loan officer lane All tasks in finance officer lane All tasks in property appraiser lane All tasks in insurance sales representative lane Take final decision task

Camunda BPM Platform 2014 6

Choose the running instance as ‘Process_Loan’

Fill in all the fields of the loan application form except for ‘Previous-Address’

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as peter/peter (Finance Officer) to check Credit History Report

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Login as mary/mary (Property Appraiser) to check property appraisal

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as john/john (Loan Officer) to check eligibility

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Login as john/john (Loan Officer) to prepare and send acceptance pack

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Login as john/john (Loan Officer) to verify repayment agreement

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as peter/peter (Loan Officer) to take final decision

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Login as mary/mary (Loan Applicant) to view the final decision

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as mary/mary (Loan Applicant) to update the loan application

Camunda BPM Platform 2014

Camunda BPM Platform 2014 6

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as mary/mary (Insurance Sales Representative) to prepare and send home insurance quote

Login as john/john (Loan Officer) to verify repayment agreement

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 6

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Camunda BPM Platform 2014 Login as mary/mary (Loan Applicant) to view rejected loan application

Camunda BPM Platform 2014

Camunda BPM Platform 2014 6

Click on Job Definitions to check the timer-transition events

Camunda BPM Platform 2014 Change the timer-transition time from 5 days to 20 seconds

Duration changed from 5 days to 20 seconds

Update loan application is in 20 second wait state

After 20 second wait state

Camunda BPM Platform 2014 6

Duration changed from 14 days to 10 seconds

Verify repayment agreement user task is in 10 second wait state

After 10 second wait state

Camunda BPM Platform 2014 6

Invalid date format entered

Server error message displayed

Camunda BPM Platform 2014 6

Server error message displayed

Camunda BPM Platform 2014 7

net/introduction-to-groovy-scripting-language/ Groovy Beginner Tutorial http://groovy

org/Beginners+Tutorial Introduction to Java http://www

com/tutorials/JavaIntroduction/article

com/java/ Online Java Simulator http://www

org/en/Variables_and_Types Technical resources: Camunda User Guide http://docs

org/latest/guides/user-guide/ Camunda BPMN 2

org/latest/api-references/bpmn20/ Camunda Rest API http://docs

org/latest/api-references/rest/ Camunda Java doc http://docs

org/latest/api-references/javadoc/ Camunda Deployment Descriptors http://docs

org/latest/api-references/deployment-descriptors/ Camunda examples on GitHub https://github

com/camunda/camunda-bpm-examples Camunda Tutorial http://docs

Camunda BPM Platform 2014 Appendix A: Constraints observed in Camunda BPM Platform Constraint1: Problem of outgoing message transfer between two different pools The interaction between the ‘Loan Provider’ and ‘Loan Applicant’ pools for task “Application returned to applicant” and catching message event prior to ‘Update Loan Application’ task is not possible,

even though the documented methods on Camunda user guide of assigning events and task notations have been followed

Documentation Link: Camunda User BPM Forum Google Group (A forum for interaction between Camunda users and developers) https://groups

!topic/camunda-bpm-users/EY4hZPg56WM

Camunda BPM Platform 2014 Attempted Method 1:

Camunda BPM Platform 2014 Attempted Method 2:

Camunda BPM Platform 2014 Constraint 2: Non-mandatory fields in Camunda Even if a field is set as ‘non-mandatory’ by entering the condition default “ ” in the properties applet of form field

Camunda Process Engine does not consider it

It works only if one field is marked as default “ “,

but if two fields are marked with the same statement,

Camunda BPM Platform 2014

Camunda BPM Platform 2014

Response from Camunda User BPM Forum Google Group (A forum for interaction between Camunda users and developers): Question posted:

Camunda BPM Platform 2014 Response:

Camunda BPM Platform 2014 Constraint 3: If the loan application form is not included in the Start event and instead added under user task: ‘Complete Loan Application’,

the field names are not displayed while running the

war file in Camunda Process Engine

No field values are entered under ‘Loan Application picked’ start event

Camunda BPM Platform 2014

Field values are entered under ‘Complete loan application’ user task

Form is not displayed after login in as the ‘Complete loan application’ user

Camunda BPM Platform 2014 Constraint 4: Unable to automatically assign unique ids for Application Identifiers through Camunda Process Id field

In order to assign Application Identifiers,

the Camunda developers were contacted through Camunda user BPM forum google group

Their suggestions were implemented,

however the issue is unresolved

Camunda BPM Platform 2014 Response from Camunda User BPM Forum Google Group (A forum for interaction between Camunda users and developers): Question posted:

Response:

Camunda BPM Platform 2014 Another similar issue raised in the forum Documentation Link: Camunda User BPM Forum Google Group (A forum for interaction between Camunda users and developers) https://groups

!topic/camunda-bpm-users/W0JgTJ3SWHY Question posted:

Response:

Modified the code as per the above sample,

Camunda BPM Platform 2014 Constraint 5: Unable to send email by selecting the variable entered from “Email” field in the loan application form

Contacted Camunda developers through Camunda user BPM forum google group

Attempted the suggestions posted,

The same code executes perfectly in eclipse

Question posted:

Camunda BPM Platform 2014 Response:

Attempted Method 1:

Created a separate User email task and class to retrieve the email id from “Email” field and execute

Though the process is executed,

email is not sent to loan applicant

Camunda BPM Platform 2014

Successful execution

Email not recieved

However,

when the same Java code is executed in Eclipse,

the email is being delivered to the loan applicant’s inbox

Camunda BPM Platform 2014

Java Code: package org

DelegateTask

TaskListener

public class SendEmail implements TaskListener { static String host1 = "smtp

static String user = "[email protected]"

static String pass = "Camunda1234"

public void notify(DelegateTask delegateTask) { String email= getVariable ("Email")

// Recipient's email ID needs to be mentioned

String to = email

// Sender's email ID needs to be mentioned String from = "[email protected]"

// Get system properties Properties properties = System

// Setup mail server properties

SSLSocketFactory")

Camunda BPM Platform 2014 Session session = Session

getDefaultInstance(properties,

Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(user,pass)

try { Message message = new MimeMessage(session)

setFrom(new InternetAddress(from))

RecipientType

InternetAddress

setText("Dear Mail Crawler," + "\n\n No spam to my email,

Transport

} catch (MessagingException e) { throw new RuntimeException(e)

} } private static String getVariable(String string) { // TODO Auto-generated method stub return null

Camunda BPM Platform 2014

Appendix B: Loan Assessment Process without Email Task

Camunda BPM Platform 2014 Appendix C: Loan Assessment Process with Email Task (Execution failure in Camunda BPM Platform)

Camunda BPM Platform 2014

Camworks Tutorial Mill and Turn

Tech 140 Lab Manual - San Jose State University

PDF CAMWorks 2006 Mill & Turn Tutorial Rose Hulman rose hulman edu class me me520 tutorial mill and turn pdf PDF CAMWorks 2016 SDC Publications sdcpublications 978 1 63057 087 3

Cam

Dash Cam Video Request - OKgov

BEST TOOL Accurate delirium assessment cannot be obtained by informal bedside nurse patient interaction The CAM ICU is an adaptation of the Confusion SHORT CONFUSION ASSESSMENT METHOD (SHORT CAM) WORKSHEET Note This worksheet can used as an alternative to the Short CAM Questionnaire Sep

Can't Help Falling in Love - Haley Reinhart

agenda - Washoe County School District

help in guiding me in my spiritual life and bringing me closer to year I have accepted you as my spiritual master and you were so kind to accept me as your fallen I find they do not it justice or just can't capture

Can't You Talk Louder, God - Steve Shultz

Date Survey Completed: 7/14/2017 What benefits do you see in the

PDF FridayChat Automation Guild automationguild wp content uploads FridayChat pdf PDF Bucket 2 Environment Comment Type Definition Comment Type dcyf wa gov sites default files comments bucket 2 pdf

Căn bản phiên dịch Việt - Anh Tác giả: Trần Quang Mân

quy tắc ứng xử của liên minh doanh nghiệp có trách nhiệm

quyết định thay cho họ tiếp cận được những dịch vụ chăm sóc sức khỏe cơ Vừa đọc văn bản vừa Phiên dịch là dịch văn bản viết ra thành lời sang ngôn ngữ Bộ Quy tắc Cơ bản chung có thể được sửa đổi theo

CAN bus de datos.pdf

Differential Driver And Receiver Pair datasheet (Rev E)

mgallegosantos files wordpress 2015 10 ut03 Componentes físicos del CAN Bus Buses de datos El CAN Bus de datos es un bus compuesto por dos cables entrelazados, conectados en paralelo a todas las unidades de control del sistema CAN que corresponde Cables CAN Hight y CAN Lo cuyas

CAN-Bus - ion Del Instructor

manual del instructor - EPA

PDF Characterizing the ``Driver DNA'' Through CAN Bus Data Analysissenseable mit edu 20171020 Fugiglando etal DriverDNA CarSys pdf PDF CAN bus systems and operation Matrix TSL matrixtsl resources files LK9893 80 1 pdf PDF

Can Bus Location Guide

Furuno CAN bus Network Design Guide - Furuno USA

PDF CAN Bus Locations simatik si razno can bus CAN BUS LOCATION GUIDE pdf PDF CAN Bus Troubleshooting Guide esd electronics, Inc esd electronics usa CAN Troubleshooting Guide pdf PDF CAN Bus Communication Guide

Can Can string quartet

74: Permutations and Combinations

declanplummer 08 String Quartet Textures pdf Uniqueness of the String Quartet •String Quartets are very different to other instrumental genres of the Classical period Having only four instruments they can only concentrate on the ‘essentials’ of the music, so there isn’t much opportunity for

Home back Next
<