Superclassing is a very beneficial concept to make the most out of reuse through inheritance. The Pega platform natively supports superclassing for data transforms. With a few changes, we can also use this functionality for activities. As a PoC, I’ve created my own component that adds superclassing to the activity ruleform - with only minor changes to the ruleform:
- ‘Activity extensions’ in the rule header of activities. The navigation icon works exactly the same, the toggle does not change the rules fired prior to the activity but instead, makes a change to the ruleform as seen in the next screenshot. This is due to not wanting to change / override final / internal rules from the platform
- When the toggle is enabled, a new step is prepended to the activity that first calls the rule in the superclass (i.e. DMOrg-DMSample-Data-Circle → DMOrg-DMSample-Data, and so forth for each subsequent activity that has this feature enabled)
- Unchecking the toggle removes the step and removing the step unchecks the functionality. The same other ‘rules’ with regards to saving and refreshing apply.
I would love to hear some thoughts with regards to the usefulness of this feature for more than just sandboxing. It only entails a change in one OOTB rule and makes up for a small component of ten rules.
If anyone is interested, feel free to already download the RAP (.zip) of the component.

