Decision Strategy Manager · 2019-05-22 · Strategy 5 Adaptive Decision Manager 5 Visual Business...

Preview:

Citation preview

Decision Straegy Manager Installation Guide

© 2014 by Pegasystems Inc. All rights reserved

This document describes products and services of Pegasystems Inc. It may contain trade secretsand proprietary information. The document and product are protected by copyright and distributedunder licenses restricting their use, copying distribution, or transmittal in any form without prior writtenauthorization of Pegasystems Inc. This document is current as of the date of publication only. Changes inthe document may be made from time to time at the discretion of Pegasystems. This document remainsthe property of Pegasystems and must be returned to it upon request. This document does not imply anycommitment to offer or deliver the products or services described. This document may include referencesto Pegasystems product features that have not been licensed by your company. If you have questionsabout whether a particular capability is included in your installation, please consult your Pegasystemsservice consultant.Although Pegasystems Inc. strives for accuracy in its publications, any publication may containinaccuracies or typographical errors. This document or Help System could contain technical inaccuraciesor typographical errors. Changes are periodically added to the information herein. Pegasystems Inc. maymake improvements and/or changes in the information described herein at any time.

This document is the property of Pegasystems Inc.

Publishing Date: April 17, 2014Version: 7.1.5Contact Product SupportVisit the Pega Discovery Network

© 2014 by Pegasystems Inc. All rights reserved

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 1

Decision Management 4

About this Release 4

What's New 5

Interaction 5

Strategy 5

Adaptive Decision Manager 5

Visual Business Director 5

Batch/Simulation 6

General 6

API: Method Calls in Activities 6

Installation & Upgrade 6

Installation Overview 7

Interaction History 7

Dimensions 8

Database Tables 8

Properties 9

Default Fact Properties 9

Default Dimension Properties 10

Service Layer 11

Adaptive Decision Manager Tables 12

Visual Business Director Tables 14

Prerequisites 14

Platform 14

Network Time Protocol 15

Internet Protocol Version 4 15

Deployment Diagrams 15

Clustering Capability 17

Database Preparation 18

Interaction History 18

Adaptive Decision Manager 19

Visual Business Director 19

Installation 20

IBM WebSphere 20

JDBC Provider 20

J2C Authentication 21

JDBC Data Sources 21

JMS Environment 22

Deployment 22

Oracle WebLogic 23

JDBC Data Sources 23

JMS Environment 24

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 2

Deployment 24

Tomcat 24

Libraries 24

JDBC Data Sources 24

Deployment 25

JBoss 26

Libraries 26

JDBC Data Sources 26

JMS Resources 27

Deployment 28

VBD Installation 28

GridGain Nodes 28

GridGain Node Installation 28

Multiple GridGain Nodes 29

Single System 29

Multiple Systems 29

Load Distribution GridGain Node Configuration 30

VBD Grain Size Configuration 30

Multiple VBD Installations 30

Reference 31

Database Driver Libraries 31

Database Driver Settings 31

Deployable Archives 32

Logging Information 32

Log Levels 32

SQL Statement Logging 33

Next Steps 33

Configuration 34

Decision Management Enabled Applications 34

Configure Application 35

Ruleset Dependency 35

Organizational Structure 35

Work Pool 35

Access Group & Operators 35

Product 36

Services 36

Adaptive Decision Manager 37

Visual Business Director 38

Proposition Cache Synchronization 39

About Proposition Cache 39

Configuring Proposition Cache Synchronization 39

Interaction History 39

Interaction History Configuration 39

Database Schema 39

Properties 40

Extending Interaction History 40

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 3

Extra Steps for KPIs 41

Excluding Properties 42

Dynamic System Settings 42

ProcessBatchJob Agent 42

About Large Simulations 42

Configuring Large Scale Simulations 42

Topology 43

Glossary 44

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 4

Decision Management

Decision Management functionality provides sophisticated mechanisms that allow for creatingapplications that determine which processes to run, and which products to offer to customers through theNext Best Action principle. This principle increases customer loyalty by addressing multiple issues in thedecision making process. Decision Management functionality includes:

• Proposition management• Strategy and interaction design• Driving process flows using interaction, scorecard and predictive model rules• Using third party models• Multilevel decisioning• Single and multinode simulation execution• Business visualization and monitoring using Visual Business Director (VBD)• Forecasting using VBD and simulations• Advanced adaptive analytics using Adaptive Decision Manager (ADM)• Reporting

Decision Management functionality is delivered through the combination of Decision Managementrules sets in PRPC and the Decision Management service layer for adaptive decisioning and businessmonitoring.

PRPC includes a sample application (DMSample) that illustrates typical use cases of DecisionManagement functionality without Adaptive Decision Manager and Visual Business Director. You havetwo ways to access this application:

• Add the DMSample:Administrators access group to your operator record.• Login as administrator@pega.com and switch to DMSample.

Related Topics

• About this Release (page 4)• What's New (page 5)

About this ReleasePRPC 7.1 Decision Management's main theme is the introduction of integrated Interaction Historyfunctionality. Interaction History's extensible database driven model replaces Interaction Services. As aconsequence of this new mechanism for persisting interaction results, strategy design was extended withadditional patterns for capturing the results of a decision and multilevel support. The design concept ofKey Performance Indicators is now fully featured, Visual Business Director streamlined in its interactionwith Interaction History and simulations work based on interaction rules. As the strategy takes ownershipof more business logic, the interaction rule becomes the orchestrating piece for running decisions andcapturing results, which has also some design impact in strategy driven flows. The table below lists thecontents of Decision Management in Additional_Products/DSM.

Folder Contents

Products • Resources necessary to set up the Decision Managementservice layer.• Adaptive Decision Manager• Visual Business Director

• Scripts to set up the Interaction History tables in a dedicatedschema.

Documentation User documentation.ThirdParty Third party software (licenses and source libraries).

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 5

What's NewThe topics listed below provide the overview of changes in Decision Management features andfunctionality since PRPC 6.3 SP1 DSM Edition.

• Interaction (page 5)• Strategy (page 5)• Adaptive Decision Manager (page 5) • Visual Business Director (page 5)• Batch/Simulation (page 6)• General (page 6)• API (page 6)• Installation and upgrade (page 6)

Interaction• Fully integrated in PRPC, Interaction History supersedes Interaction Services.• Extensible fact and dimension tables.• Interaction rule becomes the orchestrating piece in interactions.• Rule defines possible outcome results that are used when writing results to Interaction History and

defining KPIs.• Interaction rule runs strategies and saves strategy results to clipboard.• Interaction rule can write results to Interaction History, Visual Business Director and database tables

(simulation if database table contains an output definition).• Run Interaction flow shape replaces use of Run Strategy and Capture Response shapes.• Fallback policy allows for an alternative path to strategy execution

Strategy• Replacing the use of a component's public setting, strategy output defined by connecting components

to the standard Results component.• Using strategy results and output of other components as predictors through adaptive model

parameters.• Terminology changes in component names.• Pages & Classes.• New Interaction History component.• Override default subject ID through the Advanced tab.• Strategy design replaces the capture response settings of interaction rules previous to PRPC 7.1.

Business logic in strategies defines how to write interaction results.• Strategy design replaces the multilevel settings of interaction rules previous to PRPC 7.1.• Auto-run options: run strategy based on a representation of the data provided through a data

transform or an input definition.

Adaptive Decision Manager• Adaptive model parameters.• ADM data mart and reporting enhancements.• Access the last five responses sent to the ADM system.• Reporting on models and predictors.

Visual Business Director• VBD is no longer a mirror of the Interaction Services persistence layer and integrates directly with

Interaction History.• VBD retrieves data from Interaction History tables and stores it in memory.• Key Performance Indicators drive visualization in VBD.• VBD Planner opens in a new browser window.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 6

• New facilities for data sources, views, KPIs and VBD grid environment.

Batch/Simulation• Terminology changes (batch replaced by simulation).• Creating the database table is optional when creating output definitions, allowing for the use of

database connections that do not have create table privileges.• Simulations using interaction rules to run strategies and save results to database tables.• Use embedded pages in input definitions.

General• Changes to the Decisioning category in the Designer Studio menu.• User interface and usability improvements.• DMSample application readily available in a Process Commander installation, providing examples

on how to use Decision Management functionality in applications without dependency on AdaptiveDecision Manager and Visual Business Director.

API: Method Calls in Activities• New method calls: Call Pega-DM-Batch-Work.pxCreateSimulationRun• The method calls listed below are incompatible with the new Interaction History functionality and the

majority of them also deprecated.

Status API

Deprecated in PRPC 7.1 • Call pxRunStrategy• Call pxCaptureInteraction• Call pxRunStrategy

Deprecated since PRPC 6.2 SP2 DSM Editionand PRPC 6.3 SP1 DSM Edition

• Call Rule-Decision-Interaction.pxRunStrategy

• Call Rule-Decision-Interaction.pxRunCaptureResponse

Incompatible Call Pega-DM-Batch-Work.pxCreateDecisionExecutionConfig

Installation & Upgrade• Installation of the DSM service layer is not required to work with Decision Management functionality in

an out-of-the-box PRPC installation.• Use scorecard, predictive model, strategies, interaction rules and related functionality after

enabling an application to use Decision Management functionality.• Adaptive modeling and VBD functionality still require installation of the corresponding services.

• Upgrade path from PRPC 6.2 SP2 DSM Edition or PRPC 6.3 SP1 DSM Edition to PRPC 7.1.• Adaptive model migration wizard.• Interaction data migration wizard.

• Application server's GridGain node can be configured exclusively for load management.• Asynchronous communication with Adaptive Decision Manager through JMS.• Interaction History and Visual Business Director database tables

• Part of the PegaDATA schema (default, no additional installation steps).• Configuration supports using a dedicated database schema (requires additional installation and

configuration steps).

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 7

Installation Overview

Decision Management is an integral part of Process Commander. The core functionality that is availablethrough the use of the Decision Management rule sets does not require any installation steps. If you arenot using Adaptive Decision Manager and Visual Business Director, and assuming the default databaseset up for the Interaction History data layer (PegaDATA schema), skip the installation steps, proceed withthe configuration steps (page 34) and use the DMSample application (page 4) as a starting point. Ifyou require the Interaction History database tables in a dedicated schema, follow the steps that describehow to externalize the Interaction History database (page 18).

The use of adaptive analytics, business monitoring, visualization and forecasting requires ADM and VBD.

• Decision Management functionality in PRPC applications requires the installation of ADM if you useadaptive functionality.

• Install VBD to use business monitoring and visualization.

The installation guidelines assume administration and configuration knowledge of thedatabase and application server platforms.

Related Topics

• Interaction History (page 7)• Service Layer (page 11)• Prerequisites (page 14)• Deployment Diagrams (page 15)• Clustering Capability (page 17)

Interaction HistoryIntelligent decisioning is not a static exercise. Customer behavior is constantly shifting, actions by boththe enterprise and competitors impact customer behavior, changing business objectives and priorities.Feedback on decisions made by consumers in response to propositions is vital if the enterprise is to learnwhat works and what does not. Interaction management consists of retrieving the interaction data andhistory that can be used in the process of issuing a decision or capturing the results of the interactionbased on the combination of pySubjectID and strategy components that are configured for interactionmanagement (proposition data, interaction history and imported data that captures customer behavior).

Interaction History provides the persistence layer for interaction result information. Interaction resultsare materialized in the form of fact records and dimension data. It is also based on interaction resultsinformation that PRPC updates ADM and VBD in the service layer, including updating the state ofadaptive models and saving interaction results for monitoring and reporting purposes. Interaction Historytables can be queried and analyzed, thus allowing for identifying where changes should be madeand where new opportunities arise. An example of reporting on Interaction History is provided in theInteraction History Reports.

Related Topics

• Dimensions (page 8)• Database Tables (page 8)• Properties (page 9)

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 8

DimensionsThe historical information captured in interaction results is based on dimensions (page 44). The tablebelow provides an overview of the conceptual structure of each dimension. List numbering represents thesequence used to build the fact record.

Dimension Sequence Description

Action 1. Issue2. Group3. Name

What was offered/presented to the customer.

Application 1. Application2. Interaction3. Strategy4. Component5. Application version

The decision path that issued the action.

Channel 1. Direction2. Channel

The channel used in the interaction with thecustomer.

Context - The reason for the action.

Customer - Who was offered/presented with the action.

Location - The location of the customer when the interactiontakes place.

Operator 1. Organization2. Unit3. Division4. Operator

Who handled the interaction.

Outcome - The result of the interaction.

Database TablesTo minimize duplication of data, Interaction History uses a star schema that consists of one fact table andeight dimension tables. By default, Interaction History tables are part of the PegaDATA schema.

Database Table Description

PR_DATA_IH_FACT • Class: Data-Decision-IH-Fact• Fact table• Contains FKs to the dimension tables, measurements and

fact properties

PR_DATA_IH_DIM_ACTION • Class: Data-Decision-IH-Action• Action dimension table

PR_DATA_IH_DIM_APPLICATION • Class: Data-Decision-IH-Application• Application dimension table

PR_DATA_IH_DIM_CHANNEL • Class: Data-Decision-IH-Channel• Channel dimension table

PR_DATA_IH_DIM_CONTEXT • Class: Data-Decision-IH-Context• Context dimension table

PR_DATA_IH_DIM_CUSTOMER • Class: Data-Decision-IH-Customer• Customer dimension table

PR_DATA_IH_DIM_LOCATION • Class: Data-Decision-IH-Location• Location dimension table

PR_DATA_IH_DIM_OPERATOR • Class: Data-Decision-IH-Operator• Operator dimension table

PR_DATA_IH_DIM_OUTCOME • Class: Data-Decision-IH-Outcome• Outcome dimension table

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 9

The Primary Key of the Dimension tables is a hash code of the property names and values of thatdimension expressed as a 64-bit long value and the Foreign Keys are also 64-bit Long values. ThePrimary Key of each dimension table is named pzID. The relation between fact and dimension tablesare managed through the Foreign Keys for each dimension table in the fact table. In PRPC, thisrelation is captured in association rules under Data-Decision-IH-Fact to facilitate building reportson Interaction History (for example, when building a report based on the fact class, you can addpxActionDimension.pyIssue to join the pyIssue property of the action dimension).

Dimension Foreign Key Association Rule

Action pzActionID pxActionDimensionApplication pzApplicationID pxApplicationDimensionChannel pzChannelID pxChannelDimensionContext pzContextID pxContextDimensionCustomer pzCustomerID pxCustomerDimensionLocation pzLocationID pxLocationDimensionOperator pzOperatorID pxOperatorDimensionOutcome pzOutcomeID pxOutcomeDimension

Currently, the schema does not define any Foreign Key constraints.

PropertiesThe Strategy Result class provides the basis for building the fact and dimension records. When writingstrategy results to Interaction History, properties are split into fact and dimension properties and savedinto the appropriate table. Properties used to build fact and dimension records are mapped to databasecolumns, defined in the SR class data and defined in Interaction History. The name of an InteractionHistory property is used to identify the property in the SR class. Properties defined in the SR class thatare not in Interaction History are not considered when writing results to the fact and dimension tables;similarly, properties defined in Interaction History that are not in the SR class are also not consideredwhen retrieving data from Interaction History. The name of Interaction History properties needs to be thesame as the column names they are mapped to and this applies to any of the default properties, as wellas any property that is the result of extending Interaction History.

• Default fact properties (page 9)• Default dimension properties (page 10)

Default Fact PropertiesProperties that have a wide range of unique values should be defined as fact properties. Numeric factproperties can be used as KPIs and visualized as such in Visual Business Director. Default fact propertiesdefined on Data-Decision-IH-Fact class:

• pxDecisionTime: time stamp corresponding to when the decision was issued.• pxFactID: unique fact record ID.• pxInteractionID: unique representation of the interaction, mostly consisting of concatenating subject

ID and decision time stamp.• pxOutcomeTime: time stamp corresponding to when the record was stored in the Interaction History

tables.• pxPriority: priority of the action.• pxRank: rank of the action.• pyExternalID: work item ID that was set through interaction rules previous to PRPC 7.1.• pyGroupID: the ID of the group the subject ID belongs to.• pyLatitude: geographical latitude.• pyLongitude: geographical longitude.• pyPropensity: calculated propensity for the action.• pySubjectID: the subject ID used when setting the results.• pzActionID: action ID.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 10

• pzApplicationID: applicaton ID.• pzChannelID: channel ID.• pzContextID: decision context ID.• pzCustomerID: customer ID.• pzLocationID: location ID.• pzOperatorID: operator ID.• pzOutcomeID: outcome ID.

Default Dimension PropertiesDimension properties contain properties that have a limited list of unique values. For this reason, thelocation dimension should not contain geographical locations because that would generate an excessiveamount of records to be inserted into the table.

Dimension Properties

Action Default properties defined on Data-Decision-IH-Dimension-Action:

• pyIssue: the issue the proposition belongs to.• pyGroup: the group the proposition belongs to.• pyName: the name of the proposition.

Application Default properties defined on Data-Decision-IH-Dimension-Application:

• pyApplication: the application that runs the interaction.• pyInteraction: the interaction rule.• pyStrategy: the strategy rule.• pyComponent: the strategy component.• pyApplicationVersion: the version of the application that runs the

interaction.

Channel Default properties defined on Data-Decision-IH-Dimension-Channel:

• pyChannel: the channel used in the interaction.• pyDirection: the direction used in the interaction.

Context By default, no properties are defined on Data-Decision-IH-Dimension-Context.

Operator Default properties defined on Data-Decision-IH-Dimension-Operator:

• pyOrganization: organization the operator belongs to.• pyDivision: the division.• pyUnit: the unit.• pyOperator: the operator.

Outcome Default property defined on Data-Decision-IH-Dimension-Outcome:pyOutcome, which contains the result of the interaction.

Customer By default, no properties are defined on Data-Decision-IH-Dimension-Customer.

Location By default, no properties are defined on Data-Decision-IH-Dimension-Location.

Do not use this dimension to store geographic coordinatesbecause this may result in inserting more rows than what thetable is designed to contain. The location should be genericenough to contain a limited set of values. If you require geographiccoordinates; or more detailed location information; consider usingthe pyLongitude and pyLatitude properties of the fact class orextend the fact table to suit the need for capturing detailed locationinformation.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 11

Service LayerInteraction between Process Commander and the Decision Management service layer (Adaptive DecisionManager and Visual Business Director) is triggered by:

• Executing an interaction rule configured for capturing interaction result or writing results to VBD.• Executing a strategy that results in creating or updating adaptive models.• Adaptive model configuration through adaptive model rules.• Actions performed in the adaptive models landing page (deleting models, training models).• Scoring model updates by running the agent in the Pega-DecisionEngine ruleset.

This interaction consists of gathering the required information for scoring and capturing dataresulting from interactions. If adaptive models are used in the decision execution process, modelsare executed and model data updated. Sending the necessary information to ADM is triggered bychanges in adaptive model rules, deleting models in the adaptive models landing page and running theUpdateAdaptiveModels agent (page 38). In the process of saving interaction results, the VBD datasource known as actuals is automatically updated.

The diagram below provides an overview of the communication between PRPC, ADM and VBD. PRPCneeds to be aware of the (necessary) Decision Management service layer end points so that the processof passing and retrieving information can be performed.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 12

Related Topics

• Adaptive Decision Manager Tables (page 12)• Visual Business Director Tables (page 14)

Adaptive Decision Manager TablesADM is a stateful system (state is in memory). The frequency of writing its state is determined by theBACKUP_INTERVAL settings. The state is also updated when you stop the ADM application. The tablebelow explains the ADM core database tables.

Table Description

ADM_BINPREDICTOR Table containing the data associated with the grouping ofpredictors configured through adaptive model rules. It has amany-to-one relation with ADM_MODEL.

ADM_GROUPEDPREDICTOR Table containing the data associated with the binning ofpredictors configured through adaptive model rules. It has amany-to-one relation with ADM_MODEL.

ADM_MODEL Table containing the data associated with the modelscreated in the ADM system. Data in this table is driven by theproperties of adaptive model components when executed inthe context of a strategy.

ADM_SYSTEM Table containing the data associated with the behavior of theADM system.

ADM_EVENTQUEUE Default staging table containing new models, as well as newinteraction result records. Used by the fail safe mechanism(page 37).

ADM_MODEL table:

Name Description

ID Primary Key. Unique ID.ACTIVE_GROUPS Describes which predictor groups are active.ANALYZED_COUNT Number of responses handled when data analysis was

executed.CONFIG_CLASS Applies to class of the adaptive model rule.CONFIG_NAME Name of the adaptive model rule.CHNL_DIRECTION Modeled direction in the channel dimension.CHNL_CHANNEL Modeled channel in the channel dimension.PROP_ISSUE Modeled business issue in the action dimension.PROP_GROUP Modeled group in the action dimension.PROP_NAME Modeled proposition in the action dimension.CORRELATIONS_SUMCOVS Summed covariance matrix of predictors to track correlations.INITIALIZED Flag to track if the model was initialized.PERF_CASES Performance history: number of cases per snapshot.PERF_DIVISION Performance history: value used to scale performance

numbers.PERF_NCASES Performance history: total number of cases.PERF_TIMESTAMPS Performance history: timestamps per snapshot.PERF_VALUES Performance history: performance numbers per snapshot.PREDICTOR_GROUPS Groups with correlated predictors.PREDICTOR_ORDER Order of predictors in correlation matrix.RESPONSE_COUNT Total number of responses observed.TOTAL_NEGATIVES Total number of negative observations, window size taken into

account.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 13

TOTAL_POSITIVES Total number of positive observations, window size taken intoaccount.

PARAM_CORR_THRESHOLD Model parameter: correlation threshold.PARAM_DA_COUNT Model parameter: data analysis count.PARAM_GROUPING_GRANULARITY Model parameter: grouping granularity.PARAM_GROUPING_MIN_CASES Model parameter: grouping minimum number of cases.PARAM_POS_BEHAVIOR Model parameter: positive behaviors (list).PARAM_NEG_BEHAVIOR Model parameter: negative behaviors (list).PARAM_PERF_THRESHOLD Model parameter: performance threshold.PARAM_PERF_WINDOW_SIZE Model parameter: performance window size (performance

memory).PARAM_REFRESH_RESPONSES Model parameter: refresh responses.PARAM_UPDATE_LOCAL Model parameter: flag describing if local learning enabled or

disabled.PARAM_WINDOW_SIZE Model parameter: window size (memory).

ADM_BINNEDPREDICTOR table:

Name Description

ID Unique ID (Primary Key, unique constraint).NAME Name of the predictor.TYPE Predictor data type.MODEL_ID ID of the model the predictor belongs to (ADM_MODEL.ID

Foreign Key, unique constraint).ACTUAL_VALUES Observed values for the predictor.ALLOWED_VALUES Allowed values for the predictor.COUNTS Total number of responses with data for the predictor.MEAN Mean of the observed values.NEGATIVE_BINS Binned values for negative observations.POSITIVE_BINS Binned values for positive observations.SUMVAR Summed covariance matrix of predictors to track correlations.

ADM_GROUPEDPREDICTOR table:

Name Description

ID Unique ID (Primary Key, unique constraint).NAME Name of the predictor.TYPE Predictor data type.MODEL_ID ID of the model the predictor belongs to (ADM_MODEL.ID

Foreign Key, unique constraint).CONFIG_NAME Name of the adaptive model rule.MAPPING_KEYS Bin to group mapping keys.MAPPING_VALUES Bin to group mapping values.MAPPING_LABELS Bin to group mapping labels.POSITIVES Number of positives per group.NEGATIVES Number of negatives per group.TOTAL_POSITIVES Total number of positive observations.TOTAL_NEGATIVES Total number of negative observations.SMOOTHING_VALUE Smoothing value used in propensity calculations.

ADM_EVENTQUEUE table:

Name Description

EVENT_TIME Time of the event.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 14

EVENT_TYPE Type of the event (model creation, interaction results, etc.).ENCODING_TYPE Encoding used for OBJECT.OBJECT Encoded data of the event so that it can be replayed

ADM_SYSTEM table:

Name Description

ID Primary Key. Unique ID.BACKUP_INTERVAL Interval (in milliseconds) between regular backup of models in

the ADM system. Default setting is 3600000.FAILSAFE_ENABLED Indicates if ADM is operating with the fail safe mechanism

enabled (true) or not (false).LAST_RESPONSE_TIME Time stamp of the last interaction results that were handled by

ADM. Used by the fail safe mechanism.

Visual Business Director TablesThe tables supporting the operation of VBD are included in the PRPC schema. The table below explainsthe VBD tables.

Table Description

PR_DATA_VBD_CONFIG Table containing configuration parameters. Bydefault, this table is empty.

PR_DATA_VBD_COLLECTION_CONFIG Table containing the data sources correspondingto interaction results created through runningan interaction rule. There are two types of datasources:

• Actuals: JDBC based data source that is storedin memory. This data source is always updatedin a VBD enabled system when writing resultsto Interaction History.

• Simulation data sources: stored in memory andin the node's file system for backup purposes.Data sources updated in simulations designedfor forecasting.

PrerequisitesThe prerequisites listed below apply to the services running in the Decision Management service layer.

• Platform (page 14)• Network Time Protocol (page 15)• Internet Protocol version (page 15)

PlatformFor detailed information on platform support, refer to the Platform Support Guide1 available on the PegaDiscovery Network.

Platform Version

Java Server Minimum JVM memory requirements(ADM and VBD):

• Initial Java heap size: 1024• Maximum Java heap size: 2048

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 15

JVM memory requirementsdepend on yourapplication's use of ADMand VBD. Contact PegaSupport for specializedsizing recommendations.

Client JDK 1.6+ installed in the clientsystem(s) accessing VBD Planner.

Application Server Aligned with PRPC, except for JBoss(JBoss EAP 5.1 only). Weblogic mustbe enabled to support JPA 2.

Database Aligned with PRPC, except for MSSQL Server (not supported).

Network Time ProtocolTime stamps are used for operational purposes. Synchronization is required between the clocks of PRPCnodes, server(s) hosting the application server and server(s) hosting the database. See also, PRPC Help,Concepts and terms - Clusters.

Internet Protocol Version 4Internet Protocol version 4 applies when the application server hosting VBD runs on an operating systemthat is not Microsoft Windows. The java.net.preferIPv4Stack JVM option should be set to true. You can dothis by adding -Djava.net.preferIPv4Stack=true to the application server’s start script.

Deployment DiagramsThe Decision Management service layer uses HTTP Invoker to handle remote invocation calls.

In a production environment, each Decision Management service should be allocated its own serverand the necessary number of GridGain nodes should be set up according to the required task loadingscheme. Although the database tables supporting Interaction History are part of the PegaDATA schema,you can set up a dedicated schema for the Interaction History data layer. You can also isolate the VisualBusiness Director database tables in a dedicated schema (the diagram below does not include thisscenario).

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 16

In a development environment, the services in the Decision Management service layer can be installedon the same server and additional installation of GridGain nodes is not required. The diagram belowshows a reference deployment diagram that can be used for development and testing.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 17

Clustering CapabilityThe table below provides an overview of the clustering capability of the Decision Management services.

Service High Availability/Failover Scalability

Adaptive DecisionManager

Yes (scoring)Partial (learning)

No

Visual Business Director Yes Yes (using load balancer)

Some limitations to ADM clustering capabilities apply. They are described in the list below.

• It is not possible to simultaneously run multiple ADM servers sharing the same database.• When running multiple ADM servers and one server is not running, scoring still happens in the local

models in PRPC but learning in that server is disabled until the server is running again.• There is no state synchronization between ADM servers.

Notes1. https://pdn.pega.com/documents/platform-support-guide-for-pega-7

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 18

Database Preparation

Purpose Preparation Step

Interaction History tables in a dedicatedschema

Interaction History (page 18)

Adaptive Decision Manager database Adaptive Decision Manager (page 19)

Visual Business Director database Visual Business Director (page 19)

Interaction HistoryBy default, the database tables supporting Interaction History are part of the PegaDATA schema but youcan have these tables in a different database by following the steps listed below.

1. Using the database administration tool of your choice, create a dedicated user for the InteractionHistory tables with the following permissions: resource and connect.

2. Go to the Additional_Products/DSM/Products/Interaction History/schema folder in your PRPCdistribution image.

3. Copy the following files to the scripts folder in your local copy of the PRPC distribution image.• generateIHddl.xml• generateIHddl.bat/sh

4. Using a command prompt, go to the scripts folder.5. Run the generateIHddl script with the dbType (Oracle: oracledate, IBM DB2 LUW: udb, IBM z/OS:

db2zos, PostgreSQL: postgres, MS SQL Server: mssql) and dbSchema arguments to generate theSQL files.

Environment Example

WindowsgenerateIHddl.bat --dbType oracledate --dbSchema IHSTORE

Unix/Linux./generateIHddl.sh --dbType oracledate --dbSchema IHSTORE

6. After performing these steps, go to the schema/generated folder in your local copy of thePRPC distribution to access the generated IH_install_on_<dbType>.sql file. Use your databaseadministration tool to run the SQL file that populates and configures the Interaction History schema.

7. Configure the database table data instances (page 39) to use the dedicated database schema.

(IBM z/OS only) Before running the script, configure the site dependent properties and edit thesetupDatabase.properties file. Running the script takes an extra argument, --zosProperties.For more details, refer to the installation documentation for PRPC on IBM WebSphere and z/OS, sections Configuration Considerations, Configure Site Dependent Properties and Usingthe generateDDL Script.

Besides generating the SQL files to populate an empty schema, the generateIHddl batch/shell scriptsupports the drops and upgrade options. Both actions require you to also provide the database driver,JDBC URL and database credentials.

• Clear the schema by using the drop action argument. For example, generate theIH_drops_on_oracledate.sql file in the schema/generated folder to clear the Interaction History tableson an Oracle database.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 19

generateIHddl.bat --action drops --dbSchema IHSTORE --dbType oracledate --driverJar c:\usr\JDBCdrivers\ojdbc6.jar --url jdbc:oracle:thin:@localhost:1521:ORCL --username IH_USER --password IH_USER

• Update the contents of the schema by using the upgrade action argument. For example, generate theIH_upgrade_on_oracledate.sql file in the schema/generated folder to update the Interaction Historytables on an Oracle database.

generateIHddl.bat --action upgrade --dbSchema IHSTORE --dbType oracledate --driverJar c:\usr\JDBCdrivers\ojdbc6.jar --url jdbc:oracle:thin:@localhost:1521:ORCL --username IH_USER --password IH_USER

Although running the script should result in removing the generated folder, check the timestamp of the generated files. If the time stamp is not up to date, delete the generated foldermanually and run the script again.

Adaptive Decision ManagerUsing your database vendor’s tools, create a dedicated user for the Adaptive Decision Manager servicewith the following permissions: resource, connect and create sequence. The ADM schema is populatedand configured by running the adm_on_<database>.ddl script that creates the ADM database tables.Read <database> as a placeholder value for oracle (Oracle), db2 (IBM DB2 LUW), zos (IBM z/OS)or postgresql (PostgreSQL). This script is located in the Additional_Products/DSM/Products/AdaptiveDecision Manager/schema/<database> folder and should be executed against the ADM schema by aDBA or equivalent user.

Visual Business DirectorAs of PRPC 7.1, VBD database tables are included in the PRPC schema. On a single schemainstallation, the PRPC database credentials are used to configure the VBD data source connection. Ona split schema installation, use the PegaDATA database credentials. It is also possible to have the VBDdatabase tables in a different schema. The steps are similar to setting up the Interaction History tables ina dedicated schema (page 18):

• In step 2, the folder is Additional_Products/DSM/Products/Visual Business Director/schema.• In step 3, copy the files listed below:

• generateVBDddl.xml• generateVBDddl.bat/sh

• In step 5, run the generateVBDddl script. For example:

generateVBDddl.bat --dbType oracledate --dbSchema VBDSTORE

• In step 6, use the generated VBD_install_on_<dbType>.sql file.• Step 7 does not apply to VBD.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 20

Installation

After performing the database preparation steps (page 18), set up the ADM and VBD services. Theexternalization of the Interaction History data layer also requires installation steps at the applicationserver level.

1. Perform configuration and deployment steps• IBM WebSphere (page 20)• Oracle WebLogic (page 23)• Tomcat (page 24)• JBoss (page 26)

2. Complete VBD installation (page 28)Production environment only.

Related Topics

• Service Layer (page 11)• Prerequisites (page 14)• Deployment Diagrams (page 15)• Clustering Capability (page 17)• Reference (page 31)

IBM WebSphereFollow these steps to configure resources and deploy applications:

1. Create JDBC provider (page 20)2. Create J2C authentication entries (page 21)3. Create JDBC data sources (page 21)4. Configure JMS environment (page 22)5. Deploy applications (page 22)

JDBC ProviderOn a clean installation of the application server, IBM WebSphere requires the configuration of the JDBCprovider.

If the database is Oracle and Java 2 security is enabled, turn off JAR sealing. Do this bymodifying the JAR's MANIFEST.MF file. Change Sealed: true to Sealed: false before makingthe JAR file available to the application server.

1. Create a new JDBC provider in the applicable scope and set the basic configuration by defining nameand basic configuration settings. The scope depends on the deployment and installation of yourWebSphere application server.

Setting Value

Database type • Oracle: Oracle• DB2: DB2

Provider type • Oracle: Oracle JDBC Driver• DB2: DB2 Universal JDBC Driver Provider

Implementation type Connection pool data source

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 21

2. Set the path that points to the location of the database driver. The class path follows a <path>\<database_driver> pattern, where <path> corresponds to the location and <database_driver>corresponds to the database driver (page 31). Verify that the database driver exists at thespecified location.

3. Save the changes to the master configuration.

J2C AuthenticationCreate one J2C authentication entry for each data source supporting the applications in the DecisionManagement service layer. If the Interaction History database tables are in a dedicated schema, define aJ2C authentication entry for the Interaction History data source in the PRPC and VBD servers.

1. Create a new J2C authentication data entry and configure the properties according to the databasepreparation steps (page 18).

Property Configuration

Alias • Adaptive Decision Manager: adm• Visual Business Director: vbd• Interaction History: ih

User ID The name of the database user.Password The database user's password.

2. Save the changes to the master configuration.

JDBC Data Sources1. Create a new data source in the applicable scope and, for each JDBC data source, define the name

and JNDI. The scope depends on the deployment and installation of your application server.

Application Configuration

Adaptive DecisionManager

• Name: admDataSource• JNDI: jdbc/admDataSource

Visual BusinessDirector

• Name: vbdDataSource• JNDI: jdbc/vbdDataSource

This data source connects to the PRPC database schema (single schema),PegaDATA (split schema) or a dedicated schema.

Interaction History If the Interaction History database tables are in a dedicated schema, definea data source for Interaction History in the PRPC and VBD servers.

• Name: ihDataSource• JNDI: jdbc/ihDataSource

2. Select the applicable JDBC provider. It is advisable to check the existing JDBC providers forsupported databases (page 31) and upgrade the JAR files accordingly.

3. Enter the database specific properties for the data source.

Database Configuration

Oracle • URL: specify the the connection URL to the database following thepattern described in database driver settings (page 31).

• Data store helper class name: select the entry corresponding toyour Oracle database.

DB2 • Driver type: use Type 4 drivers.• Database name: provide the name of the database.• Server name: provide the name of the database server.• Port number: provide the port on which the database accepts

connections.4. In the Setup security aliases step, set the component-managed authentication alias as configured in

the J2C authentication (page 21) step and the mapping configuration as DefaultPrincipalMapping.5. Configure custom properties for each DB2 data source.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 22

• Go to the data source’s configuration page by clicking the applicable link in the Data Sourcespage.

• Configure the required database connection custom properties (page 32) under CustomProperties under Additional Properties.

6. Select the data source you created in the Data Sources page and click the Test Connection button tovalidate the JDBC data source configuration.

7. Save changes to the master configuration.

JMS EnvironmentSet up the JMS environment for Adaptive Decision Manager.

These guidelines assume you are configuring the JMS environment using the defaultmessaging provider.

1. Create a Service Integration Bus (SIB) named ADM Bus.2. In the ADM Bus, add the bus members corresponding to the nodes running ADM and PRPC. In the

step for improving the messaging performance, it is advisable to accept the default settings for theJVM heap size.

3. In the ADM Bus, create a new destination with the specifications listed below and save the changesto the master configuration.• Destination type: topic space• Identifier: ADMDestination

4. Go to the JMS providers facilities and select the messaging provider using the same scope as theADM Bus SIB. In Additional Properties, select Topic Connection Factories, add a new connectionfactory using the specifications listed below and save the changes to the master configuration.• Name: ADM Request Connection Factory• JNDI name: jms/admRequestConnectionFactory• Bus name: ADM Bus• Durable subscription home: it should point to the host that is member of the bus (single server

installation), or one member of the bus (cluster installation).5. Back in the JMS provider, select the link to create a topic under Additional Properties, add a topic

using the specifications listed below and save the changes to the master configuration.• Name: ADM Topic• JNDI name: jms/admRequestDestination• Bus name: ADM Bus• Topic space name: ADMDestination

6. In the JMS provider, add a new activation specification using the details listed below and save thechanges to the master configuration.• Name: ADM Activation Specification• JNDI name: jms/admActivationSpecification• Destination type: topic• Destination JNDI name: jms/admRequestDestination• Bus name: ADM Bus

DeploymentAdd IBM WebSphere enterprise applications.

1. Start the application installation process and select the applicable EAR file (page 32).2. In the Map modules to servers step, select the appropriate module and map it to the appropriate

server.3. In the Map virtual hosts for web modules step, select the appropriate virtual host for the web module

service.4. Proceed with the remaining steps and save the changes to the master configuration.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 23

Oracle WebLogicFollow these steps to configure resources and deploy applications:

1. Create JDBC data sources (page 23)2. Configure JMS environment (page 24)3. Deploy applications (page 24)

JDBC Data SourcesCreate the ADM and VBD data sources. If the Interaction History database tables are in a dedicatedschema, define the data source for Interaction History in the PRPC and VBD servers.

1. Add new JDBC data sources and configure the properties.• Configure the JDBC data sources.

Application Configuration

AdaptiveDecisionManager

• Name: admDataSource• JNDI: jdbc/admDataSource

VisualBusinessDirector

• Name: vbdDataSource• JNDI: jdbc/vbdDataSource

InteractionHistory

• Name: ihDataSource• JNDI: jdbc/ihDataSource

• Depending on the database environment running the Decision Management schemas, select theappropriate database vendor in the Database Type field.

• Select the database driver suitable for the selected database type in the Database Driver field.2. Configure the connection properties according to the settings used in the database preparation steps

(page 18).

Property Value

Database Name The name of the database.Host Name IP address or name of the database server.Port • Oracle: default port number is 1521.

• DB2: default port number is 50000.

Database User Name The name of the database user.Password The password of the user specified in the Database User Name

property.3. In the Test Database Connection step.

• Configure the Driver Class Name and URL according to the database driver class & URL settings(page 31) table.

• Additionally, enter the properties to pass to the JDBC driver when creating the databaseconnection. The configuration of additional properties always applies to data sources connectingto DB2. The following table specifies the properties to configure in this step.

Property Value

user The name of the database user for each application.portNumber Port number.databaseName The name of the database.serverName The name of the database server.Additional Properties Refer to the information on required additional parameters (page

31).• Test the configuration to confirm the data source can be accessed.

4. For each configured data source, enable the Test Connections On Reserve setting.5. Activate the changes.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 24

JMS EnvironmentSet up the JMS environment for Adaptive Decision Manager.

1. Create a new JMS server named ADM JMS Server and select the targets to deploy the JMS server.The targets should include the servers running ADM and PRPC.

2. Create a new JMS system module named ADM JMS Module and select the same targets.3. Add a connection factory to the ADM JMS Module using the specifications listed below:

• Name: ADM Request Connection Factory• JNDI Name: jms/admRequestConnectionFactory

4. Add a topic to the ADM JMS Module using the specifications listed below, create the correspondingsubdeployment and select the appropriate targets.• Name: ADM Topic• JNDI Name: jms/admRequestDestination

DeploymentDeploy the ADM and VBD applications.

1. Start the deployment process and point to the applicable EAR file (page 32).2. Select the option to install the deployment as an application.3. Select the appropriate deployment targets.4. Start the applications.

TomcatFollow these steps to configure resources and deploy applications:

1. Add libraries (page 24)2. Configure JDBC data sources (page 24)3. Deploy applications (page 25)

LibrariesThe Decision Management service layer requires copying the libraries listed below to the Tomcat's libfolder.

• Geronimo JTA bundle (geronimo-jta_1.1_spec-1.1.1)• Applicable database drivers (page 31)

JDBC Data SourcesCreate the ADM and VBD data sources. If the Interaction History database tables are in a dedicatedschema, define the data source for Interaction History in the PRPC and VBD servers.

1. Go to the conf directory and locate the context.xml configuration file.2. Matching the connection details as configured in the database preparation steps (page 18), add the

JDBC data source configuration. Make sure you add any database specific properties if required bythe database. • ADM data source (Oracle example)

<Resource name="jdbc/admDataSource" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:orcl" username="adm_user" password="adm_user" />

• VBD data source (Oracle example)

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 25

<Resource name="jdbc/vbdDataSource" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:orcl" username="prpc_user" password="prpc_user" />

• Interaction History data source (Oracle example)

<Resource name="jdbc/ihDataSource" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:orcl" username="ih_user" password="ih_user" />

3. Restart the Tomcat server to apply the changes to the context.xml configuration file.

Database specific properties (page 31) apply when using DB2. The following configuration illustrates aDB2 data source:

<Resource name="jdbc/admDataSource" auth="Container" type="javax.sql.DataSource" driverClassName="com.ibm.db2.jcc.DB2Driver" url="jdbc:db2://localhost:50000/DSM" username="adm_user" password="adm_user" connectionProperties="currentSchema=adm_user;fullyMaterializeLobData=true; fullyMaterializeInputStreams=true;progressiveStreaming=2;deferPrepares=false" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" />

The following configuration illustrates a PostgreSQL data source:

<Resource name="jdbc/admDataSource" auth="Container" type="javax.sql.DataSource" username="adm_user" password="adm_user" driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/DSM" />

DeploymentDeploy the ADM and VBD applications.

The procedure described in this topic assumes the use of Tomcat Manager to avoid the restartof the entire container. If restarting the entire container is not an issue, you can simply makethe WAR files available in the deploy directory and restart Tomcat.

1. Go to the Tomcat home page, click the Tomcat Manager link and enter the user credentials that allowyou to access the Tomcat Manager facilities.

2. Deploy the applicable WAR files (page 32).3. Use the start link to start each application.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 26

JBossFollow these steps to configure resources and deploy applications:

1. Add libraries (page 26)2. Configure JDBC data sources (page 26)3. Configure JMS resources (page 27)4. Deploy applications (page 28)

LibrariesMake the applicable database drivers (page 31) available in the JBoss server's lib folder.

JDBC Data SourcesCreate the ADM and VBD data sources. If the Interaction History database tables are in a dedicatedschema, define the data source for Interaction History in the PRPC and VBD servers.

1. Go to the deploy directory, and create the dsm-ds.xml configuration file to configure the JDBC datasources.

<?xml version="1.0" encoding="UTF-8"?> <datasources> <!-- data source configuration --> </datasources> <xml/>

2. Add the resources to configure the JDBC data sources matching the connection details as configuredin the database preparation steps (page 18). Make sure you add any database specific properties ifrequired by the database. • ADM data source

<local-tx-datasource> <jndi-name>jdbc/admDataSource</jndi-name> <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url> <driver-class>oracle.jdbc.OracleDriver</driver-class> <user-name>adm_user</user-name> <password>adm_user</password> <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name> <metadata> <type-mapping>Oracle9i</type-mapping> </metadata> <use-java-context>false</use-java-context></local-tx-datasource>

• VBD data source

<local-tx-datasource> <jndi-name>jdbc/vbdDataSource</jndi-name> <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url> <driver-class>oracle.jdbc.OracleDriver</driver-class> <user-name>prpc_user</user-name> <password>prpc_user</password> <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name> <metadata> <type-mapping>Oracle9i</type-mapping> </metadata> <use-java-context>false</use-java-context></local-tx-datasource>

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 27

• Interaction History data source

<local-tx-datasource> <jndi-name>jdbc/ihDataSource</jndi-name> <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url> <driver-class>oracle.jdbc.OracleDriver</driver-class> <user-name>ih_user</user-name> <password>ih_user</password> <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name> <metadata> <type-mapping>Oracle9i</type-mapping> </metadata> <use-java-context>false</use-java-context></local-tx-datasource>

• Restart the JBoss server to apply the changes.

Database specific properties (page 31) apply when using DB2. The following configuration illustrates aDB2 data source:

<local-tx-datasource> <jndi-name>jdbc/admDataSource</jndi-name> <connection-url>jdbc:db2://localhost:50000/dsm</connection-url> <driver-class>com.ibm.db2.jcc.DB2Driver</driver-class> <user-name>adm_user</user-name> <password>adm_user</password> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DB2ExceptionSorter</exception-sorter-class-name> <metadata> <type-mapping>DB2</type-mapping> </metadata> <use-java-context>false</use-java-context> <connection-property name="currentSchema">adm_user</connection-property> <connection-property name="deferPrepares">false</connection-property> <connection-property name="fullyMaterializeLobData">true</connection-property> <connection-property name="fullyMaterializeInputStreams">true</connection-property> <connection-property name="progressiveStreaming">2</connection-property></local-tx-datasource>

JMS ResourcesFollow these steps to set up the JMS environment for Adaptive Decision Manager.

1. Go to the deploy/messaging folder and edit the connection-factories-service.xml file.2. Add the topic connection factory as illustrated in the configuration below:

<mbean code="org.jboss.jms.server.connectionfactory.ConnectionFactory" name="jboss.messaging.connectionfactory:service=admConnectionFactory" xmbean-dd="xmdesc/ConnectionFactory-xmbean.xml"> <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends> <depends optional-attribute-name="Connector">jboss.messaging:service=Connector,transport=bisocket</depends> <depends>jboss.messaging:service=PostOffice</depends> <attribute name="JNDIBindings"> <bindings> <binding>jms/admRequestConnectionFactory</binding> <binding>java:/jms/admRequestConnectionFactory</binding>

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 28

</bindings> </attribute></mbean>

3. Edit the destinations-service.xml file.4. Add the topic destination as illustrated in the configuration below:

<mbean code="org.jboss.jms.server.destination.TopicService" name="jboss.messaging.destination:service=Topic,name=admRequestDestination" xmbean-dd="xmdesc/Topic-xmbean.xml"> <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends> <depends>jboss.messaging:service=PostOffice</depends> <attribute name="JNDIName">jms/admRequestDestination</attribute></mbean>

5. Restart JBoss.

Deployment• Make the deployable archives (page 32) available in the deploy directory.

Application Extra Steps

ADM Copy the WAR file.

VBD VBD requires exploded deployment:

• Unzip the contents of the WAR file to a folder named vbd.war.• It is also possible to use the EAR file.

• Unzip the contents of this file to a folder named vbd.ear.• In the vbd.ear folder, unzip the contents of the WAR file to a

folder named vbd.war.• Delete the WAR file.

• Restart JBoss

VBD InstallationHaving addressed the configuration and deployment at the database and application server levels, thefollowing steps may be necessary to complete the VBD installation in a production environment:

• GridGain nodes (page 28)• Multiple VBD installations (page 30)

GridGain NodesSetting up one or more GridGain nodes is required in a production environment (page 15). However, it isnot necessary in a test/development environment since, by default, the GridGain node in the applicationserver can act as work processing node.

The steps below describe how to set up one or more GridGain nodes in the cloud.

• GridGain node installation (page 28)• Multiple GridGain nodes (page 29)• Load distribution GridGain node configuration (page 30)• Grain size configuration (page 30)

GridGain Node Installation1. Locate the vbd-gg-node folder in Additional_Products/DSM/Products/Visual Business Director.2. Copy the contents of this folder to a location in the server's file system.

As long as it is a readable/writable location, this can be the same server as the application server.• Make sure the Java home environment is set.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 29

• By default, the GRIDGAIN_HOME environment points to the current working directory. If the nodeis started from the installation base, this is sufficient.• If you are running the GridGain node in a Unix environment, set the path in grid-setenv shell

script.• Otherwise, change the path in the GridGain node start script.

3. Make the applicable database driver (page 31) available in the lib folder.4. Configure the the VBD data source with the appropriate JDBC connection settings (page 31).

• Open the config/connection.properties file.• Configure the JDBC connection properties by defining the database dialect, driver, connection

URL and user details.5. Start the node by running the start-grid-node batch or shell file.

Multiple GridGain NodesMultiple GridGain nodes can be set up in the same system, or running on separate systems.

• Single system (page 29)• Multiple systems (page 29)

Single SystemThis set up is advised when you have a multiprocessor system or a multicore processor. Besidesprocessing power, enough memory should be available for every GridGain node to operate with. This setup consists of installing multiple times the GridGain node, resulting in multiple copies of the binaries in thesame system. The GridGain nodes are started using the batch file of every installation.

Using this set up, the nodes are more independent because the specific data is simply unavailable whenone grid node is not running. The data is in multiple directories and backup scripts need to take this intoaccount. Additionally, new updates need to take into account the update of several installations.

Multiple SystemsSo that the GridGain nodes can communicate, you need to configure the jgroups.xml file of each node.The jgroups.xml file to be configured is located in the config folder of the GridGain node installation (page28). The code snippet below shows the default configuration.

<UDP bind_addr="127.0.0.1" mcast_addr="228.1.2.5" mcast_port="48300" ip_ttl="2" ip_mcast="true" mcast_send_buf_size="640000" mcast_recv_buf_size="25000000" ucast_send_buf_size="640000" ucast_recv_buf_size="20000000" loopback="true"/>

You need to remove the bind_addr attribute and change the 228.1.2.5 default value in mcast_addr toan arbitrary virtual IP address of class D (for example, 228.4.4.4). Valid D class IP addresses are in therange 224.0.0.0/239.255.255.25.

<UDP mcast_addr="228.4.4.4" mcast_port="48300" ip_ttl="2" ip_mcast="true" mcast_send_buf_size="640000" mcast_recv_buf_size="25000000" ucast_send_buf_size="640000" ucast_recv_buf_size="20000000" loopback="true"/>

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 30

You should verify the number of nodes listed in the node's startup console and make sure it is correct.The number of nodes is the sum of GridGain nodes in the cloud plus one (the application server'sGridGain node).

Load Distribution GridGain Node ConfigurationIn processing intensive applications, it is recommended to configure the application server's GridGainnode to act as the load manager. This allows for distributing the tasks resulting from the client's requeststo the different nodes in the cloud.

1. Locate the web.xml file in the WEB-INF folder of the VBD deployable archive.2. Change the value of the GRID_GAIN_NODE_TYPE context parameter to server (by default, it is set

to client).

<context-param> <description>GridGain node type (SERVER or CLIENT)</description> <param-name>GRID_GAIN_NODE_TYPE</param-name> <param-value>server</param-value></context-param>

3. Deploy VBD.

The value of context parameter is case sensitive.

VBD Grain Size ConfigurationThe VBD grain size configuration determines the amount of data sent to the GridGain nodes. By default,it is one day (86400000 milliseconds). The customization of the grain size is driven by inserting thevbd.grain.size parameter pzKey in the PR_DATA_VBD_CONFIG table and setting its pzValue to theapplicable amount of milliseconds.

Typically, this setting can be calculated as 1000*60*60*24*<number_of_days_in_data>/<number_cpu_cores>.

Multiple VBD InstallationsThe GridGain nodes use multicast addressing. If there are multiple installations of VBD in the samenetwork, the various GridGain nodes conflict with each other, resulting in wrong results and nondeterministic behavior. By default, the VBD installation is limited to one machine only, therefore notcausing any conflict. In order to set up a VBD installation that runs distributed grid nodes on multiplemachines, you need to perform some additional configuration.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 31

As shown in the above diagram, the multicast address needs to be set for the GridGain node runningin the application server, as well as for each node in the cloud. In both cases, the multicast address isconfigured as part of the UDP element in the jgroups.xml file that is located in the WEB-INF/classes/config folder of the VBD deployable archive. The default configuration is as follows:

<UDP bind_addr="127.0.0.1" mcast_addr="228.1.2.5" mcast_port="48300" ip_ttl="2" ip_mcast="true" mcast_send_buf_size="640000" mcast_recv_buf_size="25000000" ucast_send_buf_size="640000" ucast_recv_buf_size="20000000" loopback="true"/>

In order to isolate a VBD installation, the default value for the multicast address needs to be modifiedby removing the bind_addr attribute and changing the 228.1.2.5 default value in mcast_addr to anarbitrary virtual IP address of class D (for example, 228.4.4.4). Valid D class IP addresses are in therange 224.0.0.0/239.255.255.25.

<UDP mcast_addr="228.4.4.4" mcast_port="48300" ip_ttl="2" ip_mcast="true" mcast_send_buf_size="640000" mcast_recv_buf_size="25000000" ucast_send_buf_size="640000" ucast_recv_buf_size="20000000" loopback="true"/>

You should also verify the number of nodes listed in any of the GridGain nodes and make sure this iscorrect. The number of nodes is the sum of GridGain nodes in the cloud plus one, which corresponds tothe application server's GridGain node. You can verify this in the console that is started with the start-grid-node batch or shell script file.

ReferenceThe information provided in these reference topics captures the specifications for configuring databaseresources, deploying applications and setting the logging level for troubleshooting purposes.

Related Topics

• Database Driver Libraries (page 31)• Database Driver Settings (page 31)• Deployable Archives (page 32)• Logging Information (page 32)

Database Driver LibrariesDatabase Settings

Oracle ojdbc6.jar or ojdbc7.jarDB2 db2jcc.jar and db2jcc_license_cu.jar

PostgreSQL Only in combination with Tomcat. postgresql-9.2-<build>.jdbc4.jar where <build>corresponds to the build number of the current/recommended JDBC driver.

Database Driver SettingsIn the table below, <server_name> stands for the name of the server hosting the database that supportsthe Decision Management service layer and <database> stands for the database name. The URL uses

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 32

default port numbers. Change the port number to reflect the appropriate connection settings that allowyou to access the database.

Database Settings

Oracle • Driver Class Name: oracle.jdbc.OracleDriverWhen specifying the JDBC Provider in WebSphere, useoracle.jdbc.pool.OracleConnectionPoolDataSource as implementationclass name.

• URL: jdbc:oracle:thin:@<server_name>:1521:<database>

DB2 • Driver Class Name: com.ibm.db2.jcc.DB2DriverWhen specifying the JDBC Provider in WebSphere, usecom.ibm.db2.jcc.DB2ConnectionPoolDataSource as implementation classname.

• URL: jdbc:db2://<server_name>:50000:<database>

PostgreSQL Only in combination with Tomcat

• Driver Class Name: org.postgresql.Driver• URL: jdbc:postgresql://<server_name>:5432/<database>

When defining the connection URL, database specific properties apply if the database is DB2. Theproperties listed below are required to configure the data source connection to ADM and VBD.

• When using the Type 4 driver, make sure you include the appropriate properties to:• Disable LOB data streaming by setting the fullyMaterializeLobData boolean property to true.• Fully materialize streams before sending from client to data source by setting the

fullyMaterializeInputStreams boolean property to true.• Disable progressive streaming by setting the progressiveStreaming integer property to 2.• Disable deferring prepare operations until statement execution by setting the deferPrepares

boolean property to false.• (WebSphere only) Set the following properties, where property value is of java.lang.Integer type:

• Change the resultSetHoldability property value to 1.• Add a custom property named webSphereDefaultIsolationLevel and set the JDBC isolation level

to 2.

Deployable ArchivesEnterprise application archives are provided for WebSphere/WebLogic and web archives for Tomcat/JBoss. The table below provides the location of the Decision Management deployable archives. Inthis table, the <application_server> placeholder stands for jboss, tomcat, or websphere-weblogic,and <database> as a placeholder value for oracle (Oracle), db2 (IBM DB2 LUW), zos (IBM z/OS) orpostgresql (PostgreSQL).

Application Location

Adaptive DecisionManager

Additional_Products/DSM/Products/Adaptive Decision Manager/archives/<application_server>/<database>

Visual Business Director Additional_Products/DSM/Products/Visual Business Director/archives

Logging Information• Log levels (page 32)• SQL statement logging (page 33)

Log LevelsYou can set the log level by configuring the logging parameters in the application server’s start script. Theexample below illustrate how to run Decision Management with the log level set to debug for all classes inthe application server's start script.

-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 33

-Dorg.apache.commons.logging.simplelog.log.net=warn -Dorg.apache.commons.logging.simplelog.log.org=warn -Dorg.apache.commons.logging.simplelog.log.com=warn -Dorg.apache.commons.logging.simplelog.log.com.adm=debug -Dorg.apache.commons.logging.simplelog.log.com.pega.decision.vbd=debug

Logging should be configured in the server running the applicable Decision Managementservice.

For more information on log levels, refer to the Apache Commons Logging documentation1.

SQL Statement LoggingFollow the steps described below to enable SQL statement logging for Adaptive Decision Manager.

1. Edit the persistence.xml file in the META-INF folder of the ADM deployable archive.• WebSphere & WebLogic: adm.ear/adm.war/WEB-INF/lib/adm-server.jar• Tomcat & JBoss: adm.war/WEB-INF/lib/adm-server.jar

2. Go to the property that controls SQL statement. By default, it is set to false.

<property name="hibernate.show_sql" value="false" />

3. Change the level to true.

<property name="hibernate.show_sql" value="true" />

4. Redeploy the application.

Next StepsAfter completing the service layer installation process and performing the necessary configuration steps(page 34), you can add Decision Management functionality to your PRPC application. See also:

Reference Description

Getting Started with DecisionManagement

Contains the information about the architecture, implementation andtechnical concepts that underpin Decision Management, includingtutorials that cover typical applications of Decision Managementfunctionality in Process Commander.

Pega Discovery Network2 Contains the latest documentation, announcements and knowledgearticles.

Notes1. http://commons.apache.org/logging/guide.html#Message%20Priorities/Levels

2. http://pdn.pega.com/

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 34

Configuration

You need to perform some configuration steps for your application to be able to use DecisionManagement functionality.

• Enable your application to use Decision Management functionality.• If you are using adaptive analytics, configure the connection between PRPC and Adaptive Decision

Manager. • If you are using Visual Business Director, configure the connection between PRPC and Visual

Business Director.

After the necessary configuration steps, the application has access to the Decision Managementfunctionality:

• Decision Management landing pages• Decision Management decision rules• In flows

• Run interaction shape• Predictive model and scorecard rule type selection in decision shapes

• Decision Management methods and functions

Other configuration steps may apply if:

• Your installation has different system nodes connecting to the same database.• You need to extend Interaction History.• You need to override the system behavior that determines the transition of work items corresponding

to simulations.• Your application runs simulations across system nodes, also known as large scale simulations.

Related Topics

• Decision Management Enabled Applications (page 34)• Services (page 36)• Proposition Cache Synchronization (page 39)• Interaction History (page 39)• Dynamic System Settings (page 42)• ProcessBatchJob Agent (page 42)• Topology (page 43)

Decision Management Enabled ApplicationsThe steps described in this topic assume an initial application built on PegaDM. The easiest way to createthe necessary rules with a standard configuration is through the New Application action in the applicationmenu.

The steps listed below provide the additional guidelines required for a Decision Management enabledapplication.

• Configure application (page 35)• Configure ruleset dependency (page 35)• Check organizational structure (page 35)• Configure work pool (page 35)• Check access group and operators (page 35)• Create product (page 36)

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 35

Configure ApplicationThe dependency at the application level defines the Decision Management runtime capability of anapplication.

1. Go to the application definition.2. Select PegaDM as built on application.3. Select the 07.10 version.

If building on PegaDM is not possible, add Pega-DecisionArchitect, Pega-DecisionEngineand PmmlSupport to the application's rulesets.

Ruleset DependencyThe dependency at the ruleset level defines the Decision Management design capability of anapplication. The ruleset that needs to contain this dependency is the ruleset where you will save DecisionManagement rules.

1. Go to the ruleset rule.2. Add Pega-DecisionArchitect to the required rulesets.3. Set the Pega-DecisionArchitect ruleset version to the highest 07-10 version available in the system.

Organizational StructureBy default, the organizational structure is required in Decision Management enabled applications.The organization record provides the dedicated class that, unless specified differently in thepxDecisioningClass field value, becomes the default class containing the application's propositionhierarchy and provides application dimension information. Make sure the application's organizationhierarchy is fully defined (organization, division and unit) and available to all operators using or workingwith your Decision Management enabled application.

If working with multiple applications that need to access the same propositions, make surethe same top level class is configured in the Proposition Management landing page and thatapplications have access to the same ruleset containing the classes supporting the propositionhierarchy.

Work PoolThe work class is typically necessary for work items. From the Decision Management perspective, it isnecessary for simulations.

1. Go to the concrete work class.2. In the Class Inheritance section, make sure Parent class (Directed) is set to the appropriate work

class (Work-, Work-Cover, etc.).

Access Group & OperatorsThe final stage consists of checking access groups and operators.

1. If you created the application using default options, the <Application>:Administrators access groupdoes not require any changes. For all other access groups, you need to make sure the required rolesare configured.• The minimum required roles in the access group (PegaRULES:SysAdm4 or

<Application>:Administrator, PegaRULES:SysArch4, PegaRULES:ProArch4,PegaRULES:WorkMgr4 or PegaRULES:User4) and the necessary portal layouts (for example,Developer, WorkManager and Manager). PegaRULES:SysAdm4 or <Application>:Administrator

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 36

should be present for users changing the top level class in the Proposition Hierarchy landingpage.

• The local customization points to the application's ruleset and ruleset version.2. Go the operator(s) of the access group and check the following:

• The Allow Rule Checkout setting is enabled in the Advanced tab.• The operator ID record has the appropriate associated ruleset.

ProductCreate a product rule and configure it so that you can migrate your application to another node. Thefollowing steps are limited to the minimum required steps to define a product rule that includes theresources for a typical application.

1. In the Applications to Include section, add your application(s).2. In the RuleSets to Include section, add the necessary ruleset(s).3. So that the product archive includes the propositions, include the classes that support the proposition

hierarchy in the Class Instances to Include section (by default, <OrgClass>-<ApplicationName>-SR)and make sure you enable the Include Descendants option.

4. To include the KPIs:• View the instances of Data-Decision-Outcome-KPIDefinition.• Associate each relevant instance with your application's ruleset.• Include Data-Decision-Outcome-KPIDefinition in the Class Instances to Include section.

5. In the Individual Instances to Include section, use the SmartPrompt and the Query button to insertevery necessary instance:• Access group (Data-Admin-Operator-AccessGroup)• Operator ID (Data-Admin-Operator-ID)• Work pool (Data-Admin-DB-ClassGroup)• Organization (Data-Admin-Organization)• Division (Data-Admin-OrgDivision)• Unit (Data-Admin-OrgUnit)• Work group (Data-Admin-WorkGroup)• Workbasket (Data-Admin-WorkBasket)

ServicesThe Services configuration allows you to define the connection between PRPC and the servers runningAdaptive Decision Manager and Visual Business Director. These settings are necessary so that you canperform the actions that require system interaction with the runtime (configuring adaptive model rules ifthe fail safe option is disabled, performing adaptive model management activities, using the VBD Plannerand accessing adaptive model reports). However, with the exception adaptive model rules if the fail safeoption is disabled, it is not required when defining Decision Management rules.

Typically, the configuration in this landing page is part of the installation process that allows applicationsto operate with Decision Management functionality. If you do not have ADM or VBD, leave the host andport fields empty. Follow the steps described below to define the connection to the Decision Managementservices.

1. Login as the PRPC system architect user defined for your Decision Management enabled application.2. In the Designer Studio menu, go to the Decisioning > Infrastructure > Services and define connection

and operational settings:• Adaptive Decision Manager (page 37)• Visual Business Director (page 38)

3. After defining or changing the necessary settings, the following buttons allow you to save yourchanges:• Save: save the settings.• Save & Ping: save the settings and test the connection to the Decision Management services.

The version of the client library is displayed at the top and the corresponding server library isdisplayed in the Status message for each service. The version follows a <Major Version>.<MinorVersion>.<Revision>.<Build Number> pattern.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 37

Saving settings activates changes in the Decision Management service layer and in PRPC. If you havenot configured the service end point(s), the propagation of data to the corresponding service(s) is turnedoff.

Adaptive Decision ManagerIn the Adaptive Decision Manager section:

1. Check if the UpdateAdaptiveModels agent in the Pega-DecisionEngine ruleset is running by going tothe Agents section (page 38). If it is not, start it.

2. Define the name of the server in the Host field and port number in the Port field.

3. By default, the Fail Safe option is disabled. Enabling it activates ADM's fail safe mechanism(preventing loss of responses in case of ADM unavailability). If you enable this option, make sure thedatabase data instance necessary for ADM to operate in this mode exists and that it is configuredappropriately.• Create a new database data instance named PegaADM.• Configure it as described below.

Connection Type Configuration

Use JDBCConnection Pool

Recommended. In the server running PRPC, make sure youhave the jdbc/admDataSource. If using a single server, the datasource was configured in the process of installing ADM. Typically(production environments), ADM and PRPC are running ondifferent servers so you need to configure this data source in theserver running PRPC.

Use JDBC URL Configure the JDBC URL to point to the database containing theADM schema and provide valid credentials to access the ADMschema.

4. Configure the operation settings that affect capturing historical data for reporting purposes. In thesnapshot settings for capturing model state and predictor binning, the first option (Unlimited) isrequired if leveraging model snapshots for time-based reporting (for example, trend detection).• The Data Mart Agent field shows the status of the ADMSnapshot agent (disabled, or enabled).

Click the link to go open the Pega-DecisionEngine's Agent Schedule data instance where, ifapplicable, you can change the time interval for triggering the agent (by default, it is 120 seconds)and enable or disable the agent. To avoid duplicate snapshots, make sure there is only one nodeenabled to run the ADMSnapshot agent when working in a multinode PRPC environment.

• The date and time of the last snapshot is displayed. Click New Snapshot if you want the reports tobe based on a newer view of the models and predictors in the ADM system.

• The Model Snapshots options define how the state of the models at a particular point in time iscaptured and saved. Select Unlimited to never discard snapshots or select Most recent to keeponly the most recent state.

• The Predictor Binning Snapshots options define how the state of the binning of predictors at aparticular point in time is captured and saved. Select Unlimited to never discard snapshots, selectMost recent to keep only the most recent state or select None to disable capturing the state of thepredictor binning.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 38

Predictor binning snapshots can lead to generating large volumes of data.

Additional settings affect ADM. These settings are in the Agents section of the Decisioning Serviceslanding page:

1. PRPC keeps a local cache of scoring models. Scoring model updates are regularly retrieved fromthe adaptive data store (page 44). The model update frequency is implemented by periodicallytriggering the UpdateAdaptiveModels agent (Pega-DecisionEngine ruleset, PegaDM:Administratorsaccess group). The agent runs the pxUpdateModels activity to retrieve model updates. By default,the agent is scheduled to run every 30 seconds. The agent only retrieves scoring models required forexecuting the strategy and the models that are different from those in the local cache.• The ADM Update Agent field shows the status of the UpdateAdaptiveModels agent. If the agent is

disabled, the Start Agent button allows you to start the agent.• In the Adaptive Model Update Interval field, you can change the time interval.

2. Check the Entitled to Use Adaptive Decision Manager if your software license agreement includesADM's capability to use predictive data (that is, the ability to define predictors in adaptive modelrules).

Visual Business DirectorIn the Visual Business Director section, define the name of the server in the Host field and the portnumber in the Port field.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 39

Proposition Cache SynchronizationProposition cache works on a single PRPC node. Consistent handling of the proposition cache in amultinode PRPC environment requires extra configuration.

• About proposition cache (page 39)• Configuring proposition cache synchronization (page 39)

About Proposition CacheWhen PRPC is running on multiple system nodes connected to the same database, DecisionManagement uses the system pulse to ensure the consistency of propositions across all nodes.The proposition cache is invalidated when a proposition is saved (triggered by adding or changing aproposition) or deleted. Adding records that result in the proposition cache to become invalid is donethrough two declare trigger rules that run the pyRefreshPropositions activity (pyPropositionSaved andpyPropositionRemoved in Data-pxStrategyResult).

Configuring Proposition Cache SynchronizationIf your installation consists of different PRPC nodes connecting to the same database, you needto configure your PRPC installation to ensure the consistency of propositions across all nodes.Administrators can follow the steps described below to enable PRPC to work with the proposition cachesynchronization mechanism.

1. In the Rules Explorer, go to SysAdmin > Agent Schedule.2. Open the Pega-RULES: Core Engine Processing Agent data instances for every active node and add

the PegaDM:Administrators access group.3. Restart PRPC or use SMA to restart the agents.

Interaction HistoryInteraction History's (page 7) extension model is database driven. Case sensitive name matching is usedbetween properties in the database table, SR properties and Interaction History properties. Typically, thesame Interaction History is used by multiple applications using a shared implementation. You can extendInteraction History with new properties. Numeric properties in the Interaction History's fact table can beused as KPIs (also referred to as measurements), in which case it is recommended that you use valuesthat can be summed up so that the property is really usable in VBD as a KPI.

• Interaction History configuration (page 39)• Extending Interaction History (page 40)• Extra steps for KPIs (page 41)• Excluding properties from Interaction History (page 42)

Interaction History Configuration• Database schema (page 39)• Properties (page 40)

Database SchemaBy default, Interaction History tables are included in the PegaDATA schema. It is possible to create adedicated schema for these tables. In this case, after setting up the database for Interaction History andcreating the data source that allows VBD and PRPC to be able to operate with Interaction History data,follow the steps below to configure the database table data instances to use a database schema otherthan PegaDATA.

1. Create a database data instance pointing to the schema containing the Interaction History tables.2. Use a JDBC connection pool to connect to the jdbc/ihDataSource.3. In the Records Explorer, go to SysAdmin > Database Table.4. To limit the results to the relevant database tables (page 8), enter Data-Decision-IH in the Class

Name Contains filter.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 40

5. Change the database setting of the database table data instances so that they use the connectionconfigured in the first step.

Testing the connectivity to the database throws errors about the table containing internalproperties. These errors can be safely ignored.

If using a different database vendor than the one supporting the PRPC database, make surethe correct JDBC drivers are available. For more details, refer to the configuration guidelines inPega 7 Help, topic About Database data instances.

PropertiesInteraction History is configured by the pyInteractionHistoryConfiguration data transform defined on Data-Decision-IH-Configuration which sets properties in this class. In your application ruleset, you can overridethe data transform to customize Interaction History. The table below provides an overview the propertiesthat you can set through the pyInteractionHistoryConfiguration data transform.

Property Type Description

pyFactProperties Value List (Text) List of fact properties.pyActionProperties Value List (Text) List of action dimension

properties.pyApplicationProperties Value List (Text) List of application dimension

properties.pyChannelProperties Value List (Text) List of channel dimension

properties.pyContextProperties Value List (Text) List of context dimension

properties.pyCustomerProperties Value List (Text) List of customer dimension

properties.pyLocationProperties Value List (Text) List of location dimension

properties.pyOperatorProperties Value List (Text) List of operator dimension

properties.pyOutcomeProperties Value List (Text) List of outcome dimension

properties.pyMeasurements Value List (Text) The subset of pyFactProperties

that can be used as KPIs.

Extending Interaction HistoryThe process of extending Interaction History consists of:

1. Adding columns to the appropriate database table.2. Adding a property with the same name to the fact or dimension class in the application ruleset.3. Adding a property with the same name to the application's Strategy Result class.4. Overriding the pyInteractionHistoryConfiguration data transform in the applicable application rulesets.

When overriding the data transform, the newly added properties can be added to the appropriatevalue list properties.

The first step in extending Interaction History consists of deciding which table should be used. Therecommendation is to add it to the fact table if the column is expected to have a large number of uniquevalues. The fact record is also the table to add columns that represent properties to be used as KPIs. Inany other case, you can consider adding it to one of the dimension tables. For example, add two columnsso that you can extend Interaction History with the ProductID and HandleTime properties:

• ProductID: ID of the offered product.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 41

• Since the list of product IDs consists of a limited number of values and is a part of a proposition,add the column to the action dimension table.

• It is a text value, the column should be added as such. For example, VARCHAR2(255).• HandleTime: duration of the conversation.

• A large number of distinct values is expected and is going to be used as KPI. Add the column tothe fact table.

• It is an integer value, the column should be added as such. For example, NUMBER(18,0).

The next step is determining the applicability of the new extensions. Some properties are applicationspecific, some shared in the same implementation and there may be security or privacy considerationsthat make certain properties only available in certain applications. In our example, the new ProductIDcolumn should be exposed in both applications, but HandleTime is applicable only to the call centerapplication.

• To extend Interaction History with the ProductID property for all applications in the action dimensiontable:• Add a new property ProductID of type text to the Data-Decision-IH-Dimension-Action data model

in the application rulesets of the call center application, as well as the outbound marketingapplication.

• Add the ProductID property (same name and data type) to the Strategy Result class of bothapplications.

• Override the pyInteractionHistoryConfiguration data transform in Data-Decision-IH-Configurationfor both application rulesets.• Enable the call superclass data transform setting to make sure the default configuration is

included.• Add a new row to set pyActionProperties(<APPEND>) to ProductID.

• To extend Interaction History with the HandleTime property for the call center application in the actiondimension table:• Add a new property HandleTime of type integer to the Data-Decision-IH-Fact data model in the

application ruleset of the call center application.• Add the HandleTime property (same name and data type) to the Strategy Result class of the call

center application.• Override the pyInteractionHistoryConfiguration data transform in Data-Decision-IH-Configuration

for the call center ruleset.• Enable the call superclass data transform setting to make sure the default configuration is

included.• Add a new row to set pyFactProperties(<APPEND>) to HandleTime for the call center

application.

• Add a new row to set pyMeasurements(<APPEND>) to HandleTime for the call centerapplication so that you can use it as a KPI.

If the new properties are not recognized, save the corresponding database table rules, log out,and log in again.

Extra Steps for KPIsThe Interaction History extension model allows you to make numeric properties ready to be used as KPIs,but the following extra steps apply so that you can use them as KPIs:

• Follow the KPI definition process through the Key Performance Indicators landing page.• If you want the new KPI to be used in VBD's view of Interaction History data (actuals), run the

pzUpdateActualsConfiguration activity under Data-Decision-VBD-Configuration to update the VBDserver.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 42

Excluding PropertiesTo prevent issues with loading or saving instances the class, if you add a property to the fact ordimension classes but this property is not to be considered part of Interaction History, configure theproperty's persistence settings so that it does not save property data.

Dynamic System SettingsIf the default system behavior that determines the transition of work items corresponding to simulations toResolved-Failed status needs to be changed, add the corresponding system settings and set the value tothe desired time interval in minutes.

• By default, work items in Open-Running status without any progress for five minutes areset to Resolved-Failed. Default system behavior can be modified by adding the dsm/batch/autoRecoveryTimeForOpenRunningStatus dynamic system setting owned by Pega-DecisionEngineand configuring it with the desired value (for example, 10).

• By default, work items in Pending-Scheduled status for 30 minutes are set toResolved-Failed. Default system behavior can be modified by adding the dsm/batch/autoRecoveryTimeForPendingStatus dynamic system setting owned by Pega-DecisionEngine andconfiguring it with the desired value (for example, 60).

ProcessBatchJob AgentLarge scale simulations are enabled by performing simulations across system nodes. This functionalityrequires extra configuration.

• About large scale simulations (page 42)• Configuring large scale simulations (page 42)

About Large SimulationsThe assignment, queuing and management of large scale simulations is governed by theProcessBatchJob agent configuration. The agent is scheduled to run with a given regularity (in seconds)to trigger checking assignments in the DSMBatchJobs@pega.com workbasket. If there are assignments,they will be queued to create threads based on the thread configuration for each node. The status of thework item is updated as it progresses in this process and you can monitor the assignment by viewing theinstances in the workbasket.

Configuring Large Scale SimulationsSo that you can enable large scale simulations, configure the ProcessBatchJob agent in your ruleset.

1. If the Agents rule instance is not present in your application's ruleset, create one.2. In the Schedule tab, add the ProcessBatchJob agent with the following settings:

• Agent Name: ProcessBatchJob• Pattern: Periodic• Interval: for example, 5• Enabled: check this option• Class: Data-Decision-StrategyExecution-BatchAgent• Activity Name: pzIntializeProcessEngine

3. In the Security tab, enable the Bypass activity authentication option and configure the applicationspecific access group.

4. Use SMA to make sure the agent is running.5. Go to the Topology (page 43) simulation settings and configure the number of threads that can run

in each node.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 43

TopologyUse the Topology settings to define the participation and load of PRPC system nodes in simulations. Inthe grid displaying the system nodes, use the Agent Status and Threads columns to configure the systemnode's participation in simulations. Click Save to submit your changes.

The grid showing the system nodes displays the details listed below.

• Host Name: displays the name of the system node.• Description: displays the short description as defined in the system node instance. Changing a

system node's short description is necessary when multiple system nodes run on the same server.• Agent Status: the status (Disabled or Enabled) of the node's participation in the pool used to distribute

a simulation. If the ProcessBatchJob agent is not running in the system node, this filed displays AgentUnavailable.

• Threads: select the number of threads that can run in the node. The ProcessBatchJob agent reservesone thread for creating and waiting for requests; the number of threads should be the number ofthreads for simulation work purposes, plus one (the standard thread that is reserved by the agent).

• Updated and Updated By: the time stamp and the user name corresponding to the last change.• Node ID: the PRPC node ID.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 44

Glossary

Adaptive Data StoreThe database scoring adaptive statistics (page 44) and adaptive models (page 44).

Adaptive ModelAdaptive models are scoring models (page 44) created through strategy execution when the strategycontains adaptive model components. These models output predictions (page 44) calculated andadapted in real time as interaction results are captured. Models in the ADM system are configuredthrough adaptive model rules that define the settings that influence the behavior of the adaptive models inthe ADM system. When adding adaptive model components to a strategy, you configure the propositions(page 44) the adaptive model is going to model and the interpretation of the outputs. Adaptive modelsbelong to the self-learning aspect of Decision Management. They are typically used in the absence ofhistorical records.

Adaptive StatisticsThe persistent information resulting from running a strategy (page 45) containing adaptive models(page 44).

DecisionThe result of running a strategy in an interaction. Several decisions can be involved in a single interaction(page 44).

DimensionsDimensions provide the context for the facts and results associated with an interaction (page 44).Dimensions are defined in Interaction History.

InteractionSome contact with the customer in real time or offline.

MeasurementsMeasurements are the primary storage of numeric information associated with interactions (page 44).They can be used for storing Key Performance Indicators (KPIs). There are two types of measurements:strategy driven and customer data driven.

PredictionThe behavior to be predicted. The behavior is specific to a form of outcome at a given point in time.

PropositionA tangible product offer (a handset or a subscription) or less tangible (benefits, compensations orservices).

Scoring ModelScoring models use behavior defined in terms of two opposite types (positive and negative), either asymbol indicating which type of behavior or the probability of being one of the types.

Installation Guide

© 2014 by Pegasystems Inc. All rights reserved 45

StrategyThe reasoning built up by a set of components that define the business strategy. A strategy providesthe decision (page 44) support to manage the interaction (page 44) in the context of the decisionhierarchy. Each component has a well defined functionality.

Recommended