Skip to main content
Verify the version tags to ensure you are consuming the intended content or, complete the latest version.

Specialization layer design examples

Specialization use cases

This topic describes sample use cases and recommended specialization approaches.

Use case: Define the product at the enterprise level

3Phase Inc. is a large electronics manufacturing company that has been in business for 25 years. Over time, the company's ability to stock new products and replacement parts has become increasingly complex. To manage this issue, the company created a separate Supply Chain Management (SCM) division. Currently, there is no need to specialize in SCM applications by region.

Design a specialization solution that supports this requirement.

Discussion and recommendation

The recommended specialization approach involves defining the product at the enterprise level. Defining utilities such as a product selector are also be defined at the enterprise level. This approach enables the SCM division and the Sales and Customer Service divisions to share the standard product data definition and utilities.

SCM’s mission is specialized, ensuring that products and replacement parts are in stock within different regions. The mission of SCM is outside the scope of Sales and Customer Service personnel responsibilities.

As a result of SCM's specialized mission, you develop a unique set of application rules for the SCM division using the case structure: PHA-SCM-APP-[Work/Data/Int]. In the future, if you need to specialize rules for a particular region, you can investigate various approaches such as:

  • Circumstance rules by the name of the region, including case type rule circumstancing.
  • Use pattern inheritance specialization by appending the region’s acronym, prefixed with a dash, to case type class names.
  • A new implementation application is built on the existing application specific to the region.
Note: Only the first two approaches support all regions with a single application. The third option requires application switching. 

Use case: Creating a reusable built-on application

GameMatch is a social media company specializing in introducing members to each other as they play different types of games.

The process of setting up and executing a game is the same for any game. The rules to play each type of game are different. The entire process runs in the context of the game that members decided, ahead of time, they wanted to play. Each player's moves, from game launch to match completion, are recorded within a database table specific to each type of game.

Design a specialization solution that supports this requirement.

Discussion and recommendation

For the following reasons, the recommended specialization approach involves creating a reusable built on application layer.

  • The entire end-to-end interaction is similar regardless of the game selected.
  • The rules for playing each game are different.
  • Requiring users to switch context from one interaction to another is acceptable.
  • Separately persisting each interaction is desirable.

You develop a production application for each unique type of game built on a reusable layer specialization.


This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

Did you find this content helpful?

100% found this content useful

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice