Compute the adjusted rate for a class¶
ClassRateExtensions.AdjustedRate(Target, inRateTierFactor, inUSLHWFactor, AccidentLimitFactors, OtherFactors) (ClassRateExtensions.vb:39-58)
| Field | Value |
|---|---|
| Operation ID | OP-001 |
| Trigger | Premium rating needs the final rate for a rated class line |
| Inputs | An iAdjustedRateProvider target, a clsRateTierFactor, a clsUSLHWCompFactor, a sequence of accident-limit iAdjustedRateFactor, a sequence of other iAdjustedRateFactor |
| Outputs | Decimal rate rounded to 6 decimal places |
| Primary components | `ClassRateExtensions.AdjustedRate(Target, inRateTierFactor, inUSLHWFactor, AccidentLimitFactors, OtherFactors) (ClassRateExtensions.vb:39-58)` |
| Entry point | Business\SAIF.Business.Policy.Rating\ClassRateExtensions.vb |
Steps¶
- Filter
OtherFactors, discarding anyNothingentries. - Project each remaining factor to its value by calling
factor.Factor(Target)— each factor - Multiply the values into a cumulative factor starting at 1.
- Compute the base rate by delegating to
BaseRate(OP-002). - Multiply base rate × cumulative factor.
- Return
Math.Round(Rate, 6)(BR-001).
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start([Trigger: rating needs the final rate for a class line]) --> S1[Filter OtherFactors: discard Nothing entries]
S1 --> S2[Project each remaining factor via Factor Target]
S2 --> S3[Multiply values into CumulativeFactor starting at 1]
S3 --> S4[Compute base rate by delegating to BaseRate OP-002]
S4 --> S5[Multiply base rate by CumulativeFactor]
S5 --> S6[Round to 6 decimal places]
S6 --> Done([Return adjusted rate - BR-001])
Failure and edge-case behavior¶
- Review the linked business rules and SQL documents for the validation or data-access conditions that can block this operation.
Related documentation¶
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.
Sources¶
Business\SAIF.Business.Policy.Rating\ClassRateExtensions.vb