DecisionSpace® BPM Installation and Getting Started

DecisionSpace® BPM
Version 5000.10.1
Installation and Getting Started Guide
© 2014 Halliburton
DecisionSpace® 5000.10.1.0 SDK Developer’s Guide
Release 5000.10.1.0
March 2014
© 2014 Halliburton
All Rights Reserved Worldwide
This publication has been provided pursuant to an agreement containing restrictions on its use. The publication is also protected by Federal
copyright law. No part of this publication may be copied or distributed, transmitted, transcribed, stored in a retrieval system, or translated into
any human or computer language, in any form or by any means, electronic, magnetic, manual, or otherwise, or disclosed to third parties
without the express written permission of:
Halliburton | Landmark Software & Services
2107 CityWest Blvd, Building 2, Houston, Texas 77042-3021, USA
P.O. Box 42806, Houston, Texas 77242, USA
Phone: 713-839-2000
Fax: 713-839-2401
Web: www.landmarksoftware
Trademark Notice
3D Drill View, 3D Drill View KM, 3D Surveillance, 3DFS, 3DView, Active Field Surveillance, Active Reservoir Surveillance, Adaptive Mesh Refining,
ADC, Advanced Data Transfer, Analysis Model Layering, ARIES, ARIES DecisionSuite, Asset Data Mining, Asset Decision Solutions, Asset
Development Center, Asset Development Centre, Asset Journal, Asset Performance, AssetConnect, AssetConnect Enterprise, AssetConnect
Enterprise Express, AssetConnect Expert, AssetDirector, AssetJournal, AssetLink, AssetLink Advisor, AssetLink Director, AssetLink Observer,
AssetObserver, AssetObserver Advisor, AssetOptimizer, AssetPlanner, AssetPredictor, AssetSolver, AssetSolver Online, AssetView, AssetView
2D, AssetView 3D, BLITZPAK, CartoSnap, CasingLife, CasingSeat, CDS Connect, Channel Trim, COMPASS, Contract Generation, Corporate Data
Archiver, Corporate Data Store, Data Analyzer, DataManager, DataStar, DBPlot, Decision Management System, DecisionSpace, DecisionSpace
3D Drill View, DecisionSpace 3D Drill View KM, DecisionSpace AssetLink, DecisionSpace AssetPlanner, DecisionSpace AssetSolver, DecisionSpace
Atomic Meshing, DecisionSpace Desktop, DecisionSpace GRC Module, DecisionSpace Nexus, DecisionSpace Reservoir, DecisionSuite, Deeper
Knowledge. Broader Understanding., Depth Team, Depth Team Explorer, Depth Team Express, Depth Team Extreme, Depth Team Interpreter,
DepthTeam, DepthTeam Explorer, DepthTeam Express, DepthTeam Extreme, DepthTeam Interpreter, Desktop Navigator, DESKTOP-PVT,
DESKTOP-VIP, DEX, DIMS, Discovery, Discovery 3D, Discovery Asset, Discovery Framebuilder, Discovery PowerStation, DMS, Drillability Suite,
Drilling Desktop, DrillModel, Drill-to-the-Earth-Model, Drillworks, Drillworks ConnectML, Drillworks Predict, DSS, Dynamic Frameworks to Fill,
Dynamic Reservoir Management, Dynamic Surveillance System, EDM, EDM AutoSync, EDT, eLandmark, eNotes, Engineer’s Data Model,
Engineer’s Desktop, Engineer’s Link, ESP, Event Similarity Prediction, ezFault, ezModel, ezSurface, ezTracker, ezTracker2D, FastTrack, Field
Scenario Planner, FieldPlan, For Production, FrameBuilder, Frameworks to Fill, FZAP!, GeoAtlas, GeoDataLoad, GeoGraphix, GeoGraphix
Exploration System, Geometric Kernel, GeoProbe, GeoProbe GF DataServer, GeoSmith, GES, GES97, GESXplorer, GMAplus, GMI Imager, Grid3D,
GRIDGENR, H. Clean, Handheld Field Operator, HHFO, High Science Simplified, Horizon Generation, I2 Enterprise, iDIMS, Infrastructure, iNotes,
Iso Core, IsoMap, iWellFile, KnowledgeSource, Landmark (as a service), Landmark (as software), Landmark Decision Center, Landscape, Large
Model, Lattix, LeaseMap, LithoTect, LogEdit, LogM, LogPrep, MagicDesk, Make Great Decisions, MathPack, MDS Connect, MicroTopology,
MIMIC, MIMIC+, Model Builder, NETool, Nexus (as a service), Nexus (as software), Nexus View, Object MP, OpenBooks, OpenJournal,
OpenSGM, OpenVision, OpenWells, OpenWire, OpenWire Client, OpenWire Server, OpenWorks, OpenWorks Development Kit, OpenWorks
Production, OpenWorks Well File, PAL, Parallel-VIP, Parametric Modeling, Permedia, PetroBank, PetroBank Explorer, PetroBank Master Data
Store, PetroWorks, PetroWorks Asset, PetroWorks Pro, PetroWorks ULTRA, PlotView, Point Gridding Plus, Pointing Dispatcher, PostStack,
PostStack ESP, PostStack Family, Power Interpretation, PowerCalculator, PowerExplorer, PowerExplorer Connect, PowerGrid, PowerHub,
PowerModel, PowerView, PrecisionTarget, Presgraf, PressWorks, PRIZM, Production, Production Asset Manager, PROFILE, Project
Administrator, ProMAGIC, ProMAGIC Connect, ProMAGIC Server, ProMAX, ProMAX 2D, ProMax 3D, ProMAX 3DPSDM, ProMAX 4D, ProMAX
Family, ProMAX MVA, ProMAX VSP, pSTAx, Query Builder, Quick, Quick+, QUICKDIF, Quickwell, Quickwell+, Quiklog, QUIKRAY, QUIKSHOT,
QUIKVSP, RAVE, RAYMAP, RAYMAP+, Real Freedom, Real Time Asset Management Center, Real Time Decision Center, Real Time Operations
Center, Real Time Production Surveillance, Real Time Surveillance, Real-time View, Reference Data Manager, Reservoir, Reservoir Framework
Builder, RESev, ResMap, RTOC, SCAN, SeisCube, SeisMap, SeisMapX, SeisModel, SeisSpace, SeisVision, SeisWell, SeisWorks, SeisWorks 2D,
SeisWorks 3D, SeisWorks PowerCalculator, SeisWorks PowerJournal, SeisWorks PowerSection, SeisWorks PowerView, SeisXchange, Semblance
Computation and Analysis, Sierra Family, SigmaView, SimConnect, SimConvert, SimDataStudio, SimResults, SimResults+, SimResults+3D, SIVA+,
SLAM, SmartFlow, smartSECTION, smartSTRAT, Smart Sustain, Smart Transform, Spatializer, SpecDecomp, StratAmp, StrataMap, StrataModel,
StrataSim, StratWorks, StratWorks 3D, StreamCalc, StressCheck, STRUCT, Structure Cube, Surf & Connect, SurfNet, SynTool, System Start for
Servers, SystemStart, SystemStart for Clients, SystemStart for Servers, SystemStart for Storage, Tanks & Tubes, TDQ, Team Workspace, TERAS,
T-Grid, The Engineer’s DeskTop, Total Drilling Performance, TOW/cs, TOW/cs Revenue Interface, TracPlanner, TracPlanner Xpress, Trend Form
Gridding, Trimmed Grid, Turbo Synthetics, Unconventional Essentials, VESPA, VESPA+, VIP, VIP-COMP, VIP-CORE, VIPDataStudio, VIP-DUAL, VIPENCORE, VIP-EXECUTIVE, VIP-Local Grid Refinement, VIP-THERM, vSpace, vSpace Blueprint, vSpace Onsite, WavX, Web Editor, WellCost, Well H.
Clean, Well Seismic Fusion, Wellbase, Wellbore Planner, Wellbore Planner Connect, WELLCAT, WELLPLAN, WellSolver, WellXchange, WOW,
Xsection, You’re in Control. Experience the difference., ZAP!, ZetaAnalytics, Z-MAP, and Z-MAP Plus are trademarks, registered trademarks, or
service marks of Halliburton.
All other trademarks, service marks, and product or service names are the trademarks or names of their respective owners.
Release 5000.10.1.0
March 2014
Note
The information contained in this document is subject to change without notice and should not be construed as a commitment by Halliburton.
Halliburton assumes no responsibility for any error that may appear in this manual. Some states or jurisdictions do not allow disclaimer of
expressed or implied warranties in certain transactions; therefore, this statement may not apply to you.
Third Party Licenses and Attributions
Halliburton acknowledges that certain third party code has been bundled with, or embedded in, its software. The licensors of this third party
code, and the terms and conditions of their respective licenses, may be found at the following location:
Portal_Install_Folder/docs/third_party.pdf
Disclaimer
The programs and documentation may provide links to external web sites and access to content, products, and services from third parties.
Halliburton is not responsible for the availability of, or any content provided on, third party web sites. You bear all risks associated with the use
of such content. If you choose to purchase any products or services from a third party, the relationship is directly between you and the third
party. Halliburton is not responsible for: (a) the quality of third party products or services; or (b) fulfilling any of the terms of the agreement
with the third party, including delivery of products or services and warranty obligations related to purchased products or services. Halliburton is
not responsible for any loss or damage of any sort that you may incur from dealing with any third party.
Release 5000.10.1.0
March 2014
Contents
Contents
DecisionSpace® BPM Installation and Getting Started Guide ........................................ 1
Introduction............................................................................................................................................... 1
Installation .................................................................................................................. 1
Installation Workflow ................................................................................................................................ 1
Prerequisites.............................................................................................................................................. 1
Install the Software ................................................................................................................................... 3
Windows ................................................................................................................................................ 3
Linux....................................................................................................................................................... 7
Post-Installation Procedures ................................................................................................................... 15
Start DS BPM - Windows ..................................................................................................................... 15
Start DS BPM – Linux ........................................................................................................................... 16
Stop DS BPM – Linux ............................................................................................................................ 16
Installation Verification ....................................................................................................................... 17
Uninstall Procedures - Windows ............................................................................................................. 18
Stop the DS BPM Application .............................................................................................................. 18
Uninstall the DS BPM Software ........................................................................................................... 18
Uninstall Procedures – Linux ................................................................................................................... 20
Getting Started with DecisionSpace BPM ................................................................... 24
Introduction............................................................................................................................................. 24
What is DecisionSpace BPM? .................................................................................................................. 24
Deployment Diagram........................................................................................................................... 25
DSBPM Engine ..................................................................................................................................... 25
Web-based Designer ........................................................................................................................... 25
Admin Console ..................................................................................................................................... 25
User Inbox ............................................................................................................................................ 25
API Playground..................................................................................................................................... 25
Users and Roles ................................................................................................................................... 25
Getting Started ........................................................................................................................................ 26
Prerequisites ........................................................................................................................................ 26
Setup .................................................................................................................................................... 26
Tutorials ............................................................................................................................................... 26
Get Familiar with DSBPM-REPO .......................................................................................................... 26
Import a Sample Process Definition in DSBPM-Repo .......................................................................... 28
Get Familiar with the DSBPM Engine .................................................................................................. 34
Import Package in DSBPM Engine from DSBPM-Repo ........................................................................ 36
Launch Process Definition without Human Task ................................................................................. 38
Launch Process Definition with Human Task....................................................................................... 39
Complete all Pending Human Tasks .................................................................................................... 39
Verify in Admin Console that Process Instance is Complete ............................................................... 44
Quick Starts ............................................................................................................................................. 45
Invoking a RESTful service ................................................................................................................... 45
DecisionSpace® BPM 5000.10.1.0
iv
Installation and Getting Started Guide
Contents
DSBPM Engine: Core API ......................................................................................................................... 49
REST interface ...................................................................................................................................... 49
Settings ................................................................................................................................................ 49
Instance ............................................................................................................................................... 51
Human Task ......................................................................................................................................... 51
REST API Security ................................................................................................................................. 52
Designer................................................................................................................................................... 53
Designer UI Explained .......................................................................................................................... 53
Support for Domain-specific service nodes ......................................................................................... 54
Generation of process and task forms ................................................................................................ 54
Visual Process Validation ..................................................................................................................... 56
Importing existing BPMN2 processes .................................................................................................. 56
API Playground ........................................................................................................................................ 57
Settings ................................................................................................................................................ 57
Admin Console ........................................................................................................................................ 59
Settings ................................................................................................................................................ 59
Prerequisite for LDAP Integration ....................................................................................................... 60
Import Processes ................................................................................................................................. 61
Manage Processes ............................................................................................................................... 64
Launch Process Definition without Human Task ................................................................................. 64
Audit .................................................................................................................................................... 65
Human Tasks and User Inbox .................................................................................................................. 67
Task Lifecycle ....................................................................................................................................... 67
User Inbox ............................................................................................................................................ 68
Complete All Pending Human Tasks Using User Inbox ........................................................................ 69
Domain-specific Processes ...................................................................................................................... 71
Set Up Your Own Service Repository ...................................................................................................... 72
How to Use a Different Database Than the Default H2 Database .......................................................... 74
List of Available Dialects in hibernate-core-3.3.2.GA.jar ..................................................................... 76
How to Configure Different Email Settings ............................................................................................. 78
DecisionSpace® BPM 5000.10.1.0
v
Installation and Getting Started Guide
DecisionSpace® BPM Installation and Getting Started Guide
Introduction
DecisionSpace® BPM Installation and Getting
Started Guide
Introduction
This document describes how to install, configure, and start using the DecisionSpace® Business Process
Management (BPM) software.
The Installation chapter provides instructions to install, configure, and verify the installation.
The Getting Started chapter provides an overview of the different components of DecisionSpace BPM
and how to use them to perform common tasks, discover the APIs, import process definitions, and set
up your own process repository.
Refer to the DecisionSpace BPM Developer Guide for instructions o create and use DecisionSpace BPM
Domain Specific Tasks (DSTs).
Installation
This chapter of the document provides instructions to install the DecisionSpace® Business Process
Management (BPM) software, configure it, and verify the installation.
Installation Workflow
1. Ensure prerequisites are met
2. Install the DS BPM software
3. Verify the installation
Prerequisites
Supported platforms
•
•
•
Windows Server 2008
Windows 7 (64bit)
RHEL 5 and 6
Browser compatibility
•
Internet Explorer 9 for everything except the Process Definition in DSBPM-Repo (Guvnor)
DecisionSpace® BPM 5000.10.1.0
1
Installation and Getting Started Guide
Installation
•
Prerequisites
Google Chrome (29.0+) or Mozilla Firefox (24.0+) to open, create, or edit the Process Definition
in DSBPM-Repo (Guvnor)
Minimum system requirements
•
•
•
CPU: Dual core processor
Physical Memory- 8 GB
Hard-disk memory- 60 GB
Other prerequisites
•
•
•
•
User account for installation should have administrator privileges.
Uninstall any previous version of DSBPM on the machine.
Ensure you do not have a JBOSS_HOME environment variable set or point to any version JBOSS
in your PATH
By default the DSBPM application uses port 8080 for HTTP. If you wish to install on some other
port make sure that port is not consumed by any other process.
Note: HTTPS is not supported in DS BPM 5000.10.1.0.
DecisionSpace® BPM 5000.10.1.0
2
Installation and Getting Started Guide
Installation
Install the Software
Install the Software
Windows
1. Log into the machine where you will install the DecisionSpace BPM software.
2. Open a terminal session and navigate to the directory where you downloaded the
DecisionSpace BPM installer.
3. At the terminal window prompt, enter the following command to launch the installer:
On Windows: DSBPM_5000_10_1_0_WIN.exe
4. If a User Access Control dialog appears, click Yes.
The InstallAnywhere dialog opens, informing you that it is preparing to install.
The DecisionSpace BPM splash screen displays for a moment, then the InstallShield Wizard
launches, and the Introduction screen displays.
5. Read the Introduction and then click Next.
DecisionSpace® BPM 5000.10.1.0
3
Installation and Getting Started Guide
Installation
Install the Software
The License Agreement screen displays.
6. Read the license agreement and if you agree, select the “I accept the terms of the License
Agreement” option, and then click Next.
Note: If you do not accept the terms of the License Agreement, you will not be able to proceed
with the installation. You will only be able to click the Previous or Cancel button.
DecisionSpace® BPM 5000.10.1.0
4
Installation and Getting Started Guide
Installation
Install the Software
The Choose Install Folder screen displays.
7. Accept the default Installation Path or click Choose and enter an alternate path. When finished,
click Next.
The Pre-Installation Summary screen displays.
8. Verify the information (the required disk space may be a bit different than the illustration
above) and click Install.
DecisionSpace® BPM 5000.10.1.0
5
Installation and Getting Started Guide
Installation
Install the Software
The JBoss Ports Customization screen displays.
9. Click Next to accept the default ports, or click Modify to change them, then click Validate Ports,
and then click Next.
A progress screen displays during the installation, then the Install Complete screen displays.
10. Click Done.
DecisionSpace® BPM 5000.10.1.0
6
Installation and Getting Started Guide
Installation
Install the Software
Linux
1. Log into the Linux machine where you will install the DecisionSpace BPM software.
2. Open a SSH session and select SSH.
DecisionSpace® BPM 5000.10.1.0
7
Installation and Getting Started Guide
Installation
Install the Software
3. Enter your Host Name and click OK.
4. Login with your credentials
DecisionSpace® BPM 5000.10.1.0
8
Installation and Getting Started Guide
Installation
Install the Software
5. Press Enter.
6. Navigate to the directory where you downloaded the DecisionSpace BPM installer for Linux; the
"DSBPM_5000_10_0_1_RHL.bin" file.
7. Type the following command
chmod +x DSBPM_5000_10_0_1_RHL.bin
and then press Enter.
DecisionSpace® BPM 5000.10.1.0
9
Installation and Getting Started Guide
Installation
Install the Software
8. Type the following command to launch the Installer:
./DSBPM_5000_10_0_1_RHL.bin
and then press enter.
The DS BPM Installer for Linux launches as shown below.
9. Read the Introduction and then click Next.
DecisionSpace® BPM 5000.10.1.0
10
Installation and Getting Started Guide
Installation
Install the Software
The License Agreement screen displays.
10. Read the license agreement and if you agree, select the “I accept the terms of the License
Agreement” option, and then click Next.
Note: If you do not accept the terms of the License Agreement, you will not be able to proceed
with the installation. You will only be able to click the Previous or Cancel button.
DecisionSpace® BPM 5000.10.1.0
11
Installation and Getting Started Guide
Installation
Install the Software
The Choose Install Folder screen displays.
11. Accept the default Installation Path or click Choose and enter an alternate path. When finished,
click Next.
The Pre-Installation Summary screen displays.
12. Verify the information (the required disk space may be a bit different than the illustration
above) and click Install.
DecisionSpace® BPM 5000.10.1.0
12
Installation and Getting Started Guide
Installation
Install the Software
The Installing DSBPM 5000.10.1 screen displays and then the JBoss Ports Customization screen
displays.
13. Click Next to accept the default ports,
or
click Modify to change them, then click Validate Ports, and then click Next.
DecisionSpace® BPM 5000.10.1.0
13
Installation and Getting Started Guide
Installation
Install the Software
A progress screen displays during the installation, then the Install Complete screen displays.
14. Click Done.
DSBPM is installed on Linux.
DecisionSpace® BPM 5000.10.1.0
14
Installation and Getting Started Guide
Installation
Post-Installation Procedures
Post-Installation Procedures
Start DS BPM - Windows
First time after installation
After a successful installation, the DS BPM application starts automatically. Wait five minutes for the
application to start completely.
Start the application subsequently
1. From the Windows Start menu, select Administrative Tools > Services.
2. In the Services window, select ‘DecisionSpace BPM 5000.10’ and click on Start.
Stop the application
1. From the Windows Start menu, select Administrative Tools > Services.
2. In the Services window, select ‘DecisionSpace BPM 5000.10’ and click on Stop.
DecisionSpace® BPM 5000.10.1.0
15
Installation and Getting Started Guide
Installation
Post-Installation Procedures
Start DS BPM – Linux
Navigate to <DSBPM_HOME>/ApplicationServer/bin and execute the following command:
nohup ./runDSBPM.sh &
Stop DS BPM – Linux
If you need to stop DS BPM on Linux, navigate to <DSBPM_HOME>/ApplicationServer/bin and execute
the following command:
./jboss-cli.sh –connect command=:shutdown
DecisionSpace® BPM 5000.10.1.0
16
Installation and Getting Started Guide
Installation
Post-Installation Procedures
Installation Verification
DS BPM Repo installation
To check the DS BPM Repo installation, enter the following in a browser:
http://<Host>:<port>/dsbpm-engine/
and enter superadmin/superadmin to login.
DS BPM Engine installation
To check the DS BPM Engine installation, enter the following in a browser:
http:// <Host>:<port>/dsbpm-repo/
Log File Creation and Verification
If installation is done using the default location, you will find a boot.log and a server.log created in the
following directory:
<install-root>\DSBPM 5000.10.1\ApplicationServer\standalone\log
Open the server log file and search for the following:
•
•
•
Deployed "dsbpm-repo.war"
Deployed "dsbpm-engine.war"
Deployed "designer.war"
DecisionSpace® BPM 5000.10.1.0
17
Installation and Getting Started Guide
Installation
Uninstall Procedures - Windows
Uninstall Procedures - Windows
Stop the DS BPM Application
Before uninstalling, stop the DS BPM application.
Wait five minutes for the application server to stop completely.
Uninstall the DS BPM Software
1. Open Windows Explorer and navigate to the directory where DS BPM is installed.
2. Navigate to the Uninstall folder i.e., <DS BPM Installation>/Uninstall folder. Here, you will find
Uninstall.exe.
3. Double-click Uninstall.exe to launch the uninstaller for DS BPM.
The InstallShield Wizard opens, and the Uninstall DS BPM 5000.10.1.0 screen displays.
4. Click Next.
The Uninstall Options screen displays.
DecisionSpace® BPM 5000.10.1.0
18
Installation and Getting Started Guide
Installation
Uninstall Procedures - Windows
5. Select the appropriate option and then click Next:
a. Choose Complete Uninstall to uninstall application completely.
b. Choose Uninstall Specific Features to uninstall only the DS BPM application and not the
help files.
The application is uninstalled and the Uninstall Complete screen displays.
This screen will show if any files could not be removed.
6. You must restart your system after uninstalling. By default the “Yes, restart my system” option is
selected.
Note: Landmark recommends restarting now.
Click Done.
DecisionSpace® BPM 5000.10.1.0
19
Installation and Getting Started Guide
Installation
Uninstall Procedures – Linux
Uninstall Procedures – Linux
1. Log into the Linux machine where you have installed the DecisionSpace BPM software.
2. Navigate to the directory having "Unistaller_DSBPM 5000.10.1".
"opt/Landmark/DSBPM 5000.10.1/"
You will see "Uninstall DSBPM 5000.10.1" there as shown below.
3. Run the Uninstaller by typing the following command
./"Unistall_DSBPM 5000.10.1"
and press Enter.
DecisionSpace® BPM 5000.10.1.0
20
Installation and Getting Started Guide
Installation
Uninstall Procedures – Linux
The Unistaller launches.
4. After verifying the information click Next.
DecisionSpace® BPM 5000.10.1.0
21
Installation and Getting Started Guide
Installation
Uninstall Procedures – Linux
The Uninstall Options screen displays.
5. By default the "Complete Uninstall" option is selected.
6. Click Next.
The Please Wait screen displays, then the Uninstall Complete screen displays.
DecisionSpace® BPM 5000.10.1.0
22
Installation and Getting Started Guide
Installation
Uninstall Procedures – Linux
7. Click Done.
The wizard closes and DSBPM is uninstalled completely from the Linux machine.
DecisionSpace® BPM 5000.10.1.0
23
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Introduction
Getting Started with DecisionSpace BPM
Introduction
This chapter provides an overview of the different components of DecisionSpace BPM and how to use
them to perform common tasks, discover the APIs, import process definitions, and set up your own
process repository. The chapter is structured as follows:
•
•
•
•
•
•
•
•
•
•
What is DecisionSpace BPM?: Provides an overview of the different components of DSBPM.
Getting Started: Describes how to install and set up the DSBPM application locally. The installer
helps you getting a running demo set up including most of the DSBPM components and runs you
through them using a simple example.
Quick Starts: Some tutorials for common tasks you might want to try out after successfully
running the installer.
DSBPM Engine API: Describes the DSBPM engine and the process engine API. This includes
information for the RESTful APIs settings, importing process definitions, instantiating processes,
and managing Human Tasks.
Designer: Describes the web-based designer that allows business users to edit business
processes in a web-based context
API Playground: Describes the different RESTful APIs available for the DSBPM Engine and how to
use them.
Admin Console: This console can be used for importing process definitions, instantiating and
managing processes, auditing, and for user and group settings.
Human Tasks and User Inbox: This section describes Human Task and different actions that can
be performed on Human Tasks by users through the User Inbox web UI.
Domain-specific processes: This section teaches you how to plug in your own domain-specific
nodes in your processes using the SDK provided with DSBPM.
Setting up your own service repository: This section describes how to Import your own process
repository in DSBPM.
What is DecisionSpace BPM?
DecisionSpace Business Process Management allows orchestration of business processes. This includes
two steps:
1. Designing business processes - a design time activity
2. Executing business processes - a runtime activity
DecisionSpace® BPM 5000.10.1.0
24
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
What is DecisionSpace BPM?
Deployment Diagram
DSBPM Engine
The DSBPM Engine is a runtime component which is responsible for instantiating and execution of your
business processes. The DSBPM Engine has a REST API exposed to import business process definitions,
to instantiate business processes and to interact with Human Tasks present in the process.
Web-based Designer
The web-based designer allows you to model your business processes in a web-based environment.
Admin Console
The Admin Console is a web-based UI for administration of the business process engine. The Admin
Console was built using the REST APIs exposed by the DSBPM engine. Through this you can import
business process definitions and instantiate and manage business processes. This UI also helps you to
set up users and groups for human tasks. You can also audit the processes executing under the DSBPM
Engine.
User Inbox
The User Inbox is a web-based UI to list human tasks available for users and also allows you to take
different actions like claim tasks, view task forms, submit task forms. In the future this UI will handle
delegate, revoke, suspend, resume, skip and stop human tasks.
API Playground
The DSBPM Engine has a RESTful service API interface which allows you to perform importing process
definitions from DSBPM REPO and instantiate it. The DSBPM application provides a component called
the API Playground where you can easily get detailed information about various APIs and you can
execute the APIs. See the “Invoking a RESTful service” section for more information.
Users and Roles
DSBPM has primarily three roles and three built in users. These are described as below. More users can
be added by modifying the dsbpm-security-user.properties and dsbpm-security-roles.properties in the
installation folder (<Install Location>\ApplicationServer\standalone\configuration).
DecisionSpace® BPM 5000.10.1.0
25
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
User
user
Password
user
Role
dsbpm-user-role
admin
admin
dsbpm-admin-role
superadmin
superadmin
dsbpm-superadmin-role
Description
Has access to only user-inbox and restful
apis to fetch, claim and complete human
tasks
Has access to user-inbox, admin console
and restful apis to fetch,claim, complete
human task and import, start and monitor
Process (Definitions and Instances)
Has access to user-inbox, admin console
and restful apis to fetch,claim, complete
human task and import, start and monitor
Process (Definitions and Instances). Also
has permission to change Settings of
DSBPM and access Swagger API
Documentation
Getting Started
This section describes how to set up the DSBPM application locally.
Prerequisites
•
•
•
Internet Explorer 9 for everything except the Process Definition in DSBPM-Repo (Guvnor)
Google Chrome (29.0+) or Mozilla Firefox (24.0+) to open, create, or edit the Process Definition
in DSBPM-Repo (Guvnor)
Ensure you do not have any JBOSS_HOME environment variable set.
Kill any JBOSS Instance or any other program which uses port 8080.
The DecisionSpace BPM Installer supports configurable ports. During installation you can specify port
addresses of your choice. In the document is it assumed that the default JBoss port 8080 has been
configured during installation.
Setup
Refer to the Installation section of this document.
Tutorials
The DSBPM-REPO can be used as a process repository to store business processes.
Get Familiar with DSBPM-REPO
1. Open the following URL in a browser
http://localhost:8080/dsbpm-repo
2. A popup will appear asking you to load Sample Data, Choose No.
DecisionSpace® BPM 5000.10.1.0
26
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
DecisionSpace® BPM 5000.10.1.0
Getting Started
27
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Import a Sample Process Definition in DSBPM-Repo
1. Go to Administration and click the Import Export tab.
2. Import the repository_export.zip from the DecisionSpace BPM installation location. For
example:
C:\Landmark\DSBPM 5000.10.1\ApplicationServer\sample-repositories\media-tracking
DecisionSpace® BPM 5000.10.1.0
28
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
3. Open the Knowledge Bases section and verify that the com/halliburton/media/tracking
package hierarchy is available:
4. In Chrome or Firefox, open the Knowledge Bases section and verify that Process Definition
“Media Tracking” can be seen:
Note: The Process Definition can only be opened in the Chrome or Firefox browsers. It cannot be
opened in Internet Explorer 9 or 10.
DecisionSpace® BPM 5000.10.1.0
29
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
5. Note the actor for Human Tasks are as follows
DecisionSpace® BPM 5000.10.1.0
30
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
6. Verify that Process Definition “Sample” can be seen:
DecisionSpace® BPM 5000.10.1.0
31
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
7. Note the actor for Human Tasks are as follows
DecisionSpace® BPM 5000.10.1.0
32
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
8. Go to the com.halliburton.media.tracking package and then go to the “Edit” Tab under the File
toolbar. Now click the “Build Package” button. The entire Package is now built. This is a
recommended step before you import this Package into DSBPM-Engine
9. Do the same for com.halliburton.training. Go to the “Edit” Tab under the File toolbar. Now click
the “Build Package” button. The entire Package is now built. This is a recommended step before
you import this Package into DSBPM-Engine.
DecisionSpace® BPM 5000.10.1.0
33
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Get Familiar with the DSBPM Engine
1. In a browser, open the following URL:
http://localhost:8080/dsbpm-engine
2. Verify the you see the following screen:
3. Login with the credentials “superadmin/superadmin.” The DecisionSpace BPM Home Page
displays.
DecisionSpace® BPM 5000.10.1.0
34
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
4. Get familiar with the User and Groups in with DSBPM before you see the Process Definitions.
DecisionSpace® BPM 5000.10.1.0
35
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Import Package in DSBPM Engine from DSBPM-Repo
1. Click on the “Import Processes” tab and verify you can see the following in your screen:
2. After selecting checkbox for the Package/Process you can preview the Process Definition before
importing it in the section called Process Details.
DecisionSpace® BPM 5000.10.1.0
36
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
3. Select the “com.halliburton.media.tracking” and “com.halliburton.training” packages and click
“Import.”
4. Proceed to the Manage Processes tab and verify you can see the following in your screen:
a. com.halliburton.media.tracking.MediaTracking is the Process Definition you imported in
the last step
b. com.halliburton.training.Sample is the Process Definition you imported in the last step
DecisionSpace® BPM 5000.10.1.0
37
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Launch Process Definition without Human Task
1. Click the “Start Process Instance” button next to the “com.sample.bpmn.hello” Process
Definition. This will open a dialog box with a Start Process Instance button and an optional form
in case the Process Instance can be started with some initial data.
2. Click the “Start Process Instance” button. This starts the Process Instance for the
“com.sample.bpmn.hello” Process Definition and it ends as soon as it starts. This is because all
tasks in this Process Definition return immediately.
3. Verify you can see the following in your screen:
DecisionSpace® BPM 5000.10.1.0
38
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Launch Process Definition with Human Task
1. Click the “Start Process Instance” button next to the
“com.halliburton.media.tracking.MediaTracking” Process Definition. You will now see the same
dialog box, but this time you will see a form with optional data which you can fill in to start the
Process.
Note: Some Process Definitions need these optional data before they start and others will have
other ways to acquiring this data (e.g., Human Tasks or talking to some web services/databases).
This depends on how the Process Definition was designed.
2. For the MediaTracking Process, you do not need to fill any of these values, simply click on Start
Process Instance. Verify you see a new entry below it with state “PENDING.”
Complete all Pending Human Tasks
1. Proceed to the User Inbox.
2. Verify the user name is “Jane” and click “Load.”
3. Verify you see a task with the name “create-shipment.”
4. Click on the View Form link and verify you can see the following in your screen:
DecisionSpace® BPM 5000.10.1.0
39
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
We are taking
Positive Path
5. Submit data and wait for 5-10 seconds.
6. Verify you see a task with the name “unpack-media.” Click on the View Form link.
7. Submit data and wait for 5-10 seconds.
8. Now switch to user “Bob” who belongs to the “Data-Expert” Group. Replace Jane with Bob and
you will see Bob’s Inbox
DecisionSpace® BPM 5000.10.1.0
40
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
9. Verify you see the entry “data-set-handling.” This task is not assigned to Bob but to the Group
“Data-Expert”. Bob happens to be part of this group. Bob will need to claim this task so that he
can work on it.
10. Click the “Claim Task” link.
11. Verify you can see the following in your screen: you should see the Type of the Task change to
“Personal” and the link “Claim Task” now becomes “View Form.”
DecisionSpace® BPM 5000.10.1.0
41
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
12. Click the View Form link and click Submit.
13. Verify that your Inbox is now empty and no more Tasks appear in it.
14. Look for email to appear in the inbox you had entered earlier. After this Process Execution is
finished the process will send an email to you.
The Positive Path of this Process is now complete.
DecisionSpace® BPM 5000.10.1.0
42
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
15. Repeat the same workflow for a Negative Path. Choose “No” for Valid Shipment instead of
“Yes.”
DecisionSpace® BPM 5000.10.1.0
43
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Getting Started
Verify in Admin Console that Process Instance is Complete
1. Go back to the Admin Console “Audit” Tab and verify that the status of the Process Instance has
changed from PENDING to COMPLETED.
2. Then select MediaTracking Process and scroll down
You will see the steps the Process Instance followed and the data it contained.
DecisionSpace® BPM 5000.10.1.0
44
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Quick Starts
Quick Starts
This part of the document contains a number of simple, common tasks that you can use to get started.
Invoking a RESTful service
The DSBPM Engine has a RESTful service API interface which allows you to perform importing process
definitions from DSBPM REPO and instantiate it. The DSBPM application provides a component called
the API Playground where you can easily get detailed information about various APIs and you can
execute the APIs.
The following example shows how to use the API Playground to invoke services provided by the DSBPM
Engine.
1. Import process definitions to the DSBPM Engine from the API Playground:
DecisionSpace® BPM 5000.10.1.0
45
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Quick Starts
2. Click “Try it out.” Your result screen should look like this:
3. Verify that the process definition import is successful by invoking get all process definition APIs.
DecisionSpace® BPM 5000.10.1.0
46
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Quick Starts
4. Instantiate a process with the id “com.halliburton.media.tracking.MediaTracking:”
5. See the details of the instance:
DecisionSpace® BPM 5000.10.1.0
47
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Quick Starts
6. Access the Human Tasks for a user:
Writing your own domain-specific task
DSBPM allows developers to write their own domain specific tasks. These tasks can be made available in
the DSBPM REPO for the designer tool. Users can use these tasks to design their own processes.
There is separate SDK published along with the setup of the DSBPM. You can find it at
<DSBPM_Home>\ApplicationServer\SDK It also has an example project to guide you through creating a
domain-specific task, packaging it, and injecting it to the DSBPM components.
For more information, refer to the DecisionSpace BPM Developer’s Guide.
DecisionSpace® BPM 5000.10.1.0
48
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
DSBPM Engine: Core API
DSBPM Engine: Core API
DSBPM Engine is the runtime component which is responsible for importing and execution of your
business processes. It has a REST API interface for the functionality it exposes to import business process
definitions stored in the DSBPM REPO and to instantiate business processes and to interact with Human
Tasks present in the various process instants.
REST interface
This interface allows easy integration with the process engine for features like configuring users and
groups, starting process instance, and interacting with Human Tasks.
Navigate to the following URL to see the URLS that the REST interface exposes:
http://localhost:8080/dsbpm-engine/api-playground/
REST APIs are classified in four categories:
1.
2.
3.
4.
settings
definition
instance
human task
The base URL for all APIs is
http://localhost:8080/dsbpm-engine/rest/
Settings
DSBPM internally needs a mechanism to discover the relationship between Users and Groups. This is
required because a Human Task can be assigned to a particular User using the Human Task “Actors” field
or assigned to a Group using the Human Task “GroupId” field.
For this configuration DSBPM provides two APIs.
1. To get current Settings : Method= GET, url=BASE_URL/humantask/settings
Model Schema of the response json object is
{
"identityManagement": {
"name": "string",
"declaringClass": "java.lang.Class<E>",
"ordinal": "int"
},
"ldapSettings": {
"userRoleFilter": "string",
"ldapServerName": "string",
"userFilter": "string",
"roleContext": "string",
"ldapServerPort": "string",
DecisionSpace® BPM 5000.10.1.0
49
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
DSBPM Engine: Core API
"roleFilter": "string",
"userRoleContext": "string",
"userContext": "string",
"userIdAttritube": "string",
"bindPassword": "string",
"bindUser": "string"
}
},
"userGroupPropertiesSettings": {
"userGroupProperties": [
"UserGroupPropertySummary"
]
}
2. To save new settings: Method= POST, url=BASE_URL/humantask/settings
Model Schema for the request body is
{
}
"identityManagement": {
"name": "string",
"declaringClass": "java.lang.Class<E>",
"ordinal": "int"
},
"ldapSettings": {
"userRoleFilter": "string",
"ldapServerName": "string",
"userFilter": "string",
"roleContext": "string",
"ldapServerPort": "string",
"roleFilter": "string",
"userRoleContext": "string",
"userContext": "string",
"userIdAttritube": "string",
"bindPassword": "string",
"bindUser": "string"
},
"userGroupPropertiesSettings": {
"userGroupProperties": [
"UserGroupPropertySummary"
]
}
DecisionSpace® BPM 5000.10.1.0
50
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
DSBPM Engine: Core API
Definition
Companywide process definitions are stored in the DSBPM-REPO. For runtime execution of the
processes DSBPM needs to import them to the DSBPM Engine. The RESTful API under the definition
category provides the interface to list definitions, search definition by id, delete definition, and import
definitions from the DSBPM-REPO.
1. Get Process Definition list: Method= GET, url=BASE_URL/process/definition
2. Search Process Definition by Id: Method= GET,
url=BASE_URL/process/definition/{processDefinitionId}
3. Delete Process Definition: Method= DELETE, url=BASE_URL/process/{processDefinitionId}
4. Import Process Definition from DSBPM-REPO: Method= GET,
url=BASE_URL/process/import/{processDefinitionId}
5. Get All Human Task Definitions present in the Process: Method=GET, url= BASE_URL
/process/definition/{processDefinitionId}/human-tasks-definitions
6. Get Process Definition BPMN file Contents By Id: Method= GET, url=BASE_URL/
/process/definition/bpmn/{processDefinitionId}
Instance
The API under the instance category provides an interface to instantiate processes, abort processes, and
get detailed information about processes, process variables, and task nodes.
1. Create a Process Instance from a Process Definition: Method=PUT, url=
BASE_URL/process/instance
2. You can pass process variables/parameters in the body of the request as key value pair.
3. Process Instances filtered optionally by processDefinitionId and/or state: Method=GET, url=
BASE_URL/process/instance
4. Get a Process Instance information: Method=GET, url= BASE_URL/process/instance/{id}
5. Abort Process Instance: Method=GET, url=
BASE_URL/process/instance/{processInstanceId}/abort
6. Get Process Instance Node Summary Status: Method=GET, url=
BASE_URL/process/instance/{id}/node
7. Get the Process Variable Summary: Method=GET, url= BASE_URL/
process/instance/{id}/variable
8. Get the Process Instance’s Active Nodes: Method=GET, url= BASE_URL
/process/instance/{id}/activenodes
Human Task
The API under the humantask category provides an interface for managing and interacting human tasks.
1. Get All Actionable Tasks for the user by userId: Method=GET, url=
BASE_URL/humantask/task/{userId}
DecisionSpace® BPM 5000.10.1.0
51
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
DSBPM Engine: Core API
2. Claim the task for the given user: Method=POST, url=
BASE_URL/humantask/task/{taskId}/claim/{userId}
3. Get All Tasks pending for the user by userId: Method=GET, url=
BASE_URL/humantask/task/assigned/{userId}
4. Get All Tasks pending for the user: Method=GET, url=
BASE_URL/humantask/task/unassigned/{userId}
5. Get the task summary for given task id with user Id: Method=GET, url=
BASE_URL/humantask/task/{taskId}/summary/{userId}
6. Get Task Form for the Human Task: Method=GET, url=
BASE_URL/humantask/forms/{packageName}/{processDefinitionId}/{processInstanceId}/{taskN
ame}/{taskId}/{userId}/render
7. Posts the Task Form and complete the Human Task: Method=GET, url=
BASE_URL/humantask/forms/{packageName}/{processDefinitionId}/{processInstanceId}/{taskN
ame}/{taskId}/{userId}/complete
8. Complete Task with form data submitted as key value pair in the body: Method=GET, url=
BASE_URL/humantask/task/{taskId}/complete/{userId}
Form data that are needed to complete human tasks should be provided in the body of the
request.
REST API Security
To access REST API with a client other than a browser, the client needs to send an Authorization header
in the request.
For example, to view all process definitions imported to the server, execute following command from a
command prompt:
curl -D- -X GET -H "Authorization: Basic c3VwZXJhZG1pbjpzdXBlcmFkbWlu" -H "Content-Type:
application/json" http://localhost:8080/dsbpm-engine/rest/process/definition
The result is shown in the screen shot below.
DecisionSpace® BPM 5000.10.1.0
52
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Designer
Designer
The Designer targets the following scenarios:
1. View and/or edit existing BPMN2 processes: The designer allows you to open existing BPMN2
processes (for example created using the BPMN2 Eclipse editor or any other tooling that exports
BPMN2 XML) in a web context.
2. Create fully executable BPMN2 processes: A user can create a new BPMN2 process in the
Designer and use the editing capabilities (drag and drop and filling in properties in the
properties panel) to fill in the details. This for example allows business users to create complete
business processes all inside a a browser. The integration with Drools Guvnor allows for your
business processes as wells as other business assets such as business rules, process
forms/images, etc. to be stored and versioned inside a content repository.
Designer supports all BPMN2 elements that are also supported by jBPM as well as all jBPM-specific
BPMN2 extension elements and attributes.
Designer UI Explained
The Designer UI is composed of a number of sections as shown in the screenshot below:
1. Shape Repository Panel - the expandable section on the left shows the jBPM BPMN2 (default)
shape repository. It includes all shapes of the jBPM BPMN2 stencil set which can be used to
assemble your processes. If you expand each section sub-group you can see the BPMN2
elements that can be placed onto the Designer Canvas (2) by dragging and dropping the shape
onto it.
2. Canvas - this is your process drawing board. After dropping different shapes onto the canvas,
you can move them around, connect them, etc. Clicking on a shape on the canvas allows you to
set its properties in the expandable Properties Window (3)
DecisionSpace® BPM 5000.10.1.0
53
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Designer
3. Properties Panel - this expandable section on the right allows you to set both process and shape
properties. It is divided in two sections, namely "Often used", and "More Properties" section
which is expandable. When clicking on a shape in the Canvas, this panel is reloaded to show
properties specific to the shape type. If you click on the canvas itself (not on a shape) the section
shows your general process properties.
4. Toolbar - the toolbar contains operations which can be performed on shapes present on the
Canvas. Individual operations are disabled or enabled depending on what is selected. For
example, if no shapes are selected, the Cut/Paste/Delete operations are disabled, and become
enabled once you select a shape. Hovering over the icons in the Toolbar displays the description
text of the operation.
5. Footer - the footer contains operations that allow users to view the source of the process being
editor in the Canvas section in various formats such as BPMN2, PNG, JSON, etc.
6. Process Information - this section contains information about your process, such as its name,
creation date, version, etc
Connecting shapes together in the canvas is realized with the Shape-Menu. The Shape-Menu is
displayed by clicking on a shape.
The Shape-Menu is composed of two sections:
1. Connection section: allows you to easily connect your shape with a new one. The shapes
displayed in this section are based on connection rules of the BPMN2 specification.
2. Morphing section: allows you to easily morph a base shape into any other that extends this base
shape.
The following sequence of picture shows how easy it is to quickly create and connect multiple shapes in
the canvas.
You can also name your shapes by double-clicking on the shape in the canvas. This sets the name
attribute of the particular shape
Support for Domain-specific service nodes
Refer to the DecisionSpace BPM Developer’s Guide.
Generation of process and task forms
The Designer allows users to generate process and task ftl forms. These forms are fully usable in the
jBPM console. To start using this feature, locate the "Generate Task Form Templates" button in the
designer toolbar:
The Designer will iterate through your process BPMN2 and create forms for your process and each of
the human tasks in your process. It uses the defined process variables and human task data
input/output parameters and associations to create form fields. The generated forms are stored in the
DecisionSpace® BPM 5000.10.1.0
54
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Designer
DSBPM-REPO Guvnor, and the user is presented with a page which shows each of the forms created as
well as a link to their sources in DSBPM-REPO:
All forms are fully usable inside the User Inbox UI and can be access using the DSBP Engine API. In
addition, each form includes basic JavaScript form validation which is determined based on the type of
the process variables, and/or human task data input/output association definitions. An example
generated human task form is shown below:
DecisionSpace® BPM 5000.10.1.0
55
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Designer
Visual Process Validation
To run process validation against the process you are developing in the designer, locate the Validation
button in the Designer toolbar section:
In case of validation errors, the Designer presents a red "X" mark next to process nodes that contain
them. Mouse-over this red "X" presents a tooltip with the descriptions of validation errors. Note that
since the process node is not visually displayed, the Designer will merge all process-node-specific
validation errors with those of the very first node of the BPMN2 process.
Importing existing BPMN2 processes
This section has been documented in detail below.
DecisionSpace® BPM 5000.10.1.0
56
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
API Playground
API Playground
The DSBPM Engine interface allows easy integration with the process engine for features like configuring
users and groups, starting process instance, and interacting with Human Tasks.
Navigate to the following URL to see the URLS that the REST interface exposes:
http://localhost:8080/dsbpm-engine/api-playground/
The API playground is provided for the developers who are interested in consuming the DSBPM Engine
interface. The Playground UI is based on the technology called swagger.
The page lists all RESTful interfaces available with the DSBPM Engine. It provides detailed information
about methods, URLs, and parameters that can be sent in a service request. It also describes the format
of the json object received from the Engine as a response.
REST APIs are classified in four categories:
1.
2.
3.
4.
settings
definition
instance
human task
The base URL for all APIs is
http://localhost:8080/dsbpm-engine/rest/
Note: You can refer to the screen shots from " Invoking a RESTful service" section under Quick Start for
invoking the REST APIs.
Settings
DSBPM internally needs a mechanism to find out the relationship between Users and Groups. This is
required because the Human Task can be assigned to a particular User using the Human Task “Actors”
field. Alternatively, a Human Task can be assigned to a Group using the Human Task “GroupId” field.
For this configuration DSBPM provides two APIs.
1. To get current Settings: Method= GET, url=BASE_URL/humantask/settings
Model Schema of the response json object is
{
"identityManagement": {
"name": "string",
"declaringClass": "java.lang.Class<E>",
"ordinal": "int"
},
"ldapSettings": {
"userRoleFilter": "string",
DecisionSpace® BPM 5000.10.1.0
57
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
API Playground
"ldapServerName": "string",
"userFilter": "string",
"roleContext": "string",
"ldapServerPort": "string",
"roleFilter": "string",
"userRoleContext": "string",
"userContext": "string",
"userIdAttritube": "string",
"bindPassword": "string",
"bindUser": "string"
}
},
"userGroupPropertiesSettings": {
"userGroupProperties": [
"UserGroupPropertySummary"
]
}
2. To save new settings: Method= POST, url=BASE_URL/humantask/settings
Model Schema for the request body is
{
}
"identityManagement": {
"name": "string",
"declaringClass": "java.lang.Class<E>",
"ordinal": "int"
},
"ldapSettings": {
"userRoleFilter": "string",
"ldapServerName": "string",
"userFilter": "string",
"roleContext": "string",
"ldapServerPort": "string",
"roleFilter": "string",
"userRoleContext": "string",
"userContext": "string",
"userIdAttritube": "string",
"bindPassword": "string",
"bindUser": "string"
},
"userGroupPropertiesSettings": {
"userGroupProperties": [
"UserGroupPropertySummary"
]
}
DecisionSpace® BPM 5000.10.1.0
58
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
Admin Console
The Admin Console is a web UI for administering the business process engine. The Admin Console was
built using the REST APIs exposed by the DSBPM engine. Through this you can import business process
definitions and instantiate and manage business processes. This UI also helps you to set up users and
groups for human tasks. You can also audit the processes executing under the DSBPM Engine.
There are four different tabs provided in the Admin Console.
Settings
The Settings tab allows you to view and configure users and groups for DSBPM application.
You can choose between a simple properties file implementation or LDAP implementation.
In the case of simple properties-based implementation, you have to add groups and then add user and
comma separated groups for that user.
In the case of LDAP integration with the DSBPM human task server, you must provide values for the
parameters below:
LDAP Server Name
LDAP Server Port
Bind User
Bind Password
LDAP User Context
IP Address of LDAP Server – In our demo is this localhost point to an
instance of Active Directory Light Weight Directory Services
Port of the LDAP Server, default port number is 389
The Bind User is a Distinguished Name of a user who is allowed to
authenticate with LDAP. Once Authenticated this user has permission to
traverse the LDAP Tree and read/search objects
The Password of the User
Is that part of the LDAP Tree where all the User Objects are stored
DecisionSpace® BPM 5000.10.1.0
59
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
LDAP User Id Attribute
LDAP Role Context
LDAP User Role Context
LDAP User Filter
LDAP Group Filter
LDAP User Role Filter
Admin User
Admin Console
Is that Attribute of the Distinguished Name which maps to Actors defined
in the BPMN2 Process
Is that part of the LDAP Tree where all the Role Objects are stored
Is that part of the LDAP Tree where all the User Role Object Relationship
are stored (typically this is same as LDAP Role Context)
The Relative Distinguished Name pattern which will be used to search for a
User within the LDAP User Context. E.g., (cn={0}) means search for
(cn=”Jane”) within; e.g., OU=Users,O=TestDirectory
The Relative Distinguished Name pattern which will be used to search for a
Group within the LDAP Group Context. E.g (cn={0}) means search for
(cn=”Data-Expert”) within; e.g., OU=Roles,O=TestDirectory
The Relative Distinguished Name pattern which will be used to search for a
User Role Relationship within the LDAP User Group Context. E.g
(member=”Jane”) means search for Group with member named “Jane”
within; e.g., OU=Roles,O=TestDirectory
The user id with Administrator role.
Before configuring DSBPM to pick users and groups LDAP; you must configure your LDAP server.
Prerequisite for LDAP Integration
For successful DSBPM-LDAP integration, the underlying technology of DSBPM (which is jBPM) requires a
user with the role of administrator. The WS-HumanTask specification from jBPM introduces the role of
an administrator. An administrator can manipulate the life cycle of the task, even though he might not
be assigned as a potential owner of that task. By default, jBPM registers a special user with the userId
"Administrator" as the administrator of each task. You should therefore make sure that you always
define at least a user "Administrator" when registering the list of valid users at the task service.
This prerequisite is enforced by jBPM (refer to the jBPM Human Task User Guide).
The LDAP Server which DSBPM will talk to needs a predefined User for DSBPM to function as expected.
The underlying technology of DSBPM (which is jBPM) requires the presence of a special user named
“Administrator” to be present for Human Tasks to work. You need to have a User “CN=Administrator”
defined in your User Context, which in this case is CN=Users,O=TestDirectory, for Human Tasks to be
properly assigned.
DecisionSpace® BPM 5000.10.1.0
60
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
Import Processes
The DSBPM-Repo is a repository that holds company wide Business Process Assets. This will hold all
assets regardless of whether they are meant for production deployments or just are works in progress.
The DSBPM-Repo also has the ability to import/export itself. In production you would rarely import into
the DSBPM-Repo (as it a completely wipe and then import).
Packages containing the ready Workflows/Process Definitions need to be explicitly imported into the
DSBPM-Engine environment. This can be done through the Admin Console.
There is tab called “Import Processes”. Clicking on this tab lists all processes that are present in the
DSBPM-REPO. You can choose a process using its checkbox and clicking the Import button. You will get a
message popup saying that your process has been successfully imported.
1. Proceed to the Admin Console.
2. Click on the “Import Processes” tab and verify that your screen looks like this:
DecisionSpace® BPM 5000.10.1.0
61
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
3. The selected Process is shown in Red and you can preview the Process Definition before
importing the Package containing that Process.
DecisionSpace® BPM 5000.10.1.0
62
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
4. Select the “com.halliburton.media.tracking” and “com.halliburton.training” packages and click
“Import”
DecisionSpace® BPM 5000.10.1.0
63
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
Manage Processes
Under the Admin Console there is tab called “Manage Processes.” This tab will list all processes that are
imported in the DSBPM Engine. This also has functionality to show details of the process selected by
clicking on it. You can instantiate a process and can also abort the same from this UI by clicking the
corresponding buttons.
Launch Process Definition without Human Task
1. Click the “Start Process Instance” button next to the “com.sample.bpmn.hello” Process
Definition. This will open a dialog box with a Start Process Instance button and an optional form
in case the Process Instance can be started with some initial data.
DecisionSpace® BPM 5000.10.1.0
64
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
2. Click the “Start Process Instance” button. This starts the Process Instance for the
“com.sample.bpmn.hello” Process Definition and it ends as soon as it starts. This is because all
tasks in this Process Definition return immediately.
3. Verify that your screen looks like this:
Audit
The “Audit” tab in the Admin Console has been provided for viewing all process instance instantiated on
the DSBPM Engine. It also gives detailed information of each task node instance of the process instance.
This tab also show a Progress Diagram which is basically the Process Diagram with arrows over the
nodes to indicate which is the current node(s) being processed.
DecisionSpace® BPM 5000.10.1.0
65
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Admin Console
You will see the steps the Process Instance followed with the progress diagram to the side. The progress
diagram shows the current node(s) being processed, indicated by a small green arrow just above the top
left corner of the node:
and the process data it contains below:
DecisionSpace® BPM 5000.10.1.0
66
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Human Tasks and User Inbox
Human Tasks and User Inbox
This is a web UI to list human tasks available for the user and also allows you to take different actions
like claim task, view task forms, submit task forms. In future, this UI will handle delegate, revoke,
suspend, resume, skip and stop human tasks.
Task Lifecycle
From the perspective of a process, when a user task node is encountered during execution, a human
task is created. The process will then leave the user task node only when the associated human task has
been completed or aborted.
The human task itself usually has a complete life cycle itself as well. The following diagram is from the
WS-HumanTask specification and describes the human task life cycle.
A newly created task starts in the "Created" stage. Usually, it will then automatically become "Ready,"
after which the task will show up on the task list of all the actors that are allowed to execute the task.
The task will stay "Ready" until one of these actors claims the task, indicating that he or she will be
executing it.
When a user then eventually claims the task, the status will change to "Reserved." Note that a task that
only has one potential (specific) actor will automatically be assigned to that actor upon creation of the
DecisionSpace® BPM 5000.10.1.0
67
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Human Tasks and User Inbox
task. When the user who has claimed the task starts executing it, the task status will change from
"Reserved" to "InProgress."
Once the user has performed and completed the task, the task status will change to "Completed." In this
step, the user can optionally specify the result data related to the task. If the task could not be
completed, the user could indicate this by using a fault response, possibly including fault data, in which
case the status would change to "Failed."
While the life cycle detailed above is the normal life cycle, the specification also describes a number of
other life cycle methods, including:
•
•
•
•
•
Delegating or forwarding a task, so that the task is assigned to another actor
Revoking a task, so that it is no longer claimed by one specific actor but is (re)available to all
actors allowed to take it
Temporary suspending and resuming a task
Stopping a task in progress
Skipping a task (if the task has been marked as skippable), in which case the task will not be
executed
User Inbox
User and Group Assignment
The purpose of using DSBPM in the Platform is to allow orchestration of business processes.
Instead of
1. People sending mails to other people and asking them to complete certain tasks and
2. In turn, users who want to perform those tasks navigating in the Portal
The idea is to
1. Bring the tasks to a central location called the Notification Center (User Inbox) where the tasks
to be performed by the user appear and
2. On clicking one of those tasks, the user is presented forms which enable them to complete the
required actions
You can think of the User Inbox as a ticketing system for an IT team. When you open an IT Ticket it is
either assigned directly to an IT person or a group. If it is assigned to a Group one IT person will claim
your ticket and be responsible for it. After he/she processes the ticket, it may go to a supervisor for
approval and then come to the person who submitted the ticket informing them that the ticket is
closed.
In all this everyone received their tasks in a central location “User Inbox.”
DecisionSpace® BPM 5000.10.1.0
68
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Human Tasks and User Inbox
Personal Task
A Personal Task is a Human Task which is assigned to an end user because “actorIds” of the Human
Task/User Task contained the name of that particular user. The end user can directly start working on a
Personal Task.
Group Task
A Group Task is a Human Task which is soft assigned to an end user, because “groupIds” of the Human
Task/User Task contained a group named which the end user belonged to.
An end user first has to claim the Group Task to convert it to a Personal Task, only then he/she can start
working on it.
Complete All Pending Human Tasks Using User Inbox
1. Proceed to the User Inbox
2. Verify the user name is “Jane”, click “Load”
3. Verify you see the Task with name “create-shipment”
4. Click on the View Form link and verify that your screen looks like this:
5. Submit data, wait for 5-10 seconds
DecisionSpace® BPM 5000.10.1.0
69
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Human Tasks and User Inbox
6. Verify you see the Task with the name “unpack-media”. Click on the View Form link.
7. Submit data and wait for 5-10 seconds.
8. Now switch to the user “Bob” who belongs to the “Data-Expert” Group. Replace Jane with Bob
and you will see Bob’s Inbox.
9. Verify you see a “data-set-handling” entry. This task is not assigned to Bob but to the Group
“Data-Expert”. Bob happens to be part of this group. Bob will need to claim this task, so that he
can work on it.
10. Click the “Claim Task” link.
DecisionSpace® BPM 5000.10.1.0
70
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Domain-specific Processes
11. Now you should see the Task Type change to “Personal” and the link “Claim Task” now becomes
“View Form.”
12. Click on the View Form link and click Submit to submit the form.
13. Verify that your Inbox is now empty and no more Tasks appear in it.
Domain-specific Processes
Refer to the DecisionSpace BPM Developer Guide.
DecisionSpace® BPM 5000.10.1.0
71
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Set Up Your Own Service Repository
Set Up Your Own Service Repository
Using the DSBP-REPO it is possible to export your current repository as zip file.
You can also import other repositories in the DSBPM-REPO from the web UI.
The steps below show how to import the repository.
1. Go to Administration -> Import Export Section.
2. Import repository_export.zip from this location –
C:\Landmark\DSBPM 5000.10.1\ApplicationServer\sample-repositories\media-tracking
DecisionSpace® BPM 5000.10.1.0
72
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
Set Up Your Own Service Repository
3. Open the Knowledge Bases section and verify that the com/halliburton/media/tracking
package hierarchy is available:
4. In Chrome or Firefox, open the Knowledge Bases section and verify that the Process Definition
“Media Tracking” can be seen.
Note: The Process Definition can only be opened in the Chrome or Firefox browsers. It cannot be
opened in Internet Explorer 9 or 10.
DecisionSpace® BPM 5000.10.1.0
73
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
How to Use a Different Database Than the Default H2 Database
How to Use a Different Database Than the Default H2 Database
The steps in this section describe how to use MS-SQL server instead of the default H2 database. You can
modify these steps to use other databases.
1. Login to the MS SQL Server.
2. Create a database with the name "dsbpmdb".
3. Stop the DS BPM service.
DecisionSpace® BPM 5000.10.1.0
74
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
How to Use a Different Database Than the Default H2 Database
4. Delete the H2 database files created on the C drive as highlighted in the screen shot below.
5. Open Windows Explorer and navigate to
"C:\Landmark\DSBPM5000.10.0\ApplicationServer\standalone\configuration" and modify the
standalone.xml file.
In this stanadlone.xml file locate the datasource element whose attribute 'jndi' has 'dsbpm'
keyword in it. (Point A)
For each such datasource element, edit the connection-url, user-name, password and driver
element according to your database configuration.
DecisionSpace® BPM 5000.10.1.0
75
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
How to Use a Different Database Than the Default H2 Database
6. Open windows explorer and navigate to path "
C:\Landmark\DSBPM5000.10.0\ApplicationServer\modules\system\layers\base\com\lgc\dsbpm
\configuration\main" and modify the config.properties.
Change the below line:
To
7. Start the DecisionSpace BPM 5000.10 service.
Note: The Dialect must be selected according to your database configurations. Please refer to
the list of dialects below.
List of Available Dialects in hibernate-core-3.3.2.GA.jar
RDBMS
Dialect
DB2
org.hibernate.dialect.DB2Dialect
DB2 AS/400
org.hibernate.dialect.DB2400Dialect
DB2 OS390
org.hibernate.dialect.DB2390Dialect
PostgreSQL
org.hibernate.dialect.PostgreSQLDialect
DecisionSpace® BPM 5000.10.1.0
76
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
How to Use a Different Database Than the Default H2 Database
RDBMS
Dialect
MySQL5
org.hibernate.dialect.MySQL5Dialect
MySQL5 with InnoDB
org.hibernate.dialect.MySQL5InnoDBDialect
MySQL with MyISAM
org.hibernate.dialect.MySQLMyISAMDialect
Oracle (any version)
org.hibernate.dialect.OracleDialect
Oracle 9i
org.hibernate.dialect.Oracle9iDialect
Oracle 10g
org.hibernate.dialect.Oracle10gDialect
Oracle 11g
org.hibernate.dialect.Oracle10gDialect
Sybase
org.hibernate.dialect.SybaseASE15Dialect
Sybase Anywhere
org.hibernate.dialect.SybaseAnywhereDialect
Microsoft SQL Server 2000
org.hibernate.dialect.SQLServerDialect
Microsoft SQL Server 2005
org.hibernate.dialect.SQLServer2005Dialect
Microsoft SQL Server 2008
org.hibernate.dialect.SQLServer2008Dialect
SAP DB
org.hibernate.dialect.SAPDBDialect
Informix
org.hibernate.dialect.InformixDialect
HypersonicSQL
org.hibernate.dialect.HSQLDialect
H2 Database
org.hibernate.dialect.H2Dialect
Ingres
org.hibernate.dialect.IngresDialect
Progress
org.hibernate.dialect.ProgressDialect
Mckoi SQL
org.hibernate.dialect.MckoiDialect
Interbase
org.hibernate.dialect.InterbaseDialect
Pointbase
org.hibernate.dialect.PointbaseDialect
FrontBase
org.hibernate.dialect.FrontbaseDialect
Firebird
org.hibernate.dialect.FirebirdDialect
For more information, see: http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/sessionconfiguration.html#configuration-optional-dialects.
DecisionSpace® BPM 5000.10.1.0
77
Installation and Getting Started Guide
Getting Started with DecisionSpace BPM
How to Configure Different Email Settings
How to Configure Different Email Settings
To define new email settings follow the steps below.
1. Stop the DecisionSpace BPM 5000.10 service.
2. Create a backup copy of the C:\Landmark\DSBPM
5000.10.0\ApplicationServer\modules\system\layers\base\com\lgc\dsbpm\configuration\main
\config.properties file on other drive before proceeding.
Note: Make sure you do not create a backup of the config.properties file in the same directory
or in any directory below C:\Landmark.
3. Open the config.properties file and change the default email properties.We have exposed the
following properties:
email.host=WHSMTP.CORP.HALLIBURTON.COM
email.port=25
Do not change any other text in the file.
4. Save and close the file.
5. Restart the DecisionSpace BPM 5000.10 service.
DecisionSpace® BPM 5000.10.1.0
78
Installation and Getting Started Guide