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
© Copyright 2024 ExpyDoc