advantages and disadvantages of case specialization vs creating new case type
(what are the advantages and disadvantages of case specialization vs creating new case type Other than requiring lesser time to code need advantages and disadvantages in terms of below
* Rule re usability
Case specialization is a way of creating specialized case type [by region] from base casetype using circumstancing and specialized case will have relevant stages and steps in addition to base casetype
where as we can create a completely new casetype [ having all relavent stages and steps meeting each specialized casetype need [by region]
Generic Advantages of Circumstancing and it could be considered the advantages for the "Case Specialization" in your use-case.
- Circumstancing allows you to customize the behaviour of your application to address each exception condition you identify using a collection of targeted rules rather than one complex, difficult-to-maintain rule.
- When there is a change in the generic logic of the case, you need to iterate the changes in all the case types created for different regions.
- Reporting is the most important need for any manager or team working on the cases and comparative analysis of both the use-cases are helpful in circumstancing, as standard data structure/property is maintained for all the region. Otherwise, the flexibility of region wise separate cases leads to the disorientation of structure.
- The various variant of a rule, such as the decision or SLA rules is assisted by circumstancing.
- Circumstancing allows you to customize the behaviour of your application to address each exception condition.
- Pega selects the appropriate variant or circumstance, to use based on the details of the case(the region in your use-case) at runtime, thus making it more dynamic.
- Circumstancing could also help in delegating to business users in the production environment for a region.
- Rule resolution algorithms pick the correct rule by region implicitly if a case type is circumstanced. When using the rule, the application evaluates the conditions defined on all the circumstanced variants. If one of the circumstancing conditions is satisfied, the application uses the corresponding rule variant. Otherwise, the application uses the base rule. It helps in maintainability.
- I am not aware of the much disadvantage of circumstancing in general, though as per my knowledge, you need to resave the circumstanced rule in the higher or latest available ruleset if there is a base rule created in the higher or latest ruleset.
- Also, reporting and comparative analysis of data if having different cases for each region would be not feasible.
- If new cases model is used for every region, we end up creating similar cases for different regions and duplicating the value at multiple places which in the end will affect maintainability and updating of the logic as well at multiple places leading to tedious work. While circumstancing does for you.
Hope it gives you idea and benefits of circumstancing instead creating separate rules for different regions. Kindly notify by marking this reply as answered/helpful for larger Pega audience and tracking purposes.