Sie sind auf Seite 1von 14

Siebel 7.

8 Delta
Technical Training Module 01:
Pricing Management
Architecture
Customer Order Management
Pricing Management

Module Objectives

After completing this module you should be able to


ƒ Understand the business requirements behind why Siebel
created the PSP Engine
ƒ Understand the capabilities of the PSP Engine
ƒ Examine its components
ƒ Describe PSP Engine Row Set Transformation Toolkit
methods

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

1
Business Requirements for PSP

ƒ The Product Selection and Pricing Engine (PSP) is a general solution to the
following requirements:
ƒ Highly configurable procedural logic
ƒ Transform a set of input rows into a set of output rows by executing matrix look-ups,
conditional logic and external function calls
ƒ OOTB procedure(s) that can extended
ƒ High performance
ƒ Underpins end-user response times
ƒ Must scale to 300+ users per application server
ƒ Flexible data access
ƒ Provide out-of-the-box rules matrices and admin UI
ƒ Allowance for extending the OOTB matrices
ƒ Determine result based upon any information from the current ordering
context
ƒ E.g. account type, credit score, location

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Business Requirements for PSP continued

ƒ The PSP can solve a wide range of similar problems:


ƒ C/OM: Pricing, Product Eligibility, Attribute Eligibility, Product Recommendation,
Promotion Recommendation
ƒ For Eligibility:
ƒ Determine whether each of a set of input products or attribute values can be sold to the
customer
ƒ Set an “Eligibility Status” flag and, if ineligible, a reason why

ƒ For Product Recommendations:


ƒ Generate a list of priced, eligible upsell and cross-sell product recommendations for the
currently selected quote or order line item
ƒ For Pricing:
ƒ Set one or more price fields on each of a set of input quote or order line items
ƒ e.g. List Price, Start Price, Net Price, Extended Price
ƒ Create a waterfall of records describing how each price was calculated

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

2
Architecture of Pricing Management 7.8

Pricing Data
• Price List / Cost List
• Discount Matrices
• Volume Discounts
• Attribute Adjustments
• Entitlements

Siebel UI/
Siebel
Calling Pricing Logic
Application Database

PSP Engine

Pricing Services
• Spread Discount

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

What is the PSP Engine?

Id=1-XY1; Prod=A; Qty=1 Id=1-XY1; Prod=A; Qty=1;Price=$99

Id=1-XY2; Prod=B; Qty=2 Id=1-XY2; Prod=B; Qty=2; Price=$75

Id=1-XY3; Prod=C; Qty=1 Id=1-XY3; Prod=C; Qty=1; Price=$100

Id=NULL; Prod=D; Qty=1; Price=-$50

PSP Engine

ƒ A real time procedural logic engine that transforms an (in memory)


input row set into an (in memory) output row set.
ƒ Unpriced quote line items Æ Priced quote line items
ƒ Candidate product promotions Æ eligible, recommended, priced product
promotions
ƒ Procedural logic is defined declaratively as a sequence of steps

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

3
What are Row Sets?

ƒ Row Sets are a logical memory structure used to pass data


between business services such as line items to be priced and
other information to be used in pricing those items
ƒ Pricing uses two Row Sets:
ƒ Context Row Set (one row)
ƒ e.g. Quote header
ƒ Item Row Set (multiple rows)
ƒ e.g. the set of Quote Items to be priced
ƒ e.g. the set of Quote Items to be priced
ƒ A Row Set is a property set
ƒ Type: Line Item Value: Row 1
ƒ Product Id = 1-DD9
ƒ Parent Item Id = 1-48J64
ƒ Price Type = One-Time
ƒ Currency Code = USD
ƒ Each row in a row set can have multiple child rows
ƒ E.g. Attributes of a product or a Pricing Waterfall
SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

7.8 Pricing Management Architecture

Siebel
Database

Variable
Map

Get Get
Siebel User Raise Context RowSet

Interface Signal
Controller Workflow
Siebel Workflow

PSP Driver Workflow Process

PSP Procedure

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

4
What is a Signal? A Request for Pricing

ƒ A Signal is a parameterized call to a Business Service or


Workflow Process
ƒ Example Signal: “CalculatePriceAll”
ƒ Workflow to be invoked: PSP Driver Workflow Process

Parameter Value
SubPSPWFName Pricing Procedure – Default
Variable Map – Context Default Pricing Variable Map - Context
Variable Map – Row Set Default Pricing Variable Map – Row Set

ƒ Signals are administered in the Siebel Client


ƒ Sitemap Æ Administration – Order Management Æ Signals
ƒ Signals are versioned objects

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Order Management Æ Signals View

UI Event calls the signal

Action to Run
Controller Workflow

Signal Parameters

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

5
7.8 Pricing Management Architecture

Siebel
Database

Variable
Map

Siebel User
Get
Controller
Get WF
Raise Context RowSet

Interface PSP Driver Workflow Process


Signal
GetController Workflow Update

Siebel Workflow
Get
Context Row Set
PSP Driver Workflow ProcessPrices

PSP Procedure

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

What does the Driver Workflow Process do?

1. Builds the Context Row Set (header information) and Line


Item Row Set
ƒ Variable maps are used to build the row sets
ƒ The variable maps are identified in the definition of the
CalculatePriceAll signal:

Parameter Value
Variable Map – Context Default Pricing Variable Map -
Context
Variable Map – Row Set Default Pricing Variable Map – Row
Set

ƒ A controller workflow is the invocation mechanism for the PSP engine.

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

6
7.8 Pricing Management Architecture

Siebel
Database

Variable
Map

Get Get
Siebel User Raise Context RowSet

Interface Signal
Controller Workflow

Siebel Workflow
PSP Driver Workflow Process

PSP Procedure

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Variable Maps

ƒ Defines the metadata for Row Sets


ƒ Contextual information to price and is the source of the contextual
information itself
ƒ Example properties – Context (header)
Context
ƒ Account Type
ƒ Account Region
ƒ Price List Id
ƒ Example properties – Line Item Row Set
ƒ Quantity Row Set

ƒ Product Id
ƒ Currency Code
ƒ Price Type

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

7
Variable Maps continued

ƒ Defines the source of the properties that will exist for each row
in a row set
ƒ Example properties – Context (header)
Variable Source
Account Type Account Type field - Quote BC
Account Region Account Region field – Quote BC
Price List Id Price List Id field – Quote BC

ƒ Example properties – Line Item Row Set

Variable Source
Quantity Quantity Field – Quote Item BC
Product Id Product Id Field – Quote Item BC
Currency Code Currency Code Field – Quote Item BC

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Variable Maps continued

ƒ All out of the box Variable Map variables will use Siebel
Business Components as the source
ƒ Variable Maps support many variable sources:
ƒ Profile Attributes
ƒ System Variables
ƒ Business Service Outputs
ƒ Etc.
ƒ Variable Maps are administered in the Siebel Client
ƒ Sitemap Æ Administration – Order Management Æ Variable Maps
ƒ Variable Maps are versioned objects

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

8
7.8 Pricing Management Architecture

Siebel
Database

Variable
Map

Get Get
Siebel User Raise Context RowSet

Interface Signal
Controller Workflow

Siebel Workflow
PSP Driver Workflow Process

PSP Procedure
Pricing Procedure - Default

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

What does the Driver Workflow


Process do Next?

1. Uses variable maps to build the Context Row Set (header


information) and Line Item Row Set
2. Invokes a pricing procedure
ƒ The pricing procedure invoked is specified in the CalculatePriceAll
signal

Parameter Value

SubPSPWfName Pricing Procedure - Default

ƒ It passes to that workflow the line item and header information to be


priced.
ƒ Context Row Set
ƒ Line Item Row Set

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

9
What is a Pricing Procedure?

ƒ Pricing Procedures are workflow processes


ƒ Logic for deriving prices and adjustments
ƒ For each line item in the line item row set, the workflow
process does the following:
1. Finds a starting price
2. Processes each line item through one to many additional steps that
may or may not adjust the price
3. Outputs the final price for that line item

OOTB Default
Pricing
Procedure

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

7.8 Pricing Management Architecture

Siebel
C/OM Context Business Service
Database

Variable
Map

Get Get
Siebel User Raise Context Controller
RowSet WF
PSP Driver Workflow Process
Interface Signal
GetController Workflow Update
Siebel Workflow

Get
Context Row Workflow
PSP Driver Set Process Prices

Procedure
Steps

PSP Procedure
Pricing Procedure - Default

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

10
Pricing Procedure Steps & Transforms

ƒ Each step in a procedure is a parameterized call to a “Transform”


ƒ A Transform is one of several methods on the Row Set Transformation Toolkit
Business Service
ƒ Each transform has a set of
conditions and actions for
determining the price
or adjustment
Parameterized
Methods of the
Row Set
Transformation
Toolkit BusSvc

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Row Set Transformation Toolkit Methods

ƒ The Row Set Transformation Toolkit is a business service that provides


the following row set manipulation and transformation methods:

Conditional Action Evaluate a Boolean expression for each row and perform actions based
on the result
Query Query a business component and generate a row set
Simple Look-Up Look-up each input row in a business component using a simple search
expression (e.g. list price, exclusive eligibility)
Dynamic Look-Up Look-up each input row in a business component using a dynamic
search expression (e.g. attribute adjustment)
Row Set Look-Up Look-up each input row in the specified row set (e.g. compatibility)
Hierarchical Look-Up Look-up the closest, best or accumulated value in an adjustment table for
each row by considering each parent in a hierarchy
(e.g. parent company discount)
Hierarchical Process a hierarchy of input rows from top to bottom or bottom to top
(e.g. customizable product price roll-up)
Split Split an input row set into two output row sets by evaluating a condition
for each row
Merge Combine 2 or more row sets into a single row set
Dynamic Subprocedure Send each input row to the specified subprocedure for individual
processing. Each row can be associated with a different subprocedure.
SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

11
Example PSP Procedure: List Price Look-Up
Simple Lookup Transform

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

What does the Driver Workflow Process Do


Next?

1. Uses variable maps to build the Context Row Set (header


information) and Line Item Row Set
2. Invokes a pricing procedure
3. Updates the quote with prices and adjustments
ƒ Synchronizes the updated line item information from the row set to the
calling business component (i.e. quote item)

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

12
7.8 Pricing Management Runtime
Architecture

Siebel
C/OM Context Business Service
Database

Variable
Map

Get Get Update


PSP Driver
Context
Workflow Price
RowSet Process
Get Get Siebel User
Controller Workflow Update

Siebel Workflow
Context Row Set Prices Interface
Quote Prices are Updated

PSP Procedure
Pricing Procedure - Default

Row Set Transformation Toolkit Customer Specific Row


Business Service Set Transformations

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

For More Information…

ƒ Consult the following recorded presentation and


accompanying PowerPoint deck available in your course
materials

ƒ Additional “deep dive” technical MBT’s will be available on this


subject near the 7.8 release
ƒ Consult the Order Management Infrastructure Guide in Siebel
Bookshelf

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

13
Summary

This module showed you how to:


ƒ Understand the business requirements behind why Siebel
created the PSP Engine
ƒ Understand the capabilities of the PSP Engine
ƒ Examine its components
ƒ Describe PSP Engine Row Set Transformation Toolkit
methods

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

Lab Exercise

ƒ In the lab you will:


ƒ Invoke a Pricing Procedure

SIEBEL CONFIDENTIAL AND PROPRIETARY INFORMATION. DUPLICATION IS PROHIBITED.

14