A strategy is defined by the relationships of the components that are used in the interaction that delivers the decision. The Strategy tab provides the facilities to design the logic delivered by the strategy.
Toolbar and Context Menu
The strategy toolbar displays buttons that correspond to the same functionality as provided through the editing of flows with the Modeler. The Auto-Run on/off button allows you to turn on and off the strategy's auto-run mode.
You can access the context menu by right clicking the working area without selecting any component. The context menu allows you to add strategy components, select all components, disable external inputs, annotate your strategy in the same way as you would do in a flow rule and use the zoom options.
If you have copied/cut shapes from the currently selected strategy or another strategy, you can use the Paste option.
Right-click a component to access its context menu, which allows you to:
- Open the component's Properties dialog
- Use the Open <RuleType> action to open the referenced rule (adaptive model, decision tree, decision table, map value, predictive model, scorecard, strategy, decision parameters, segment, geofence or contact policy)
- Use the Delete option to remove the component
- Use the Copy, Cut and Paste actions in the same strategy or across strategies.The paste action results in clearing the source components, but it retains expressions contained in the original component's definition.
Components
A strategy is defined by the relationships of the components that are used in the interaction that delivers the decision.
Open the Properties dialog of a component (by double-clicking the component, or by right-clicking and selecting the Properties option) to edit it. The Properties dialog consists of elements common to all components and tabs that are specific to the type of component.
- General settings
- Properties mapping
- Component categories
- Component relationships
General Settings
Every component is assigned a default generated name when added to the strategy.
Properties Mapping
Some components allow you to map the properties brought to the strategy by the component to properties available to the strategy. This is done through one of these tabs:
- Properties (group by and financial calculation)
- Output Mapping (adaptive model and predictive model)
- Score Mapping (scorecard)
- Properties Mapping (data join, decision parameters and data import)
- Interaction History (interaction history and proposition data).
Pages & Alternative Pages
You can supply data to components that reference an external rule instance (predictive model, scorecard, adaptive model, decision tree, decision table, map value, sub strategy, and decision parameters). This is particularly useful if you want to drive the component results using customer data. This capability requires a specific set up for the referenced instances and the strategy referencing them:
- In the referenced rule instance, the data is included in the rule instance's pages and classes.
- Pages from the reference rule instance's pages and classes are listed under Available pages & classes in the component that references the rule instance. If the Supply with data check box is enabled, data passed by the page is used to evaluate and execute the component.
- It is also possible to provide an alternative page. If the alternative page data is not available, it falls back to the originally set page.
Component Categories
Component Relationships
Component Connections
Connections between components are established through selecting a component and dragging the arrow to another component.
Segment Filtering
Segment filtering can be applied if segments are brought to the strategy through segmentation or segment filtering components.
- Double click the connector.
- In the Connector Properties dialog, select an existing segment. You can also provide a value that is not available to the strategy when designing it, but present in its execution chain (for example, a segment in a strategy included through the sub strategy component).
- Click OK to apply the specified segment filtering.
Expressions
Another type of connection represented by dotted blue arrows is displayed when a component is used in another through an expression.
Working with strategies means working with the strategy result data classes and the Applies To class of the strategy. These classes can be combined in expressions or by introducing segmentation components that work on the strategy result data class and not the Applies To class.
- Understanding the Expression Context - Using the dot notation in the SmartPrompt accesses the context of an expression, which is always the strategy result class (for example, .pyPropensity). To use properties of the Applies To context, declare the primary page (for example, Primary.Price). If the properties used in the expressions are page properties, you can omit the Primary keyword (for example, instead of Primary.SelectedPropositon.pyName, use SelectedPropositon.pyName).
When using page properties without declaring the Primary keyword, there is no disambiguation mechanism to differentiate between referencing the embedded page in the Applies To class (for example, a Customer.Name embedded page) and the output of a component (for example, Customer.Name, where Name is the output of a component named Customer).
- Using Component Properties in Expressions - To use properties of one strategy component in another, declare the name of the component (for example, Challenger.pxSegment). If the component used in the expression outputs a list (multiple results), only the first element in the result list is considered when computing the expression.
Two strategy properties allow you to define expressions that are evaluated in the context of the decision path:
- pyComponent accesses the current component in the decision path
- pyPreviousComponent accesses the input component selected by the current component
For example, when you have two source components, you can define expressions that apply if a particular component is selected in the decision path: @if(.pyPreviousComponent=="HomeLoans, ''Web", "CallCenter").
About Strategy rules