top of page

Understanding Rule Resolution in Pega

In Pega, Rule Resolution is a crucial search algorithm that ensures the most appropriate instance of a rule is executed during case processing. This sophisticated algorithm is essential for maintaining the efficiency and accuracy of business processes within the Pega Platform.

 

What is Rule Resolution?

Rule Resolution is a process used by Pega to determine which rule to execute when multiple rules with the same name exist. It considers various factors such as rule type, ruleset, version, and availability to make this determination. This algorithm applies to most rules that are instances of classes derived from the abstract `Rule-` base class. Examples include:


  • Case types (`Rule-Obj-CaseType`)

  • Properties (`Rule-Obj-Property`)

  • UI rules like Sections (`Rule-HTML-Section`)

  • Harnesses (`Rule-HTML-Harness`)

  • Declare expressions (`Rule-Declare-Expression`)

  • Data pages (`Rule-Declare-Pages`)

 

However, Rule Resolution does not apply to records that are instances of classes derived from other abstract base classes such as `Data-`, `System-`, or `Work-`.Examples of these include:


  •  Operator IDs (`Data-Admin-Operator-ID`)

  • Email listeners (`Data-Admin-Connect-EmailListener`)

  • Operator's favorites (`System-User-MyRules`)

  • The rule check-in process (`Work-RuleCheckIn`)

 

The Rule Resolution Process

Pega Platform uses Rule Resolution to determine the most appropriate rule to execute. This process is supported by a caching mechanism known as the Rules Cache, which enhances the efficiency of Rule Resolution.

 

Steps in Rule Resolution:


  1. Find Rule in Rules Cache: The algorithm first attempts to locate instances of the referenced rule in the Rules Cache.

  2. Populate Rules Cache: If the rule is not found in the cache, Pega Platform runs a special sub-process to populate the cache.

  3. Correct Purpose: The algorithm creates a list of all rules matching the purpose (defined by the rule name and rule type) to populate the cache.

  4. Not Available Rules: Rule candidates marked as Not Available are removed from the list.

  5. Ruleset List Access: The algorithm uses the operator's Ruleset list to determine accessible rule candidates.

  6. Inheritance Path: Rule candidates not defined in a class hierarchy are removed.

  7. Rule Blocked?: Pega Platform checks if the rule is available for use. Blocked rules or rules inaccessible to the user result in an error message.

  8. Ranking Multi-Step Process: The algorithm ranks the remaining rule candidates through a multi-step process.

  9. Rules Cache: Finally, the remaining rule candidates are added to the Rules Cache.

 

Why Rule Resolution Matters

The primary goal of Rule Resolution is to return the most appropriate rule to meet the specific needs of a user for a given purpose. By ensuring that the correct rule is executed, Pega Platform maintains the integrity and efficiency of business processes.

 

Understanding the Rule Resolution process is essential for developers and administrators working within the Pega Platform. This knowledge helps in troubleshooting, optimizing rule execution, and ensuring that the system performs as expected.

 

For more insights and detailed information on how to optimize your use of Pega Platform, stay tuned to our blog and feel free to reach out with any questions or feedback.

 

This blog post aims to demystify the Rule Resolution process, highlighting its importance and the steps involved. By understanding this core functionality, you can better manage and optimize your Pega applications for enhanced performance and reliability.


-Team Enigma Metaverse




1 view0 comments

Comments


bottom of page