Documente Academic
Documente Profesional
Documente Cultură
Activity Guide
D84807GC10
Edition 1.0 | February 2015 | D89958
Author
Rosie Piller
Disclaimer
Technical Contributors
and Reviewers
Sreejith Achazhiyathkalathil Arif Iqbal
Srinivas Balantrapu
Mary Keane
Tom Barrett
Istvan Kiss
Eric W. Bell
David Lam
Varsha Bhatia
Michelle Lapid
Graciela Bodnar
Steven Leslie
Heidi Buelow
Jonathan Lopez
Carlos Casares
David Mills
Ariel Cohen
Jill Moritz
Niall Commiskey
Ajay Nair
Avinash Dabholkar
Vinod Nimmagadda
Nicolas Damonte
Prasen Palvankar
Deirdre Duffy
Rebecca Parks
Jerry Elliott
Mary Peek
Soleiman Pello
Augusto Gonzalez
Ron Pinkerton
Joe Greenwald
Mona Rakibe
Trademark Notice
Subramanian Hariharan
David Read
Phoebe He
Eduardo Rubio
Eric Hsiao
Purnima Sahoo
Arif Iqbal
Pablo Schmid
Mary Keane
Eugene Simos
Istvan Kiss
Kenny Somerville
David Lam
Kavitha Srinivasan
Michelle Lapid
Meera Srinivasan
Steven Leslie
Howard Su
Jonathan Lopez
Mariana Tom
David Mills
Sandra Untersander
Jill Moritz
Valeria Untersander
Ajay Nair
Atilio Vivern
Vinod Nimmagadda
Lloyd Williams
Prasen Palvanka
Mark Wilkins
Phoebe He
Carlos Zarate
Eric Hsiao
Editors
Aju Kumar
Malavika Jinka
Graphic Designers
Maheshwari Krishnamurthy
James Hans
Publishers
Michael Sebastian
Srividya Rameshkumar
Sumesh Koshy
Table of Contents
Course Practice Environment: Security Credentials ....................................................................................i-1
Practices for Lesson 1: Course Overview .....................................................................................................1-1
Practices for Lesson 1: Overview ...................................................................................................................1-2
Practices for Lesson 2: The BPM Life Cycle and the Oracle BPM Suite .....................................................2-1
Practices for Lesson 2: Overview ...................................................................................................................2-2
Practices for Lesson 3: Modifying Business Architecture Projects ............................................................3-1
Practices for Lesson 3: Overview ...................................................................................................................3-2
Practice 3-1: Creating a Space and Adding Participants................................................................................3-3
Practice 3-2: Importing and Modifying a Business Architecture Project .........................................................3-6
Practice 3-3: Displaying and Analyzing an Impact Analysis Report ...............................................................3-18
Practices for Lesson 4: Modeling a Process .................................................................................................4-1
Practices for Lesson 4: Overview ...................................................................................................................4-2
Practice 4-1: Creating a Simple Process ........................................................................................................4-3
Practice 4-2: Adding Gateways and Other Types of Tasks ............................................................................4-7
Practices for Lesson 5: Documenting Business Processes ........................................................................5-1
Practices for Lesson 5: Overview ...................................................................................................................5-2
Practice 5-1: Adding Documentation by Using the Graphical View ................................................................5-3
Practice 5-2: Using the Narrative View...........................................................................................................5-6
Practice 5-3: Running Process Reports .........................................................................................................5-11
Practices for Lesson 6: Collaborating on BPM Projects ..............................................................................6-1
Practices for Lesson 6: Overview ...................................................................................................................6-2
Practice 6-1: Collaborating with Other Business Process Composer Users ..................................................6-3
Practice 6-2: Collaborating with BPM Studio Users .......................................................................................6-9
Practices for Lesson 7: Creating and Using Data Objects ...........................................................................7-1
Practices for Lesson 7: Overview ...................................................................................................................7-2
Practice 7-1: Creating and Using Data Objects ..............................................................................................7-3
Practices for Lesson 8: Implementing User Tasks .......................................................................................8-1
Practices for Lesson 8: Overview ...................................................................................................................8-2
Practice 8-1: Creating Human Tasks .............................................................................................................8-3
Practice 8-2: Creating Task Forms.................................................................................................................8-9
Practice 8-3: Mapping Data ............................................................................................................................8-16
Practices for Lesson 9: Implementing Business Rule Tasks .......................................................................9-1
Practices for Lesson 9: Overview ...................................................................................................................9-2
Practice 9-1: Implementing Business Rule Tasks ..........................................................................................9-3
Practices for Lesson 10: Implementing Service Tasks .................................................................................10-1
Practices for Lesson 10: Overview .................................................................................................................10-2
Practice 10-1: Implementing Service Tasks ...................................................................................................10-3
Practices for Lesson 11: Playing the Process ...............................................................................................11-1
Practices for Lesson 11: Overview .................................................................................................................11-2
Practice 11-1: Playing the Process ................................................................................................................11-3
Practices for Lesson 12: Deploying the Process ..........................................................................................12-1
Practices for Lesson 12: Overview .................................................................................................................12-2
Practice 12-1: Deploying a BPM Project ........................................................................................................12-3
Username
Password
mtwain
jausten
Business Process Composer
mmitch
weblogic
weblogic
mmitch
jverne
welcome1
jlondon
mtwain
eheming
fkafka
wfaulk
wshake
BAM Composer
weblogic
Practices for Lesson 2: The BPM Life Cycle and the Oracle BPM Suite
Chapter 2 - Page 1
Practices for Lesson 2: The BPM Life Cycle and the Oracle BPM Suite
Chapter 2 - Page 2
Modify the enterprise map, value chain models, and strategy model to add components
and links.
Demonstrate that you can drill down from the enterprise map to the BPM projects.
Assumptions
There are no assumptions for this practice, other than a successful class setup.
Tasks
1.
Start WebLogic Server for the domain called domain1. Ensure that it is running before you
proceed.
Here are detailed instructions, if you need them:
a. Double-click the Start AdminServer icon on the desktop.
b. Wait until you see the message SOA Platform is running and accepting requests, as
highlighted in the following screenshot:
2.
3.
b.
4.
mmitch: Editor
jausten: Viewer
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
b.
In the Share window, enter mmitch, select Editor, and click Share:
The mmitch user is added to the table at the bottom of the window.
c.
d.
Assumptions
This practice assumes that the mtwain user has created the AcmeUniversity space in Business
Process Composer and added participants mmitch and jausten, granting them Editor and
Viewer role, respectively.
Tasks
1.
Import the CarLoans, JumboLoans, and StudentLoans BPM projects into the
AcmeUniversity space.
Note: Use the Car Loans.exp, Jumbo Loans.exp, and Student Loans.exp files in
the /home/oracle/labs/lab3 folder.
Here are detailed instructions, if you need them:
a. If you are not logged in to Business Process Composer as the mtwain user, log in.
b. From the main menu in the upper-left corner, select Import > Import Project:
c.
In the Import from file window, select the AcmeUniversity space, and browse to find
the Car Loans.exp file in the /home/oracle/labs/lab3 folder:
d.
Click OK.
An Information page should indicate that the project was successfully imported.
Click OK to close the Information page.
e.
f.
2.
3.
Follow similar steps to import the Student Loans and Jumbo Loans BPM projects.
When you have finished, your space will have three BPM projects in it.
Import the Business Architecture for Acme BA project into the AcmeUniversity space.
Note: Use the Business Architecture for Acme_START.barch file in the
/home/oracle/labs/lab3 folder.
Examine the BA project and answer the following questions:
How many enterprise maps does the project have? How many value chain models?
How many strategy models?
In the enterprise map, are any process areas linked to value chain models?
Between the two value chain models, which one is the parent, and which one is the
child? Explain.
Are there links in the two value chain models to other value chain models or to BPM
processes?
In the strategy model, how many objectives make up the goal of achieving financial
viability?
b.
Notice that the project is shared. Click the 3 users link to look at the project team:
c.
d.
e.
f.
Question: How many enterprise maps does the project have? How many value chain
models? How many strategy models?
Answer: The project has one enterprise map, two value chain models, and one
strategy model.
The Enterprise Map view should be displayed. If it is not, click Enterprise Map in the
left menu.
To open the enterprise map, click it:
g.
h.
i.
Question: In the enterprise map, are any process areas linked to value chain models?
Answer: No, there are no links to value chain models.
Click the Project Home tab.
On the Project Home page, in the left menu, click Value Chain Model.
The two value chain models are shown:
Click the two value chain models to display them in separate tabs.
The value chain models look like the following screenshots:
Loan Application value chain model:
j.
k.
Question: Between the two value chain models, which one is the parent, and which
one is the child? Explain?
Answer: You cannot tell for sure; however, because Manage Financial Resources has
a value chain step named Loan Application, it's likely that Manage Financial Resources
is the parent, and Loan Application is the child.
Question: Are there links in the two value chain models to other value chain models or
to BPM processes?
Answer: No
On the Project Home page, in the left menu, click Strategy Model.
The strategy model is listed:
4.
Question: In the strategy model, how many objectives make up the goal of achieving
financial viability?
Answer: Five
Question: What strategies fulfill the Revenue base objective?
Answer: Alternate flow of income and Projects audit
Question: Are any strategies mapped to value chain models?
Answer: No
Add a process area named Manage Financial Resources to the Management lane of
the enterprise map, and link it to the Manage Financial Resources value chain model.
Ensure that you can drill down from the Manage Financial Resources process area to the
value chain model to which it is linked. Save your changes.
b.
c.
d.
e.
f.
g.
h.
Select the Business Architecture for Acme project, and click Next.
Select the Manage Financial Resources value chain, and click Finish.
The Links pane now indicates that the process area is linked to the selected value
chain model:
i.
5.
j.
k.
Add and link a strategy and value chain to the strategy model, as follows:
Add a strategy named Equal access for students with financial constraints to the
Student fee objective.
Add a value chain named Manage Financial Resources to the Equal access for
students with financial constraints strategy.
Link the Manage Financial Resources value chain in the strategy model to the Manage
Financial Resources value chain model in the BA project.
Ensure that you can drill down from the value chain in the strategy model to the Manage
Financial Resources value chain model in the BA project. Save your changes.
Here are detailed instructions, if you need them:
a. Click the Achieve Financial Viability tab to display the strategy model.
b. Drag a strategy to the canvas and name it Equal access for students with financial
constraints.
c. Draw a link to the new strategy from the Student fee objective.
d. Drag a value chain to the canvas and name it Manage Financial Resources.
e. Draw a link to the new value chain from the Equal access for students with financial
constraints strategy.
f. Edit the properties of the value chain in the strategy model to link to the value chain
model of the same name (Manage Financial Resources).
g. Close the Properties pane.
The value chain now has a link:
h.
i.
6.
Link from the Loan Application step in the Manage Financial Resources value chain model
to the Loan Application value chain model, and test the link. Save your changes.
Here are detailed instructions, if you need them:
a. Ensure that you are viewing the Manage Financial Resources value chain model.
b. Right-click the Loan Application value chain step and select Properties:
c.
d.
In the Link window, select the Business Architecture for Acme project and click Next.
e.
The Loan Application value chain step in the Manage Financial Resources value chain
model is now linked to the Loan Application value chain model. You can see this link in
the Links pane:
A link icon now appears in the Loan Application value chain step:
f.
g.
7.
Link from the Car Loans step to CarLoansProcess in the Car Loans BPM project.
Link from the Student Loans step to StudentLoansProcess in the Student Loans BPM
project.
Link from the Jumbo Loans step to JumboLoansProcess in the Jumbo Loans BPM
project.
Save your changes.
Here are detailed instructions, if you need them:
a. Ensure that you are viewing the Loan Application value chain model.
b. Right-click Car Loans and select Properties.
The Properties pane displays at the bottom of the window.
c. In the Links pane, click the Browse button.
d. In the Link window, select the Car Loans project and click Next.
e.
f.
g.
8.
Follow similar steps to create links from the Student Loans value chain step in the Loan
Application value chain model to StudentLoansProcess in the Student Loans BPM
project, and from the Jumbo Loans value chain step to JumboLoansProcess in the
Jumbo Loans BPM project.
Test the links to ensure that you can navigate from each of the three value chain steps
to the appropriate BPM process.
To navigate back to the BA project from the BPM projects, click the BA project name at
the top:
In the enterprise map, drill down from the Manage Financial Resources process area to
the Manage Financial Resources value chain model.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
9.
In the strategy model, drill down from the Manage Financial Resources value chain
model to the Manage Financial Resources value chain model in the BA project.
In the Manage Financial Resources value chain model, drill down from the Loan
Application value chain step to the Loan Application value chain model (which is a child
of the Manage Financial Resources value chain model).
In the Loan Application value chain model, drill down from the Car Loans, Student
Loans, and Jumbo Loans value chain steps to corresponding BPM processes.
Publish the project, providing comments in the Publish dialog box to describe what you
have done. Ensure that the lock is released. Do not create a snapshot and do not publish a
project report.
a. Click the Publish button:
b.
c.
The Publish Project window appears, listing the unpublished changes and the number
of artifacts that have been modified.
You are prompted to provide a comment and to decide whether to release the lock,
make a snapshot, and publish a project report.
Enter a comment to describe the changes you have made. Ensure that the Release
lock check box is selected. Do not select the Make snapshot or Publish Project
Report check boxes.
When you have finished, click Publish.
Assumptions
This practice assumes that the mtwain user has created the AcmeUniversity space in Business
Process Composer, imported the Business Architecture project named "Business Architecture
for Acme," and modified it according to instructions in the previous practice.
Tasks
1.
c.
Click the plus sign, enter a name and description for the new organization unit, and
click Create:
2.
c.
d.
The Achieve Financial Viability goal is now linked to the Acme Finance Unit
organization unit:
3.
4.
b.
5.
In the Publish reports data window, ensure that Current version is selected and that
Snapshot is not selected. Then click OK:
c. When you get confirmation that the report data was successfully published, click OK.
Display the Impact Analysis report by value chain. Browse the model by goal and then by
organization unit, expanding the objective and strategy that is linked to the Manage
Financial Resources value chain model.
Hint: Examine the Achieve Financial Viability strategy model to determine which objective
and strategy to use.
Answer the following questions:
What objective and strategy do you need to expand in order to find the Manage
Financial Resources value chain model?
When you select the Manage Financial Resources value chain model in the left pane,
what associations are displayed in the right pane?
What is the difference between displaying the Impact Analysis report by goal compared
to displaying it by organization unit?
The report appears on a new browser tab. The BA project has only one goal, Achieve
Financial Viability; therefore, that is the only goal that is listed:
b.
c.
Expand the goal and the objectives under the goal. Find the strategy that links to the
Manage Financial Resources value chain model.
Hint: Examine the Achieve Financial Viability strategy model to determine which
objective and strategy to use.
Question: What objective and strategy do you need to expand in order to find the
Manage Financial Resources value chain model?
Answer: You need to expand the Student fee objective and the Equal access for
students with financial constraints strategy.
In the left pane, select the Manage Financial Resources value chain model.
Your window should look similar to the following screenshot:
d.
Question: When you select the Manage Financial Resources value chain model in the
left pane, what associations are displayed in the right pane?
Answer: The first pane on the Associations tab indicates the child value chain models
for Manage Financial Resources, and the second pane lists the steps in the Manage
Financial Resources value chain model.
Select By Organization Unit from the Viewpoint menu:
The page refreshes. The BA project has only one organization unit, Acme Finance
Unit; therefore, that is the only organization unit that is listed:
e.
6.
Expand the organization unit and the Achieve Financial Viability goal, the Student fee
objective, and the Equal access for students with financial constraints strategy. Then
select the Manage Financial Resources value chain model.
Your window should look similar to the following screenshot:
Question: What is the difference between displaying the Impact Analysis report by
goal compared to displaying it by organization unit?
Answer: When you display the Impact Analysis report by organization unit, the goal
and all of its objectives, strategies, and so on are listed by organization unit. In all other
respects, the reports are identical.
Close the Impact Analysis Report.
7.
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have created a space named AcmeUniversity.
Tasks
1.
c.
Enter the project name and description. Ensure that the AcmeUniversity space is
selected, and click Save:
2.
Create a process named LoanProcess in the LoanApplication BPM project. Open the
process, but do not add any components to your process yet. Answer the following
question:
b.
c.
d.
3.
Similarly, add a User Task named Review Loan Application between Capture
Loan Request and the End event.
When you have finished, your process model will look like the following:
e.
4.
Ensure that the first interactive task has the Initiator icon (as shown in the screenshot)
and the second interactive task has the User Task icon.
Drag the Review Loan Application task and the End event to a second swimlane. Associate
the first swimlane with a new role named LoanOfficer, and associate the second
swimlane with a new role named LoanProcessor.
Here are detailed instructions, if you need them:
a. Drag the Review Loan Application task and the End event to a second swimlane below
the first.
b. Select the first swimlane label and enter LoanOfficer.
c.
5.
Assumptions
This practice assumes that you have created the LoanApplication BPM project and the
LoanProcess process. The process contains a start and end event, two user tasks, and two
swimlanes (which are named LoanOfficer and LoanProcessor, respectively).
Tasks
1.
Add an exclusive gateway named Review Outcome between Review Loan Application
and the End event. Create a conditional flow path named Need More Details from the
gateway to Capture Loan Request. The default flow path should proceed to the End event.
At the end of this task, the first part of your process model will look like the following:
2.
3.
Add a business rule task named Credit Rules between the Review Outcome gateway and
the End event.
Here are detailed instructions, if you need them:
a. Move the End event farther to the right to allow space for three additional activities.
b. In the BPMN component palette, click the Activity icon, and drag a business rule task
about half way between Review Outcome and the End event.
Note: In the expanded component palette, you may need to scroll down to find
Business Rule.
c. Select the business rule task label and name the task Credit Rules.
Similarly, add two service tasks:
After the Review Outcome gateway, add a service task named Credit Rating.
After the Credit Rules business rule task, add a service task named Disburse Loan.
When you have finished, your process model should look similar to the following process
model:
4.
Publish the project, providing comments in the Publish dialog box to describe what you
have done. Ensure that the lock is released. Do not create a snapshot.
Here are detailed instructions, if you need them:
a. Click the Publish button:
b.
The Publish Project window appears, listing the unpublished changes and the number
of artifacts that have been modified.
You are prompted to provide a comment and decide whether to create a snapshot.
Enter a comment to describe the changes so far. Do not select the Make snapshot
check box.
c.
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have created a BPM project named LoanApplication in the
AcmeUniversity space. It also assumes that you have modeled a process named LoanProcess
as described in Practice 4-2.
Tasks
1.
Using the Graphical view, add documentation to help those who will perform the Review
Loan Application task.
Here are detailed instructions, if you need them:
a. Open LoanProcess and ensure that it is open for editing.
b. Click the pencil icon next to Review Loan Application, and select Documentation.
c. In the Documentation Type menu, ensure that End User is selected.
Hint: You may need to click the double-right arrows on the toolbar to see the
Documentation Type menu.
d.
e.
Add instructions that would be useful to those who will perform this task, as in the
following example: Please ensure the loan application is completely
filled out.
Click Apply Changes.
2.
Configure RACI settings and at least one issue for the Review Loan Application task.
Here are some examples:
b.
In the left navigation menu, click RACI to display the RACI view.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
c.
3.
Select LoanProcessor from the Responsible menu, and select other roles for one or
more of the other fields.
d. In the left navigation menu, click Issues to display the Issues view.
e. Click the Add icon, enter an issue, select Severity, Priority, and Status, and click OK.
The issue appears in the Issues view.
Save your changes, keeping the project open for further editing.
Assumptions
This practice assumes that you have added documentation to LoanProcess by using the
Graphical view.
Tasks
1.
2.
While still in the Graphical view, rename the existing End event Loan Fulfilled, and
add a freestanding End event to your process named Loan Rejected. When you have
finished, the end of your process should be similar to the following screenshot:
How does the Narrative view indicate branching for the Review Outcome gateway?
Does the Narrative view display the end-user documentation that you entered for the
Review Loan Application task in the previous practice? Is it editable?
For the Review Loan Application task in Narrative view, what is the difference between
Description and Documentation?
Here are detailed instructions, if you need them:
a. Click the Narrative tab.
b.
c.
3.
Question: How does the Narrative view indicate branching for the Review Outcome
gateway?
Answer: It uses an If-Otherwise format.
Click Review Loan Application to display details for that task.
Here is an example:
Question: Does the Narrative view display the end-user documentation that you
entered for the Review Loan Application task in the previous practice? Is it editable?
Answer: Yes, the Narrative view displays the end-user documentation, and yes, it is
editable.
Question: For the Review Loan Application task in Narrative view, what is the
difference between Description and Documentation?
Answer: In the Narrative view, the Description field contains information for an internal
audiencefor your collaborators. The Documentation field contains help for end users
who are participating in the process.
Using the Narrative view, add role descriptions for the LoanProcessor and LoanOfficer
roles. Here are some suggestions:
b.
c.
4.
Still in the Narrative view, add a new user task named Underwriter Review between
Credit Rules and Disburse Loan, and assign the new task to a new role named
Underwriter.
Here are detailed instructions, if you need them:
a. Click the Credit Rules business rule task to expand it.
b. Click Add > Activity.
c.
d.
e.
f.
g.
5.
b.
c.
d.
e.
Question: When you first add the gateway, what branching is indicated in the Narrative
view for that gateway?
Answer: The gateway has just one outgoing sequence flow: To the Disburse Loan
task.
Click the gateway to expand it.
Name it Underwriter Outcome.
Click the Add condition down arrow and select the Loan Rejected event.
Enter Rejected by Underwriter in the blank field:
Question: In the Narrative view, can you add more than one conditional flow to the
gateway?
Answer: Yes
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
6.
Question: In the Narrative view, can you name conditional flows? Can you name
default flows?
Answer: In the Narrative view, you can name conditional flows, but you cannot name
default flows. The key word Otherwise is used for default flows.
In the Graphical view, examine your process, name the default flow from the Underwriter
Outcome Approved by Underwriter, and fix the formatting if necessary.
Here is a sample:
Does the Graphical view show a new swimlane for the Underwriter?
b.
7.
Place the cursor over the sequence flow between Underwriter Outcome and Disburse
Loan, and click the pencil icon.
c. Enter Approved by Underwriter in the Name field.
d. If necessary, move flow components into place to match the process model that is
shown in the task instructions.
Question: Does the Graphical view show a new swimlane for the Underwriter?
Answer: Yes
Question: Which process components were added to that swimlane?
Answer: Underwriter Review, Underwriter Outcome, Loan Rejected, Disburse Loan, and
Loan Fulfilled
Publish the project, releasing the lock.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Assumptions
This practice assumes that you have made changes to LoanProcess as described in Practices
5-1 and 5-2.
Tasks
1.
Display a Detailed Business Process report for the Loan Application BPM project in HTML
format, ensuring that both documentation and business properties are included. Answer the
following questions:
In the Project Details section of the Detailed Business Process report, how many
processes are listed?
Does the report display the end-user documentation and issues that you defined for the
Review Loan Application user task?
b.
In the Process Report window, ensure that Detailed Business Process is selected,
select the Show Documentation and Show Business Properties check boxes, and
ensure that HTML is selected as the output type:
c.
2.
3.
4.
Click OK.
The Detailed Business Process report opens in a new browser window.
d. Scroll down to examine the various sections of the report and to answer the questions
that were posed in the task description.
Question: In the Project Details section of the Detailed Business Process report, how many
processes are listed?
Answer: One: LoanProcess
Question: Which participants are listed?
Answer: LoanOfficer, LoanProcessor, Process Owner, Process Reviewer, Unassigned
Role, and Underwriter
Question: Does the report display the end-user documentation and issues that you defined
for the Review Loan Application user task?
Answer: Yes
Question: What does Appendix E contain?
Answer: Validation errors
Display and examine the RACI Report.
Question: Does the report display the RACI information that you defined for the Review
Loan Application user task?
Answer: Yes
Display one or two other process reports and examine their contents.
Close the reports, close the LoanApplication project, and log out of Business Process
Composer.
Because the class environment is not resourced the way a production environment
would be, it is a good idea to restart AdminServer periodically.
5. Restart AdminServer as follows:
a. On the desktop, double-click Stop AdminServer.
After a short time, the terminal windows for both the stop and start processes will close
automatically.
b. On the desktop, double-click Start AdminServer.
Creating snapshots
At the end of this practice, as a result of process updates, LoanProcess will look similar to the
following process model:
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have created LoanProcess and updated it as described in
Practices 5-1 and 5-2.
Tasks
1.
While logged in to Business Process Composer as the mtwain user, examine participant
privileges for the AcmeUniversity space and answer the following questions:
b.
Click Participants:
2.
3.
d.
4.
As the mtwain user, ensure that LoanApplication is open for viewing, but not open for
editing. Open a separate private Firefox browser window, log in to Business Process
Composer as the jausten user, and open LoanApplication for editing. Answer the
following questions:
Can the jausten user see who else is currently viewing or editing the project?
While the jausten user has the project open for editing, can the mtwain user (the
Owner of the project) view it, edit it, and see who is currently editing the project?
Explain.
Here are detailed instructions, if you need them:
a. In the Firefox browser window, select File > New Private Window.
b. Log in as the jausten user.
c. Click Loan Application and open it for editing.
Question: Can the jausten user open LoanApplication for editing? Explain.
Answer: Yes. She was granted editing privileges in a previous step and no other user
has a lock on the project. (The mtwain user released the lock.)
d. Click the Currently watching Users icon:
5.
Question: Can the jausten user see who else is currently viewing or editing the
project?
Answer: Yes
Question: While the jausten user has the project open for editing, can the mtwain
user (the Owner of the project) view it, edit it, and see who is currently editing the
project? Explain.
Answer: The mtwain user can view the project and see who is currently editing the
project, but he cannot edit the project because the jausten user has locked it by
opening it for editing.
e. Click OK to close the Team window.
As the jausten user, close LoanApplication without making any changes, and release the
lock. Answer the following questions:
After the jausten user closes the application and releases the lock, can the
mtwain user open the project for editing? Explain.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Would your answer to the first question change if the jausten user had not
released the lock?
Here are detailed instructions, if you need them:
a. Click Close Project, and ensure that the Release Lock check box is selected.
Question: After the jausten user closes the application and releases the lock, can
the mtwain user open the project for editing? Explain.
Answer: Yes, because the jausten user released the lock on the project.
6.
7.
Question: Would your answer to the first question change if the jausten user had not
released the lock?
Answer: Yes. If the jausten user does not release the lock, then the mtwain user
cannot acquire it, even if he is the Owner.
As the jausten user, log out of Business Process Composer and close that browser
window.
As the mtwain user, view the latest changes to the project. Answer the following questions:
Has anyone other than the mtwain user published changes to the project?
Question: Has anyone other than the mtwain user published changes to the project?
Answer: No
8.
9.
c.
d.
Assumptions
This practice assumes that you have updated and published LoanProcess as described in
Practice 6-1.
Tasks
1.
2.
Is it possible to create an IDE connection to the server if the server is not running?
c.
d.
e.
f.
g.
h.
i.
In the Configuration window, change the domain name to domain1, and click Next.
In the Test window, click the Test Connection button.
The Status table should indicate that all of the tests were successful.
Click Next.
In the Finish window, click Finish.
In the Resources pane, in the IDE Connections folder, expand the Application Server
folder.
MyAppServerConnection is listed:
j.
3.
Question: Is it possible to create an IDE connection to the server if the server is not
running?
Answer: No. The connection tests will fail, and the connection will not be created.
Question: What is the name of the SOA application server?
Answer: AdminServer
Create a BPM application named LoanApplicationBPMApp with an empty composite
named BpmProject.
Here are detailed instructions, if you need them:
a. In the Applications Navigator, click New Application.
The New Gallery Wizard opens.
b. In the Items pane on the right, select BPM Application and click OK.
The Application Name page of the Create BPM Application Wizard opens.
c. In the Application Name field, enter LoanApplicationBPMApp and click Next.
The Project Name page opens.
d. Accept the default project name, and click Next.
The Project SOA Settings page opens.
e. Select Empty Composite and click Finish.
The application is created, and the Applications Navigator now displays assets for the
new application:
4.
b.
c.
d.
The Welcome page of the Create Process Asset Manager Connection Wizard opens.
Click Next.
Enter MMitchPAMConnection in the Connection Name field, enter the mmitch users
credentials, and click Next:
e.
f.
5.
What role does the mmitch user have for the assets that are visible in
MMitchPAMConnection?
Are any of these assets locked?
6.
b.
7.
In the Check Out project from PAM window, accept the default destination and click
OK:
After a short time, the project is checked out and appears in the Applications Navigator.
In Business Process Composer, as the mtwain user, try to open LoanApplication for
editing and answer the following question:
8.
Add a gateway named Routing and two conditional branches. The Automatically
Rejected conditional branch should flow to Loan Rejected, and the Automatically
Approved conditional branch should flow to Disburse Loan.
For readability, move Credit Rules to the Underwriter swimlane. (It does not matter
what swimlane business rule tasks are in.)
When you have finished, your process should look like this process model:
d.
e.
f.
g.
h.
i.
j.
9.
Move the Credit Rules business rule task and the Routing gateway to the Underwriter
swimlane (to the left of the Underwriter Review user task) and make other adjustments
as necessary to make the process model more readable.
Click Save All to save your changes.
10. In BPM Studio, try to publish the project by saving it to PAM by using the
MMitchPAMConnection and answer the following question:
c.
In the Snapshots window, click the Add icon, enter LoanApp_v2 in the Name field,
enter a description, and click OK.
The new snapshot is listed in the Snapshots window:
Does the current version of LoanProcess reflect the changes that were made in BPM
Studio?
Does the Recent activity pane have a record of the changes that were made in BPM
Studio? Were these changes published? By which user?
When you open LoanProcess, you should see a process model that is similar to this:
Question: Does the current version of LoanProcess reflect the changes that were made in
BPM Studio?
Answer: Yes
The Recent activity pane should show the most recent change by the BPM Studio user
(who connected to the mmitch users space):
Question: Does the Recent activity pane have a record of the changes that were made in
BPM Studio? Were these changes published? By which user?
Answer: Yes, the Recent activity pane has an entry for the changes made in BPM Studio
and these changes were published by the mmitch user.
Question: Is the LoanApp_v2 snapshot visible to the mtwain user in Business Process
Composer?
Answer: Yes
16. Close the Snapshots window.
Validating a process
Validating the process again, comparing results with the validation you performed
earlier
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have modeled LoanProcess as described in Practice 6.
Tasks
Important note: The tasks in this practice can be performed by using either BPM Studio or
Business Process Composer. Select one of these tools. Then, use the same tool in all practices
in which you are given the choice, namely 8-1, 8-3, 15-1, and 15-2. Do not perform the tasks in
both tools.
1. Using the tool that you have selected, display the validation errors (live issues) for the
project and answer the following questions:
What validation error (live issue) appears for the Review Loan Application activity?
What errors (live issues) are reported for the three gateways in LoanProcess? Explain.
Here are detailed instructions for Business Process Composer, if you need them:
a. Click Validate on the Project toolbar:
In a few seconds, the Validation results appear at the bottom of the window:
Question: What errors are reported for the three gateways in LoanProcess? Explain.
Answer: For all three exclusive gateways, the validation process reports errors for
conditional branches that have not been configured.
b. Close the Validation pane.
c. Proceed to task 2.
Here are detailed instructions for BPM Studio, if you need them:
d. Click Save All or open the Live Issues tab manually (Window > Issues).
e. Configure the Live Issues tab to display current issues at the Project level:
Note: If you see more than this, check for duplication. Sometimes issues are listed
twice.
Question: How many live issues are there?
Answer: 10
Question: What live issue appears for the Review Loan Application activity?
Answer: That activity has no implementation defined.
Question: What live issues are reported for the three gateways in LoanProcess?
Explain.
Answer: For all three exclusive gateways, the validation process reports errors for
conditional branches that have not been configured.
2.
Create the following four basic data objects (that is, data objects based on simple data
types):
reviewOutcome (STRING): This data object will be used by the Review Outcome
gateway.
creditRating (STRING): This data object will be used by the Credit Rules business
rule activity.
routing (STRING): This data object will be used by the Routing gateway.
b.
In the Data objects window, click Add and select Process data object:
c.
d.
Provide a name for the data object, select the appropriate type, and click OK.
Create the other three data objects similarly.
When you have finished creating all four data objects, an expanded LoanProcess
folder in the Data Objects window will look like the following:
h.
In the Structure pane at the bottom of the window, right-click Process Data Objects and
select New:
i.
Provide a name for the data object, select the appropriate type, leave Auto initialize
selected, and click OK.
j. Create the other three data objects similarly.
When you have finished creating all four data objects, an expanded Process Data Objects
folder in the Structure pane will look like the following:
3.
Configure the conditional branch of the Review Outcome gateway so that process
instances are routed back to Capture Loan Application if reviewOutcome has a value of
REJECT. (Hint: The data type of reviewOutcome is STRING; therefore, when comparing
the data object to a value, use quotation marks around the value.)
Here are detailed instructions in Business Process Composer, if you need them:
a. Place the cursor over Need More Details and click the pencil icon:
b.
Click Implementation.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
c. In the Implementation pane, click the Edit button to open the Expression Editor.
d. Select reviewOutcome in the table, and click Insert Into Expression.
e. Complete the expression as follows: reviewOutcome=="REJECT"
f. Click OK to close the Expression Editor.
g. Click Apply Changes and collapse the Implementation pane.
h. Proceed to task 4.
Here are detailed instructions in BPM Studio, if you need them:
i. Right-click Need More Details and select Properties.
4.
5.
b. Proceed to task 6.
Here are detailed instructions for BPM Studio, if you need them:
c. Click Save All or display the Live Issues tab manually (Window > Issues).
Here are sample results:
6.
If you are using Business Process Composer, click the Publish icon, enter a comment
to describe your changes, ensure that the Release lock check box is selected, and
click the Publish button.
If you are using BPM Studio, right-click the project, select Save to PAM, enter a
comment to describe your changes, and click OK.
Creating and editing human tasks for each of the user tasks in LoanProcess
Mapping data from the process to the human tasks and back again
Validating the process to ensure that there are no validation errors (live issues) for the
user tasks
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have modeled LoanProcess as described in Practice 6. It also
assumes that you have created data objects and configured branching for the Review Outcome
and Underwriter Outcome gateways as described in Practice 7-1.
Tasks
Note: The tasks in this practice can be performed by using either BPM Studio or Business
Process Composer. Use the same tool that you used in Practice 7-1.
1. If you are using BPM Studio, ensure that you have the latest version of the project.
Here are detailed instructions, if you need them:
a. In the Applications Navigator, right-click LoanApplication and select Update.
b. In the Update Status window, click OK.
2. Using the tool that you have selected, display the validation errors (live issues) for the
project and answer the following questions:
What validation errors (live issues) appear for the three user tasks in the process?
Here are detailed instructions for Business Process Composer, if you need them:
a. Click Validate on the Project toolbar.
In a few seconds, the Validation results appear at the bottom of the window:
b.
Here are detailed instructions for BPM Studio, if you need them:
c. Click Save All or display the Live Issues tab manually (Window > Issues).
Here are sample results:
3.
Name: CaptureLoanTask
Outcome: SUBMIT
Examine all views in the human task editor but leave all other values at their defaults.
Answer the following questions:
What human workflow pattern does Capture Loan Request use? (Hint: In Business
Process Composer, this is displayed in the Implementation view. In BPM Studio, this is
displayed in the Create Human Task dialog box.)
e.
f.
g.
h.
4.
o.
p.
q.
r.
s.
5.
Examine all views but leave all other values at their defaults. Answer the following
questions:
6.
7.
Are there still validation errors (live issues) for the user tasks? Explain.
Here are sample validation results from Business Process Composer:
Question: Are there still validation errors for the user tasks? Explain.
Answer: No, there are no longer any validation errors for the user tasks because they have
now been at least partially implemented. (Data has not yet been mapped for these user
tasks, but this does not show up in validation results.)
Here are sample results from BPM Studio:
Question: Are there still live issues for the user tasks? Explain.
Answer: No, there are no longer any live issues for the user tasks because they have now
been at least partially implemented. (Data has not yet been mapped for these user tasks,
but this does not show up as a live issue.)
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
8.
If you are using Business Process Composer, click Publish, enter a comment to
describe your changes, ensure that the Release lock check box is selected, and click
Publish.
If you are using BPM Studio, right-click the project, select Save to PAM, enter a
comment to describe your changes, and click OK.
Assumptions
This practice assumes that you have created and edited three human tasks as described in
Practice 8-1.
Tasks
1.
2.
Using Business Process Composer, open the LoanApplication project for editing.
Open the Basic view of the CaptureLoanTask human task and create a web form named
LoanForm.
Here are detailed instructions, if you need them:
a. On the Project Home page, click Human Tasks and click CaptureLoanTask.
The Basic tab appears.
b. In the Presentation section, select Web Form.
c. Click Create New Web Form:
d.
3.
Edit LoanForm and create a form that contains two tabs like the following:
The State drop-down menu should offer three options. Here is an example:
California
Colorado
New York
Hint: Add the tabs first. Then create the fields from the bottom up.
b.
c.
d.
e.
f.
When you have finished, the Borrower Details tab will look like the following:
g.
Edit the properties of Marital Status by selecting the component and expanding the
PROPERTIES pane. Specify two options:
h.
i.
Edit the properties of Date of Birth, Phone, Social Security Number, State, and Zip
Code to have a width of four grid columns. (Hint: You can set width on the Style tab of
the PROPERTIES pane for an individual component.)
When you have finished, the Borrower Details tab should look like the following:
j.
Similarly, compose the Loan Details tab, building the form from the bottom up using the
following components:
Number of Months (Quantity type)
Interest Rate (Number type)
Loan Amount (Money type)
When you have finished, the Loan Details tab should look like the following:
4.
5.
6.
Click the Borrower Details tab, and then save your changes. (This ensures that the
Borrower Details tab displays first when the form opens at run time.)
Examine the Data view of CaptureLoanTask, and answer the following question:
Question: Does the CaptureLoanTask human task now have task data? Explain.
Answer: Yes. Creating a form within a human task automatically adds task data to the
human task.
e.
7.
Select LoanForm.
The web form is associated with the human task.
f. In the same way, associate LoanForm with UnderwriterTask.
Publish the project, releasing the lock.
Assumptions
This practice assumes that you have created human tasks and a web form as described in
Practices 8-1 and 8-2.
Tasks
Note: The tasks in this practice can be performed by using either BPM Studio or Business
Process Composer. Use the same tool that you used in Practice 7-1.
1. If you are using BPM Studio, ensure that you have the latest version of the project.
Here are detailed instructions, if you need them:
a. In the main canvas, close any project-related tabs that are open.
b. In the Applications Navigator, right-click LoanApplication and select Update.
c. If the Update Status window appears, click ok.
2. Using the tool that you have selected, map data for the Capture Loan Request user task.
Hint
In LoanProcess, you need to create a process data object that is based on the
LoanForm data type (business object). Name the data object loanDO, and use that
data object when mapping data (a) from the process to the human task, and (b) back to
the process.
Keep in mind that the Loan Processor can send the loan application back to the Loan
Officer if it is incomplete.
c.
In the Data Objects window, click Add and select Process data object.
d.
In the New Process Data Object dialog box, enter the name of the data object
(loanDO), select object, ensure that LoanForm is selected in the Business Object
menu, and click OK:
e.
f.
g.
Note: If the data object that you are mapping disappears from the Data Objects list in
the Data Association window, click Apply and reopen the Data Association window.
h. Click Apply.
i. Proceed to task 3.
Here are detailed instructions for BPM Studio, if you need them:
j. In the Applications Navigator, select LoanProcess.
k. In the Structure pane, right-click Process Data Objects and select New.
l. In the Create Data Object window, enter a name for the data object (loanDO), select
Browse from the Type menu, select LoanForm in the Browse Types window, and click
OK.
m. Click OK to close the Create Data Object window.
n. Right-click Capture Loan Request and select Properties.
o. In the Properties window, click the Implementation tab.
p. On the Implementation tab, click Data Associations.
q. On the Input tab of the Data Associations window, map loanDO to loanForm.
r. On the Output tab, map loanForm to loanDO.
s. Click OK to close the Data Associations window.
t. Click OK to close the Properties window.
3.
4.
5.
Do you need to map loanDO both into and out of the user task? Explain.
There are no longer any validation errors related to the three user tasks.
Here are sample live issues from BPM Studio:
6.
7.
8.
9.
There are no longer any live issues related to the three user tasks.
Save your changes.
Publish the revised project:
If you are using Business Process Composer, click Publish, enter a comment to
describe your changes, ensure that the Release lock check box is selected, and click
Publish.
If you are using BPM Studio, right-click the project, select Save to PAM, enter a
comment to describe your changes, and click OK.
If you are using Business Process Composer, close the project and log out.
Restart AdminServer as follows:
a. On the desktop, double-click Stop AdminServer.
After a short time, the terminal windows for both the stop and start processes will close
automatically.
b. On the desktop, double-click Start AdminServer.
Validating the process to ensure that there are no validation errors for the business rule
task or the Routing gateway
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have modeled LoanProcess as described in Practice 6,
configured branching for the Review Outcome and Underwriter Outcome gateways as described
in Practice 7, and implemented the user tasks as described in Practice 8.
Tasks
1.
2.
If (and only if) you performed the tasks in the previous practice by using Business Process
Composer, then update the project in BPM Studio.
a. Close all project-specific tabs in the main canvas, including LoanProcess.
b. In the Applications Navigator, right-click LoanApplication and select Update.
c. If the Update Status window opens, click OK.
Using BPM Studio, open LoanProcess, examine the issues that are listed on the Live
Issues tab, and answer the following question:
3.
4.
loanAmount (DOUBLE)
creditRating (STRING)
Here are detailed instructions, if you need them:
a. Right-click Business Components and select New > Business Object.
b. In the Create Business Object window, enter RuleInput in the Name field, click the
Browse button in the Destination Module field, select BusinessData in the Browse
Modules window, click OK to close the Browse Modules window, and click OK in the
Create Business Object window.
c.
d.
e.
When you have finished, the RuleInput tab will display both attributes:
5.
6.
Similarly, create a business object named RuleOutput that resides in the BusinessData
module and contains a single attribute:
loanApprovalStatus (STRING)
Create two process data objects for LoanProcess:
7.
After the two data objects are created, you can create the business rule.
8. Using the Implementation view of the Credit Rules business rule task, create a business
rule named CreditRules that is associated with the Credit Rules task. Base the rules
input and output data objects (ruleInputDO and ruleOutputDO) on the RuleInput and
RuleOutput business objects that you just created.
Here are detailed instructions, if you need them:
a. In the LoanProcess model, right-click the Credit Rules business rule task and select
Properties.
The Basic tab of the Properties window opens.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
b.
c.
d.
e.
f.
g.
h.
i.
e.
f.
g.
h.
Select the new value set, and click the Edit icon.
The Edit Range Value Set window opens.
Enter Loan Amount in the Name field, and select double from the Data Type menu.
Click the Add Value With Lower Endpoint Included icon.
A new row appears in the Range Values table.
Change the endpoint to 10000.
i.
Add two more rows, with endpoints of 100000 and 500000, respectively.
Note: If there is no reaction when you click the Add Value With Lower Endpoint
Included icon, select the Infinity row and try again.
The Range Values table should now look like this:
j.
k.
Click OK.
The new value set is listed in the Value Sets table.
11. Create a list value set named Credit Rating (Type: STRING) and add the following
possible values:
"POOR"
"GOOD"
"EXCELLENT"
Accept the default aliases.
Note
Perform steps that are similar to the ones you performed in the previous step.
However, select Value Set instead of Range Value Set, and ensure that the data type
of the value set is string. It is not necessary to update the aliases.
Values must match the requirements exactly in order for the rule to fire when you
invoke an external web service in a later practice. Note the spelling, quotation marks,
and uppercase letters that are used for all three values.
12. Save your changes.
13. Using the rule input and output data objects as well as the value sets that you created in the
previous tasks, create a decision table named CreditRules that reflects the rules that are
shown in the following table:
If loan amount is
< 10,000
"POOR"
"MANUAL_APPROVAL"
>= 10,000
"POOR"
"AUTO_REJECTED"
< 10,000
"GOOD"
"AUTO_APPROVED"
>= 10,000
"GOOD"
"MANUAL_APPROVAL"
< 100,000
"EXCELLENT"
"AUTO_APPROVED"
>= 100,000
"EXCELLENT"
"MANUAL_APPROVAL"
Note: If you do not see the Local Range Value Set menu, click the question mark in
Rule 1 (in the same row as the loanAmount condition), and then click Cancel.
g.
Similarly, add a condition for the creditRating attribute, and associate it with the Credit
Rating value set:
h.
Click the down arrow next to the green icon, and select Action > assert new:
i.
j.
k.
Select the Parameterized check box, and ensure that the Always Selected check box is
selected:
l.
Click OK.
The action is added to the decision table.
Now you are ready to define rules and actions.
m. Configure Rule 1:
1) Click the field next to RuleInputType.loanAmount, select the Less than 10,000
check box from the menu, and click OK:
Note: If you do not see the values, go back to a previous step to associate the
Loan Amount value set with the loanAmount condition.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
n.
o.
p.
q.
2)
Click the field next to RuleIntputType.creditRating, select the "POOR" check box,
and click OK:
3)
Click the field next to loanApprovalStatus and enter the following value (including
the quotation marks and in uppercase): "MANUAL_APPROVAL"
When you have finished, Rule 1 should look like the following:
Click the down arrow next to the Add icon (green plus sign) and select Rule to add a
new rule to the decision table. Then configure the rule to meet the following
requirements:
If the loan amount is greater than or equal to 10,000 and the applicants credit rating is
"POOR", then set loanApprovalStatus to "AUTO_REJECTED".
Add a third rule to meet the following requirements:
If the loan amount is less than 10,000 and the applicants credit rating is "GOOD", then
set loanApprovalStatus to "AUTO_APPROVED".
Add a fourth rule to meet the following requirements:
If the loan amount is greater than or equal to 10,000 and the applicant's credit rating is
"GOOD", then set loanApprovalStatus to "MANUAL_APPROVAL".
Add a fifth rule to meet the following requirements:
If the loan amount is less than 100,000 and the applicant's credit rating is
"EXCELLENT", then set loanApprovalStatus to "AUTO_APPROVED".
r.
Input:
Map loanDO.loanAmount to ruleInputDO.loanAmount
Map creditRating to ruleInputDO.creditRating
f.
g.
h.
i.
c.
d.
e.
Note: There may be additional namespace issues. For the sake of these practices, you can
ignore those.
Question: How has the list changed?
Answer: The issues related to CreditRules and the conditional branches of the Routing
gateway no longer appear.
19. Publish the project by right-clicking the project, selecting Save to PAM, entering a
comment to describe your changes, and clicking OK.
Creating a file adapter that writes a file to the local file system
Implementing the Disburse Loan service task by binding it to the file adapter and
mapping data appropriately
Comparing the composite view before and after creating an adapter, and before and
after implementing a service task
Implementing the Credit Rating service task by binding it to the web service adapter
and mapping data appropriately
Assumptions
This practice assumes that you have completed Practices 7, 8, and 9.
Tasks
1.
2.
Using BPM Studio, open LoanProcess and examine the issues that are listed on the Live
Issues tab.
Note: If the Live Issues tab does not appear automatically, select Issues from the Window
menu.
Answer the following question:
Note: There can be additional namespace issues. For the sake of these practices, you can
ignore those.
Question: What issues are listed?
Answer: Just two, one for each of the service tasks.
Examine the composite for the LoanApplication project and answer the following questions:
What services are displayed in the Exposed Services column on the left? Explain.
What references are displayed in the External References column on the right?
Here are detailed instructions, if you need them:
a. If the LoanProcess model is not currently maximized, double-click the tab to maximize
it.
b. In the upper-right corner, click the Goto Composite Editor icon:
3.
Note: Your composite may have the components in a different order, but it should
contain the same components.
Question: What components are displayed in the Components column?
Answer: LoanProcess, the three user tasks, and the CreditRules business rule.
Question: What services are displayed in the Exposed Services column on the left?
Explain.
Answer: There are no services in the Exposed Services column.
Question: What references are displayed in the External References column on the right?
Answer: There are no references in the External References column.
Create a file adapter named DisburseLoan that writes to the
/home/oracle/labs/loans folder.
Here are detailed instructions, if you need them:
a. If the LoanApplication composite window is maximized, double-click the tab to restore
the window to its original (smaller) size.
b. If the Components palette is not visible on the right side of the JDeveloper window,
click Window > Components to display it.
c.
d.
Adapter Interface
Operation
File Configuration
Click Next.
Click Finish.
Messages
Finish
4.
5.
Compare the updated composite with the one that you displayed before creating the file
adapter, and answer the following questions:
The Implementation tab now displays the binding between the Disburse Loan service
task and the DisburseLoan service:
e.
f.
6.
7.
8.
e.
Select MyAppServerConnection:
f.
Expand folders until you can see RatingService.service, and then select it:
Here is a sample screenshot of the Credit Rating Implementation tab after you have bound
the CreditRatingWebService to the service task:
9.
Note: If a JDeveloper error appears in a pop-up window when you complete this task, click
Cancel.
Display the composite again, compare it to the composite that you displayed before you
implemented the Credit Rating service task, and answer the following question:
10. Click Save All, and examine the issues on the Live Issues tab.
Note: If the Live Issues tab does not appear automatically, select Issues from the Window
menu. Compare the results with those that you obtained in Task 1 of this practice.
Answer the following question:
Assumptions
This practice assumes that you have completed the implementation of LoanProcess as
described in Practice 10.
Tasks
1.
In Business Process Composer, enable Process Player as the weblogic user. Verify that
the mtwain user can now use the Process Player.
Here are detailed instructions, if you need them:
a. Log in to Business Process Composer as the weblogic user.
b. Click Administrator view.
c.
d.
e.
f.
g.
h.
2.
Initiate Process Player and map the following users to the LoanOfficer, LoanProcessor, and
Underwriter roles:
Role
Users
LoanOfficer
jverne, mmitch
LoanProcessor
jlondon, mtwain
Underwriter
eheming, fkafka
e.
The role and user that you have mapped are listed in the table in the Manage
Mappings section.
Similarly, map the other users to the roles that are specified in the task instructions.
Hint: The Select Role field reverts to the original value after each mapping. Therefore,
ensure that the role that you want to map is selected before you click Add Mapping.
When you have finished, the Manage Mappings table on the Project Player tab should
look like the following screenshot:
3.
Submit and (as a Loan Processor) approve a fully completed loan application that
should be disbursed without requiring manual approval by the Underwriter. An example
would be a loan amount of less than $10,000 and a credit rating of "GOOD," which you
get in our application if you enter a Social Security number starting with 4, 5, or 6 (for
example, 555-11-2222). (This is how the Credit Rating Web Service has been
designed.)
Hint: After submitting the form, close the Instance Execution window that appears.
Answer the following question:
The LoanProcess tab opens. Notice that there is a blue Play button on the Start event.
This Play button indicates where the process instance currently is.
b.
c.
In the Play window, select one of the users and click the Run button:
d.
e.
f.
g.
In a few seconds, the process instance goes to the Review Loan Application task:
h.
Notice that the path of the process instance has been marked in red.
Continue playing the process, approving the application. Note that you can approve the
application directly from the Play window:
i.
4.
The process tab closes, and you are back on the Process Player tab.
Question: Does the process instance take the expected path?
Answer: Yes
Play the process, testing a second use case:
Submit and (as a Loan Processor) approve a loan application that requires manual
approval. As the Underwriter, reject the application. An example of a loan that requires
manual approval would be a loan amount of less than $10,000 and a credit rating of
"POOR," which you get in our application if you enter a Social Security number starting
with 1, 2, or 3 (for example, 111-44-1234). To save time, you do not need to enter data
for all fields. At a minimum, in this and future practices, enter data for the following
fields:
Borrower Name
Social Security Number
Loan Amount
Answer the following questions:
If the instance does not take the expected path, what change must you make so that
the process works properly? Explain why this is necessary even though the process
did not have any validation errors.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
If you followed instructions in Practice 7 exactly as they were described, then the process
flow will look like the following:
5.
6.
7.
Assumptions
This practice assumes that you have completed the implementation of LoanProcess as
described in Practices 7, 8, 9, and 10 and corrected any errors that were discovered in
Practice 11.
Tasks
Note: The tasks in this practice can be performed by using either BPM Studio or Business
Process Composer. Use the same tool that you used in Practice 7-1.
1. Using the tool that you have selected, ensure that you are using the latest version of
LoanApplication and deploy it to run time as version 1.0.
Hint
If you use Business Process Composer, you need to be the project Owner to have
access to the Deploy Project option. Then, in the Deploy Project window, use the
weblogic user's credentials.
If you use BPM Studio, you need to update your version of the project before
deploying.
Here are detailed instructions for deploying by using Business Process Composer, if
you need them:
a. While logged in as the mtwain user, with LoanApplication open (but not necessarily
open for editing), from the main menu, select Deployment > Deploy Project.
b.
Current project
New Revision ID
1.0
Selected
Deployer Username
weblogic
Deployer Password
Selected
c.
e.
Window
Actions
Deployment Action
Deploy Configuration
Select Server
MyAppServerConnection
SOA Servers
Click Next
Summary
Click Finish
Look at the contents of the Deployment tab to verify that the deployment was
successful.
2.
If you are using BPM Studio, click File > Exit, and save changes (if any).
If you are using Business Process Composer, close the project, release the lock (if you
are holding a lock), and log out.
Using Oracle Business Process Workspace to determine whether users have been
mapped to swimlane roles in the deployed project
Assumptions
This practice assumes that you have tested LoanProcess by using Process Player as described
in Practice 11 and deployed the LoanApplication project successfully to BPM Run Time as
described in Practice 12.
Tasks
1.
2.
3.
4.
Note down which users are associated with each role so that you can refer to them later in
this practice, and log out of Business Process Workspace.
The rest of this practice assumes that the following users have been mapped to the three
roles that are listed in the previous task:
Role
Users
LoanOfficer
mmitch, jverne
LoanProcessor
mtwain, jlondon
Underwriter
eheming, fkafka
Loan Amount
Anna Miller
888-11-2222
$125,000
Your choice
Ben Wilson
555-11-2222
$50,000
Your choice
Charles Brown
222-11-2222
$5,000
Your choice
David Johnson
012-34-5678
$15,000
Your choice
Evelyn Smith
987-65-4321
$50,000
Your choice
If the loan applications are approved by the Loan Processor, how do you expect each
of them to be routed by the Routing gateway? Explain.
Here are detailed instructions, if you need them:
a. Click Business Process Workspace on the Favorites bar or navigate to
http://hostname.us.oracle.com:7001/bpm/workspace.
b. Log in using the credentials of one of the Loan Officers. For example, log in as the
jverne user.
c. On the toolbar on the left, click Applications.
d. In the Applications view, click LoanProcess:
e.
Complete both the Borrower Details tab and the Loan Details tab with the following
data:
Name
Loan Amount
Anna Miller
888-11-2222
$125,000
Your choice
f.
g.
Name
Loan Amount
Ben Wilson
555-11-2222
$50,000
Your choice
Charles Brown
222-11-2222
$5,000
Your choice
David Johnson
012-34-5678
$15,000
Your choice
Evelyn Smith
987-65-4321
$50,000
Your choice
Question: If the loan applications are approved by the Loan Processor, how do you expect
them to be routed by the Routing gateway? Explain.
5.
6.
Name
Routing
Explanation
Anna
MANUAL_APPROVAL
Ben
MANUAL_APPROVAL
Charles
MANUAL_APPROVAL
David
AUTO_REJECTED
Evelyn
AUTO_APPROVED
Note: Appendix B describes the algorithm that is used by the Credit Rating web service.
Appendix C describes the rules in the CreditRules decision table.
Log out of Business Process Workspace as a Loan Officer, log in as a Loan Processor (for
example, as the jlondon user), determine how many tasks are in the Loan Processors
queue, and explain your results.
Question: How many tasks are in the Loan Processors queue? Explain.
Answer: Fiveone for each of the loans that the Loan Officer submitted. (All loan
applications are routed to the Loan Officer for approval.)
As the Loan Processor, approve all five quotes and verify that Evelyns quote has been
disbursed. Answer the following questions:
7.
8.
9.
Assumptions
This practice is not dependent on previous practices.
Tasks
Consider the following process model:
c.
6.
7.
What is the advantage of performing Check Credit and Check Inventory in parallel?
What is the disadvantage?
d. If inventory can be checked in an Enterprise Resource Planning (ERP) system, what
kind of activity would you use for Check Inventory?
Regarding the Good Credit? flow object:
a. What kind of flow object is this?
b. What kind of flow object would you use for Notify Customer1?
c. If the path to End2 is taken, does the rest of the process (checking inventory, possibly
manufacturing if necessary, and shipping) proceed?
Regarding the Manufacture Product flow object:
a. Under what circumstances does the process token reach this task? (List all of the
conditions.)
b. Name at least two different types of tasks or activities that you might use here.
Describe when each would apply, and why.
c. If you choose to use a user task here, who would be assigned to the task in the
workflow application?
d. What kind of event is attached to Manufacture Product?
e. If the boundary event is triggered, does the rest of the process (checking credit,
shipping the product, and notifying the customer) proceed?
6.
7.
Replacing the service tasks in LoanProcess with activities that call the new processes
The Disburse Loan service task in Loan Process will be replaced by a call activity that calls a
reusable process named DisburseLoanProcess:
Assumptions
This practice assumes that you have completed the implementation of LoanProcess as
described in Practice 10 and have corrected any errors that were discovered in Practice 11.
Tasks
Note: The tasks in this practice can be performed by using either BPM Studio or Business
Process Composer. Use the same tool that you used in Practice 7-1.
1. Using the tool that you have selected, create a new process in LoanApplication named
CreditRatingProcess that contains a single service task named Credit Rating.
When you create CreditRatingProcess, consider the fact that you want this process to be
asynchronous, and callable by a send task (which you will create in LoanProcess as part of
a later task). Create the necessary input and output arguments, create the necessary
process data objects, implement the service task by using the CreditRatingWebService
adapter that you created in Practice 10, and map data as needed.
When you have finished, CreditRatingProcess will look like the following:
With what kind of event does CreditRatingProcess need to start and end?
What data input and output is required for the service task?
Here are detailed instructions in Business Process Composer, if you need them:
a. Log in to Business Process Composer as the mtwain user, and open LoanApplication
for editing.
b. In the Processes view, click New process, name the process
CreditRatingProcess, and click Create.
The new process is created.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
c.
d.
e.
Rename the End event Credit Rating Response, and change its type to
Message.
To implement the Credit Rating Request event, start by placing the cursor over the
event, clicking the pencil icon, and clicking Implementation:
f.
g.
h.
In the Implementation pane, select Define Interface from the Type menu.
Add an input argument named ssNo of type STRING.
i.
Click the Apply Changes button, and close the Implementation pane.
j.
k.
Similarly, define the interface for the Credit Rating Response event, creating an output
argument named cRating of type STRING, and leaving other settings at their default
values.
Remember to click the Apply Changes button, and close the Implementation pane.
Add two data objects to CreditRatingProcess:
cRating (STRING)
ssNo (STRING)
l.
n.
o.
p.
q.
Click Next.
Initial Implementation
Advanced
Definition
Arguments
v.
x.
y.
z.
Map data for the Credit Rating Request event. Hint: Start by right-clicking the event,
selecting Properties, and clicking the Implementation tab.
Output:
2.
3.
A receive task named Credit Check Response that receives the output of that
process
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Here are detailed instructions in Business Process Composer, if you need them:
a. Click the Project Home tab, and from there, click LoanProcess to open the process.
b. Add a Send task named Credit Check Request between the Credit Rating service
task and the Credit Rules business rule task.
c. Add a Receive task named Credit Check Response between the Credit Check
Request task and the Credit Rules business rule task.
d. Delete the Credit Rating service task and reposition the Credit Check Request, Credit
Check Response, and Credit Rules activities to match the model in the task description
above.
e. Implement the Credit Check Request activity to call CreditRatingProcess.
f.
Implement the Credit Check Response activity to wait for a response from
CreditRatingProcess.
g.
h.
Answer: You need to map the credit rating data object in CreditRatingProcess (in our
example, cRating) to creditRating.
i. Proceed to task 4.
Here are detailed instructions in BPM Studio, if you need them:
j. Open LoanProcess.
k. Add a Send task named Credit Check Request between the Credit Rating service
task and the Credit Rules business rule task.
l. Add a Receive task named Credit Check Response between the Credit Check
Request task and the Credit Rules business rule task.
m. Delete the Credit Rating service task and reposition the Credit Check Request and
Credit Check Response activities to match the model shown here:
n.
o.
p.
Implement the Credit Check Response activity to wait for a response from
CreditRatingProcess.
q.
4.
5.
6.
7.
8.
If you are using BPM Studio, click Save All and examine the issues on the Live Issues
tab.
Note: If the Live Issues tab does not appear automatically, select Issues from the
Window menu.
Publish the revised project.
If you are using Business Process Composer, click Publish, enter a comment, ensure
that you are releasing the lock, and click Publish.
If you are using BPM Studio, right-click LoanApplication in the Applications Navigator
and select Save to PAM.
Deploy the project, changing the revision number to 1.1.
In Business Process Composer, change the revision number to 1.1, override the
default deployment version and mark this composite revision as the default.
In BPM Studio, change the revision number to 1.1, mark the composite revision as
default, overwrite any existing composites with the same revision ID, keep running
instances after redeployment, and deploy to the MyAppServerConnection web server.
Test the application to ensure that the credit rating function works.
Here are detailed instructions, if you need them:
a. Log in to Business Process Workspace as a Loan Officer (for example, as the mmitch
user) and submit a loan application that should be disbursed automatically after it is
approved. (For example, the Social Security number starts with a 9 and the loan
amount is under $100,000.) At a minimum, enter data for the Borrower Name, Social
Security Number, and Loan Amount fields.
b.
c.
Log out as the Loan Officer, log in as a Loan Processor (for example, as the mtwain
user), and approve the loan.
Verify that the loan is disbursed by looking in the /home/oracle/labs/loans folder
for the file containing loan information.
Assumptions
This practice assumes that you have completed the implementation of LoanProcess as
described in Practice 10 and have corrected any errors that were discovered in Practice 11.
Tasks
Note: The tasks in this practice can be performed by using either BPM Studio or Business
Process Composer. Use the same tool that you used in Practice 7-1.
1. Using the tool that you have selected, create a new process in LoanApplication named
DisburseLoanProcess that contains a single service task named Disburse Loan. When you
create DisburseLoanProcess, consider the fact that you want this process to be callable by
a call activity that you will create in LoanProcess as part of a later task. Create the
necessary input and output arguments, create the necessary process data objects,
implement the service task by using the DisburseLoan web service adapter that you
created in Practice 10, and map data as needed.
Answer the following questions:
With what kind of event does DisburseLoanProcess need to start and end?
What data input and output is required for the service task?
When you have finished, the new process will look like this:
Here are detailed instructions in Business Process Composer, if you need them:
a. In Business Process Composer, ensure that LoanApplication is open for editing.
b. Create a new process named DisburseLoanProcess.
c.
Open the new process, and add an input argument named loanInArg that is based
on the LoanForm business object.
Hint
To open the Implementation pane for the process, right-click on the process editor
canvas and select Implement.
To find the LoanForm business object, you need to search for the type under the
Components folder.
Remember to click the Apply Changes button.
d.
Create a process data object named loanDO that is based on the LoanForm business
object.
Hint: With DisburseLoanProcess open for editing, click Data Objects and add the
loanDO process data object:
e.
f.
g.
h.
Question: With what kind of event does DisburseLoanProcess need to start and end?
Answer: A none start event and a none end event, because it is a reusable process
that will be called by a call activity
Question: What data input and output is required for the process?
Answer: The Disburse Loan service task will require loan information which needs to
be passed from the main process to the reusable process by using an input argument
based on the LoanForm business object. As currently configured, the process does not
need to have any output.
Question: What data input and output is required for the service task?
Answer: The service task writes loan information to a file, so you need to map that
information from the Disburse Loan process (via a data object) to the service. The
service does not need to return information.
i. Proceed to task 2.
Here are detailed instructions in BPM Studio, if you need them:
j. Create a new process named DisburseLoanProcess, completing the wizard as
indicated in the following table:
Definition
Click Next.
Initial Implementation
Advanced
Arguments
k.
Create a process data object named loanDO that is based on the LoanForm business
object.
Hint: Use the Structure pane.
l.
Add a service task named Disburse Loan, and implement the service task to call the
DisburseLoan service, which you defined in Practice 10.
n.
2.
3.
Question: With what kind of event does DisburseLoanProcess need to start and end?
Answer: A none start event and a none end event, because it is a reusable process
that will be called by a call activity
Question: What data input and output is required for the process?
Answer: The Disburse Loan service task will require loan information which needs to
be passed from the main process to the reusable process by using an input argument
based on the LoanForm business object. As currently configured, the process does not
need to have any output.
Question: What data input and output is required for the service task?
Answer: The service task writes loan information to a file, so you need to map that
information from the Disburse Loan process (via a data object) to the service. The
service does not need to return information.
Save your changes.
Replace the Disburse Loan service task in LoanProcess with a call activity by the same
name, and implement the call activity by linking it to DisburseLoanProcess.
Answer the following question:
Here are detailed instructions in Business Process Composer, if you need them:
a. In LoanProcess, add a call activity named Disburse Loan between the Underwriter
Outcome gateway and the Disburse Loan service task.
b. Reroute the Automatically Approved sequence flow to end at the Disburse Loan call
activity.
c. Delete the Disburse Loan service task, and move the Disburse Loan call activity where
the service task had been.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
d.
e.
k.
4.
5.
6.
7.
8.
If you are using BPM Studio, examine the issues on the Live Issues tab.
Note: If the Live Issues tab does not appear automatically, select Issues from the
Window menu.
Publish the revised project.
If you are using Business Process Composer, click Publish, enter a comment, ensure
that you are releasing the lock, and click Publish.
If you are using BPM Studio, right-click LoanApplication in the Applications Navigator
and select Save to PAM.
Deploy the project as revision 1.2.
In Business Process Composer, override the default deployment version and mark this
composite revision as the default.
In BPM Studio, mark the composite revision as default, overwrite any existing
composites with the same revision ID, keep running instances after redeployment, and
deploy to the MyAppServerConnection web server.
Test the application to ensure that both the credit rating and disburse loan functions work.
For example, submit and approve an application for $7,000 with a Social Security number
starting with 6. At a minimum, enter data for the Borrower Name, Social Security Number,
and Loan Amount fields.
Assumptions
This practice assumes that you have completed and tested LoanApplication as described in
Practice 15.
Tasks
1.
Using Business Process Composer, in LoanProcess, create a STRING data object named
errorInfoDO to store error data. Hint: Start by opening LoanProcess for editing and
clicking the Data Objects button on the toolbar at the top.
2.
In a new swimlane for users with the LoanAdministrator role, create two tasks:
3.
4.
5.
Add a boundary event to the Disburse Loan call activity to catch errors that occur in
DisburseLoanProcess. The exception flow should go to the FYI Loan Not Disbursed task,
then to the Disburse Loan Manually user task, and finally to Loan Fulfilled.
What type of boundary event do you need to add to the Disburse Loan call activity?
Implement the FYI Loan Not Disbursed task by creating a human task named FYITask
with the following attributes:
Outcome: OK
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Presentation: New web form named FYIErrorForm containing a Text field named
Borrower Name and a Text Area field named Error Information
Hint: When you create the form, add the controls from the bottom up.
Here are detailed instructions, if you need them:
a. Right-click FYI Loan Not Disbursed and select Implement.
b. In the Implementation view, click Add, enter FYITask, and click Create.
c. Click Apply Changes.
d. Click Edit to open the Basic tab of the Human Task Editor.
e. In the Task Title field, enter FYI Loan Not Disbursed.
f. In the Outcomes field, browse for OK and deselect APPROVE and REJECT.
g. In the Presentation section, select Web Form.
h. Click Create New Web Form, enter FYIErrorForm, and click Create.
i. Click Edit Web Form.
j. Drag a TextArea control to the form, and name it Error Information.
k. Drag a Text control to the form, place it above Error Information, and name it
Borrower Name.
6.
7.
Close the Form Editor and the FYITask window, and save your work.
Similarly, implement the Disburse Loan Manually user task by creating a human task
named DisburseLoanTask with the following attributes:
8.
Outcome: OK
Map error information from the boundary event to the errorInfoDO data object that you
created earlier in this practice.
Map data for the FYI Loan Not Disbursed user task.
Note: It is not necessary to map output for that task.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
c.
d.
e.
Click Apply.
Right-click FYI Loan Not Disbursed and select Data Association.
Map the borrower name and error information data objects to the corresponding fields
in the FYI Loan Not Disbursed task.
f.
Click Apply.
g.
9.
10.
11.
12.
13.
14.
15.
h. Click Apply.
Save your changes.
Validate the revised project, and correct any errors.
Publish the project, and release the lock.
Deploy the project with revision number 1.3. Override the default deployment version and
mark this composite revision as the default.
Log out of Business Process Workspace.
In Business Process Workspace, as an administrative user, associate one or more users to
the LoanAdministrator role. Then log out of Business Process Workspace.
Answer the following question:
c.
Change the permissions of the loans folder by entering the following command:
chmod 555 loans
16. Test the application by submitting and approving a loan that should be disbursed, for
example, a loan in which the loan amount is under $100,000 and the loan applicant has
excellent credit (the Social Security number starts with 7, 8, or 9). At a minimum, enter data
for the Borrower Name, Social Security Number, and Loan Amount fields.
Answer the following questions:
How can you know if the error was caught by the boundary event?
Your next step depends on whether you want to do the optional practices for Lesson 16
now. If so, leave the permissions for the /home/oracle/labs/loans folder as they are.
However, before proceeding to Practice 17, make the /home/oracle/labs/loans folder
writable again by opening a terminal window, navigating to the /home/oracle/labs
folder, and entering the following command: chmod 755 loans
Assumptions
This practice assumes that you have completed and tested LoanApplication as described in
Practice 16-1.
Tasks
1.
Using Business Process Composer, add an event subprocess named Timeout that is
triggered if a process instance takes longer than five minutes to complete. (Hint: Use the
expression 'now'+'5m' in the Expression Editor.) If the event subprocess is triggered, the
main process is not interrupted, but an FYI task named FYI Timeout notifies those with the
LoanAdministrator role that the process is taking longer than it should.
Here are detailed instructions, if you need them:
a. Open LoanProcess for editing.
b. Drag an Event Subprocess activity to the LoanAdministrator swimlane and name it
Timeout.
Note: If you do not see the Event Subprocess activity in the expanded list of activities,
place the cursor over the down arrow at the bottom of the expanded list.
c. Click the plus sign to expand the event subprocess.
d. Change the trigger type of the Start event to Timer.
e. Implement the Start event:
Set Due Type to Date.
Select the Expression Mode check box.
Click the Edit button.
Copyright 2015, Oracle and/or its affiliates. All rights reserved.
f.
2.
Add an FYI task named FYI Timeout to the Timeout event subprocess.
The FYI task should present LoanForm to the Loan Administrator. Implement the FYI
Timeout user task by creating a human task named FYITimeoutTask with the following
attributes:
Outcome: OK
3.
4.
5.
6.
7.
What data do you need to map into and out of the event subprocess, and into and out
of the user task?
Question: What data do you need to map into and out of the event subprocess, and into
and out of the user task?
Answer: You do not need to map data into and out of the event subprocess nor into and
out of the start and end events because the event subprocess shares the context of the
parent process (LoanProcess). The only data that you need to map is for the FYI Timeout
user task.
Validate the revised project, and correct any errors.
Publish the revised project, and release the lock.
Deploy the project with a revision number of 1.4. Override the default deployment version
and mark this composite revision as the default.
8.
Test the timer event subprocess by submitting a loan application and waiting five minutes.
Answer the following questions:
How can you know if the error was caught by the Timeout event subprocess?
Assumptions
This practice assumes that you have completed and tested LoanApplication as described in
Practice 16-2.
Tasks
1.
Using Business Process Composer, replace the boundary event on the Disburse Loan call
activity and the associated exception flow with an event subprocess named Catch All
Errors that catches all business and system exceptions that occur anywhere in the
process. The event subprocess starts with an event by the same name, contains an FYI
task named FYI Error and a "Handle Errors and Complete Manually" user task that is
performed by a Loan Administrator. If the event subprocess is triggered, the process
terminates after the Loan Administrator performs this task.
With what type of event should the event subprocess start and end? Explain.
Do you need to create an additional data object to store error information, or does the
event subprocess have access to errorInfoDO from LoanProcess?
Here are detailed instructions, if you need them:
a. Ensure that LoanProcess is open for editing, and delete the boundary event and
exception flow.
b. Drag an Event Subprocess activity to the LoanAdministrator swimlane and name it
Catch All Errors.
c. Click the plus sign to expand the event subprocess.
d. Change the trigger type of the Start event to Error, and rename the Start event Catch
All Errors.
e. Implement the Catch All Errors error event to catch all business and system
exceptions.
f.
g.
h.
2.
Implement the FYI Error task by reusing the FYITask human task that you created
previously for the FYI Loan Not Disbursed user task in the Disburse Loan boundary error
event exception flow (which you removed at the beginning of this practice). Change the
Task Title to FYI Loan Error. Hint: To edit the Task Title, edit the human task.
3.
4.
Implement the "Handle Errors and Complete Manually" user task by creating a human task
named HandleErrorsTask. Although this task could be much more complex, including (for
example) detailed error information, let us simplify the task and provide only the following
attributes:
Outcome: OK
Presentation: LoanForm web form
5.
6.
Map data for the Handle Errors and Complete Manually user task.
7.
8.
9.
How can you know if the error was caught by the Catch All Errors event subprocess?
Question: How can you know if the error was caught by the Catch All Errors event
subprocess?
Answer: Users with the Loan Administrator role see two tasks: an FYI Loan Error task that
displays the borrower name and error text, and a Handle Errors and Complete Manually
task that displays the loan form.
Creating custom metrics to use in BAM dashboards and Business Architecture reports
Making changes to the process model to collect custom metrics at run time
When you have finished, LoanProcess will look like the following (if you have completed the
optional practices 16-2 and 16-3):
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have completed at least through Practice 13, Participating in a
Running Process.
Tasks
1.
Using Business Process Composer, examine the default project, process, and activity
process metric settings, and answer the following questions:
What preferences are in effect for the entire project? What preferences are in effect for
LoanProcess?
What preferences are in effect for Capture Loan Request and Underwriter Review?
Here are detailed instructions, if you need them:
a. On the Project Home page, click More information.
b.
c.
d.
Notice that at the project level, metrics are generated for interactive activities only.
Click Hide details to close the details pane.
To view preferences for LoanProcess, open the process, right-click on the canvas, and
select Implement.
The Implementation pane for the process opens:
e.
2.
To view preferences for the Capture Loan Request user task, right-click the task and
select Implement.
The Implementation pane for the task opens:
The initial Process Monitor window displays, prompting you to select a process from
the Process menu:
c.
3.
4.
Assumptions
This practice assumes that you have completed at least through Practice 15, Communicating
Between Processes.
Tasks
1.
2.
Using Business Process Composer, determine if any business indicators have been
defined for the LoanApplication BPM project.
Here are detailed instructions, if you need them:
a. Open LoanApplication and examine the left navigation pane to determine how many
business indicators are defined.
Here is an example:
Currently, no business indicators are defined for the LoanApplication BPM project.
Create a counter named appsDisbursed and ensure that it is bound to a project data
object.
Here are detailed instructions, if you need them:
a. Ensure that LoanApplication is open for editing.
b. In the left navigation pane, click Business Indicators to open that view.
c. Click New > New Counter, and name the counter appsDisbursed.
d.
In the Project data object field, select [New Project Data Object], accept the default
name, and click OK.
3.
4.
5.
Similarly, create a counter named appsRejected and ensure that it is bound to a project
data object.
Associate the appsDisbursed counter with the Disburse Loan call activity.
Here are detailed instructions, if you need them:
a. Open LoanProcess.
b. Right-click Disburse Loan and select Create Counter Mark.
c. In the Counter field, select the appsDisbursed check box.
d. Click Apply Changes.
e. Close the Implementation pane.
Answer the following questions:
Is there a single flow component to which you can associate the appsRejected counter
to count all rejected loans?
If not, what flow component can you add to the process model to capture the value of
this counter?
Question: Is there a single flow component to which you can associate the appsRejected
counter to count all rejected loans?
Answer: No
Question: If not, what flow component can you add to the process model to capture the
value of this counter?
Answer: You can add a script task at the intersection of the Automatically Rejected and
Rejected by Underwriter sequence flows.
6.
7.
8.
9.
Add a script task named Count Rejections at the intersection of the Automatically Rejected
and Rejected by Underwriter process flows. The outgoing flow of Count Rejections should
go to the Loan Rejected end event.
Note: Your process model may look different if you have not completed optional practice
16-3.
Here are detailed instructions, if you need them:
a. Drag a script task to the process model and place it on the Automatically Rejected
sequence flow just before Loan Rejected.
b. Name the script task Count Rejections.
c. Reroute the Rejected by Underwriter sequence flow to go to Count Rejections instead
of Loan Rejected.
d. Reposition the flow components as necessary to match the model that is shown in the
instructions.
Associate the appsRejected counter with the Count Rejections script task.
Note: You may need to scroll down the Implementation pane to see the counter check
boxes. Remember to click the Apply Changes box.
Save your changes.
Create a dimension named cRating of type STRING and ensure that it is bound to a
project data object. Answer the following question:
Can you capture metrics for a dimension by associating it with an activity, as you did
for counters?
Here are detailed instructions, if you need them:
a. In the left navigation pane, click Business Indicators to open that view.
b. Click New > New Dimension, name the dimension cRating, and select String from the
Type menu.
c.
In the Project data object field, select [New Project Data Object], accept the default
name, and click OK.
Question: Can you capture metrics for a dimension by associating it with an activity,
as you did for counters?
Answer: No, you need to assign a value to a dimension by mapping data.
10. Add a script task named Set Credit Rating BI after Credit Check Response and
map the creditRating process data object to the project data object that you created in the
previous step.
When you have finished, the middle of LoanProcess will look like the following:
11.
12.
13.
14.
d. Click Apply.
Save your changes.
Create a measure business indicator named loanAmount with a data type of INTEGER,
and ensure that it is associated with a project data object.
Add a script task named Set Loan Amount BI after Disburse Loan.
Add a measurement mark after Set Loan Amount BI, and add the loanAmount business
indicator to the measurement mark.
When you have finished, the end of LoanProcess will look like this:
Note: Your process model may look different if you have not completed optional practice
16-3.
Here are detailed instructions, if you need them:
a. Drag a measurement to the process model and place it after the Set Loan Amount BI
script task.
b. Right-click the measurement and select Implement.
c. In the Implementation pane, move the loanAmount measure to the pane on the right:
f.
g.
Click Validate to validate the expression. If it is not valid, correct it and try again.
If the expression is valid, click OK.
h.
i. Click Apply.
16. Save your changes.
17. Validate the revised project, and correct any errors.
18. Publish the revised project, releasing the lock.
19. Deploy the project with a revision number of 2.0. Override the default deployment version
and mark this composite revision as the default.
20. Log out of Business Process Composer.
21. Restart AdminServer as follows:
a. On the desktop, double-click Stop AdminServer.
After a short time, the terminal windows for both the stop and start processes will close
automatically.
b. On the desktop, double-click Start AdminServer.
It is not necessary to test the project at this time. In the next two practices, you will use the
business indicators that you have configured.
Creating a BAM project and adding process data objects to the project
Instructions are provided at two levels: high level and detailed. Try to perform the task by using
the high-level instructions. If you need assistance, consult the detailed instructions.
Assumptions
This practice assumes that you have completed Practice 17, Monitoring Business Processes,
in which you created a number of business indicators and made changes to the process model
to collect these metrics at run time.
Tasks
1.
2.
b.
Click the down arrow next to Process Analytics, and select Create.
c.
In the Name field, enter LoanAppBAM, and click Create (not Create BPM Example).
3.
Add the LoanApplication Activity and LoanApplication Process data objects to the
LoanAppBAM project that you have created. Answer the following questions:
b.
Scroll down, select the LoanApplication Activity and LoanApplication Process logical
data objects, and then click Add.
c.
In the Navigation pane, expand Data Objects > oracle > processanalytics, and verify
that the data objects have been added to the project.
d.
e.
Explore the column names in the LoanApplication Activity data object, scrolling all the
way to the bottom.
Note: To see all of the column names, collapse the upper pane, click twice (slowly) in
the Logical DataObject Column Name column, and press the down arrow key.
Question: What does the LoanApplication Activity data object contain?
Answer: It contains built-in and user-defined metrics for all activities. For example,
towards the end of the list, the column names B_APPSREJECTED,
B_APPSDISBURSED, B_CRATING, and B_LOANAMOUNT correspond to the four
business indicators that you created in LoanApplication in Practice 17.
f.
g.
4.
In the Navigation pane, click LoanApplication Process, and click the Columns tab
Explore the column names in the LoanApplication Process data object.
Question: What does the LoanApplication Process data object contain?
Answer: It contains process instance metrics.
Create a two-column dashboard with the display name Loan App Dashboard.
Here are detailed instructions, if you need them:
a. In the Navigation pane, click Dashboards.
The Dashboards window opens.
b.
c.
Click Create.
The two-column Loan App Dashboard is created. It has two empty views.
5.
In the left pane of the dashboard, create a view that meets the following requirements:
Name: LoanProfileByCreditRating
Category: BAR
b.
c.
Click Create.
The Loan Profile By Credit Rating view is created, with sample data.
6.
Note: This is just a sample view of the bar chart. You have not yet defined where the
data should come from.
In the LoanProfileByCreditRating view, create a business query named
LoanProfileQuery. Configure the bar chart to show the number of applications that have
been rejected or disbursed, grouped by credit rating.
a. Click the Open Query Editor icon at the top-right corner of the view.
b.
c.
d.
e.
Click Create.
In the Data Object field, select oracle/processanalytics/LoanApplication Activity.
f.
In the Measures (Y - axis) table, select appsDisbursed BI, and then select the
COUNT function.
g.
Note: If you cannot see the function field, expand the "Measures (Y-axis)" window.
In the same way, select appsRejected BI (COUNT).
h.
i.
7.
8.
Note: Your dashboard may have horizontal lines and no axis labels or legend.
There is no data yet because the dashboard is based on custom metrics and you have
not yet submitted loan applications using the deployment that includes custom metric
configuration.
Click Save to save your dashboard definition.
In the right pane of the dashboard, create a view that meets the following requirements:
Name: AverageLoanProcessingTime
Category: GAUGE
View Type: Dial With Thresholds
c.
Click Create.
The Average Loan Processing Time view is created, with sample data.
9.
Note: This is just a sample view of the gauge chart. You have not yet defined where
the data should come from.
In the AverageLoanProcessingTime view, create a business query named
ProcessingTimeQuery. Configure the gauge to show the average processing time for
completed loan applications in milliseconds. Set thresholds of 300,000, 600,000, and
(Maximum Value) 900,000.
Answer the following question:
c.
d.
e.
f.
g.
Click Create.
In the Data Object field, select oracle/processanalytics/LoanApplication Process this
time. (Recall that for the previous view, you selected
oracle/processanalytics/LoanApplication Activity.)
Under Measures (Y - axis), select Process Running Time (millisecs), and then select
the AVG function.
h.
i.
j.
Click OK.
Add another filter to specify that the process instance status should be COMPLETED:
k.
Click OK.
The two filters have been added.
n.
o.
Click the Titles view and define titles for the Gauge Top Label and Gauge Bottom
Label, for example, Gauge and Average Loan Processing Time
(Milliseconds).
Click Apply, and close the Properties window.
The gauge should reflect the thresholds that you have defined with the data that you
have entered over the last few dayscompleted instances only. Here is an example:
p.
Note:
At a minimum, enter data for the Borrower Name, Social Security Number, and Loan
Amount fields.
Approve the loan applications as the Loan Processor. You can choose to approve
them or reject them as the Underwriter, but ensure that all five process instances
complete.
Social Security Number
Loan Amount
111-11-1111
8,000
555-55-5555
20,000
888-88-8888
75,000
777-77-7777
150,000
222-22-2222
15,000
13. Log in to Oracle BAM Composer again using the administrator credentials. From the Home
page, open the Loan App Dashboard that you created in the previous practice, and
examine the data.
Note: The Loan App Dashboard is in the LoanAppBAM project.
Answer the following questions for the Loan Profile By Credit Rating chart:
How many loan applications have been disbursed? What are their credit ratings?
How many loan applications have been rejected? What are their credit ratings?
Answer the following questions for the Average Loan Processing Time chart:
d.
Examine the Loan Profile By Credit Rating view, and answer the questions that were
posed in the task instruction above.
e. Examine the Average Loan Processing Time view, and answer the questions that were
posted in the task instruction above.
14. Close the dashboard window, and log out of Oracle BAM Composer.
Assumptions
This practice assumes that you have completed Practice 17, "Monitoring Business Processes,"
in which you configured business indicators for LoanApplication. It also assumes that you have
completed Practice 3, in which you imported and modified the Business Architecture for Acme
project.
Tasks
1.
2.
d.
Click Create.
The KPI is created:
e.
f.
g.
h.
When you have finished, the three KPIs will be visible in the KPI view:
3.
4.
5.
6.
7.
8.
Examine the Car Loans, Student Loans, Jumbo Loans, and Generic Loan Approval value
chain steps and answer the following questions:
Are these value chain steps linked to any processes or other value chains? Explain.
Do these value chain steps have KPIs defined? If so, what type of KPIs are they, and
where does the data come from?
Here are detailed instructions, if you need them:
a. Right-click the Car Loans value chain step and select Properties.
The Links pane of the Properties window indicates that this value chain step is linked to
CarLoansProcess in the Car Loans BPM project:
b.
9.
Click KPIs.
The KPIs view indicates that there are three manual KPIs for the value chain step:
d.
In the second window of the wizard, select the process and click Finish.
After a short time, the KPIs that you defined in LoanProcess appear in the Measure
section:
e.
f.
Select the TotalLoanAmount KPI and use the right arrow to move the KPI to the
Selected KPIs pane.
In the Target section, change the Target Type to Range and specify the following
values: 200,000 and 800,000.
When you have finished, the window should look like the following:
g.
h.
Here is a sample screenshot for the definition of the Total Amount All Loans rollup KPI:
When you have finished, the KPI view of the Loan Application value chain model should list
the three rollup KPIs that you have created:
14. Open the Manage Financial Resources value chain model and answer the following
questions:
Are any value chain steps linked to processes or other value chains?
Question: Are any value chain steps linked to processes or other value chains?
Answer: Yes, the Loan Application value chain step has a link. If you right-click the value
chain step and select Properties, you can see that it is linked to the Loan Application value
chain model. You created this link in Practice 3.
Question: Do any value chain steps have KPIs defined?
Answer: No
15. Create three rollup KPIs for the Loan Application value chain step in Manage Financial
Resources:
In the All Value Chains view, what color is the Loan Application value chain step?
Explain.
Where did the data from Total Amount of All Loans Rollup come from?
What color is the associated indicator, and what target range is in effect?
Note: The All Value Chains view should have a single row for Manage Financial
Resources. If you see multiple rows, close the report, generate report data again, and
redisplay.
Here are detailed instructions, if you need them:
a. From the main menu, select Reports > Business Architecture > Process Criticality
Report.
In a separate browser window, the All Value Chains view of the Process Criticality
report opens. Here is an example.
b.
Note: If the Loan Application box is white, then close the report, close the project
(releasing the lock), log out of Business Process Composer, shut down AdminServer,
restart it, and try again.
Question: In the All Value Chains view, what color is the Loan Application value chain
step? Explain.
Answer: It is yellow, reflecting the worst value in the rollups that it represents. Your
results may be different.
Click the Loan Application value chain step.
c.
Question: Where did the data from Total Amount of All Loans Rollup come from?
Answer: It was rolled up from KPIs one level down, namely at the Loan Application
value chain level.
Question: What color is the associated indicator, and what target range is in effect?
Answer: In our example, the indicator is green. The target range is 4,000,000 to
6,000,000. Above 6,000,000 is red and below 4,000,000 is yellow.
20. Drill down to the Manage Financial Resources level.
Hint: Click the text of the Manage Financial Resources box.
21. Display the rollup values and target ranges for several of the steps in the Loan Application
value chain model including Generic Loan Approval. Answer the following questions:
What color is the Generic Loan Approval value chain step? Explain.
Where did the data from the three KPIs in Generic Loan Approval come from?
Question: What color is the Generic Loan Approval value chain step? Explain.
Answer: In our example, it is yellow, which indicates that at least one indicator is yellow
and no indicators are red. Your results may be different.
Question: Where did the data for the three KPIs in Generic Loan Approval come from?
Answer: Unlike the KPI values for Car Loans, Student Loans, and Jumbo Loans (which
were entered manually), the KPI values for Generic Loan Approval reflect actual runtime
values for the LoanApplication BPM project.
22. Close the Process Criticality report.
23. Close the project, releasing the lock.
24. Log out of Business Process Composer.
Appendix: Overview
Appendix Overview
This appendix lists the users and associated roles that are used in the practices.
Users
LoanOfficer
jverne, mmitch
LoanProcessor
jlondon, mtwain
Underwriter
eheming, fkafka
LoanAdministrator
wfaulk, wshake
Appendix: Overview
Appendix Overview
This appendix explains the algorithm that is used by the Credit Rating web service.
0, 1, 2, or 3
POOR
4, 5, or 6
GOOD
7, 8, or 9
EXCELLENT
Note: This algorithm is used for the convenience of the course practices and has no correlation
with actual credit ratings.
Social Security numbers consist of nine digits separated with hyphens, as shown in the
following two examples:
222-33-4444
111-11-1111
Appendix C: CreditRules
Decision Table
Chapter 22
Appendix: Overview
Appendix Overview
This appendix describes the rules in the CreditRules decision table.
< 10,000
"POOR"
"MANUAL_APPROVAL"
>= 10,000
"POOR"
"AUTO_REJECTED"
< 10,000
"GOOD"
"AUTO_APPROVED"
>= 10,000
"GOOD"
"MANUAL_APPROVAL"
< 100,000
"EXCELLENT"
"AUTO_APPROVED"
>= 100,000
"EXCELLENT"
"MANUAL_APPROVAL"
Appendix D: Troubleshooting
Chapter 23
Appendix D: Troubleshooting
Chapter 23 - Page 1
Appendix: Overview
Appendix Overview
This appendix contains general troubleshooting tips.
Appendix D: Troubleshooting
Chapter 23 - Page 2
You try to publish changes in Business Process Composer, but the software reports
that there are no changes to publish.
You open a project in Business Process Composer as the owner, but you cannot open
the project for editing.
1. You try to publish changes in Business Process Composer, but the software reports that
there are no changes to publish.
Workaround:
a. Click Validate, and then try to publish again.
b. If the previous step does not work, make an additional change (for example, moving a
process component) and try to publish again.
2. You open a project in Business Process Composer as the owner, but you cannot open the
project for editing.
Workaround:
a. Log in to Business Process Composer as an administrative user (weblogic).
b. In the upper-right corner, click Modeler view and select Administrator view.
c. In the Administrator view, click Projects.
d. In the Projects view, click the Unlock project icon in the Actions column in the row for
LoanApplication. Any changes that were made since the project was last published will
be discarded.
e. Log out of Business Process Composer as an administrative user.
f. Log in as the project owner, and ensure that you can now open the project for editing.
3. You encounter errors in Business Process Composer, BPM Studio, Business Process
Workspace, or BAM Composer, and the practice documents do not contain a workaround.
Workaround:
a. Save the current changes, close the project or application, log out (if you are using a
browser) or close (if you are using BPM Studio), log back in, and try again.
b. If the problem is in Business Process Composer and the previous step does not work,
try clearing the browser's cache and deleting the browser cookies.
c. If the previous step does not work, reboot AdminServer (stop AdminServer and start it
up again).
d. If the previous step does not work, follow instructions in the
/home/oracle/solutions/README.txt file to use a solution file.
Appendix D: Troubleshooting
Chapter 23 - Page 3
Appendix D: Troubleshooting
Chapter 23 - Page 4