Rate flow design

Rate flow is the logic in the rating engine plugin which orchestrates the premium calculation for a policy line. You can customize the rate flow implementation to meet your detailed requirements, in particular, dependencies between calculations. You can modify the design of the rate flow in the base configuration in a number of ways.

Rate flow in the PCRatingPlugin

In the base implementation of Guidewire Rating Management, the PCRatingPlugin plugin implementation provides rating for Personal Auto and Commercial Property. These are the PARatingEngine and CPRatingEngine classes, respectively. Rate flows are a subset of the plugin and the rateSlice method is the container for the flow. After the rateSlice method completes, the rateWindow method calculates values that depend on all costs. In the base implementation, the example calculates taxes on the window. You must change this if you calculate taxes on the slice.

Alternate rate flow strategies

Some implementations require different rate flow strategies. For example, some implementations need to rate multi-line policies as a single component. To implement this, override the rateOnly method in the AbstractRatingEngine class to express the needed logic. The flow implementation will be similar to the rateSlice method but applied across multiple lines.

Rate book selection

The rate flow logic selects the rate book that will be used to access rate tables and rate routines. The general strategy for the flow is to select a rate book for usage, then access the objects on the policy to calculate full term amounts. In Personal Auto, a single rate book is matched to a policy. In Commercial Property, the rate book lookup happens for each coverable. The rate book is selected using the name, the reference date, and the rate book activation date. The CPRatingEngine class selects a rate book for each coverable. Because the reference date is the date the coverable was added, a different rate book could apply in each case.

You can configure the rate flow implementation to select rate book based on different purposes. The example rating selects rate books by policy line. Another option is to put non-calculation logic (such as a rate routine that rates drivers) in a separate rate book from premium calculation.

Data dependencies

The rate flow orchestrates or orders the rating calculations to produce the premium amounts. If all premium calculations are independent of each other, then any ordering that fits the logical structure of the policy is valid. Where dependencies exist, you must modify the rate flow to reflect those requirements.

If you need two-pass rating, where the premium calculated in the first pass affects the final premium calculated in the second pass, you must modify the rate flow.