Skip to main content

Specialization layer design examples

The following sample use cases describe the recommended approaches to the specialization of Pega Platform™ applications: 

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 ability of the company 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, they do not 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. Additionally, utilities such as product selectors should also be defined at the enterprise level. This approach enables the SCM and Sales and Customer Service divisions to share the standard product data definition and utilities. 

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

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

  • Circumstancing rules by the name of the region, including circumstancing of case type rules.
  • Using pattern inheritance specialization by appending the region's acronym, prefixed with a dash, to the class names of case types.
  • Building a new implementation application on the existing application that is 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: Create a reusable built-on application

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

Setting up and running a game is the same for any game, but the rules to play each type of game are different. The entire process runs in the context of the game that members have decided, ahead of time, to play. The system records the moves of each player from game launch to match completion in a database table that is specific to each type of game.  

Design a specialization solution that supports this requirement. 

Discussion and recommendation

The recommended specialization approach involves creating a reusable built-on application layer for the following reasons: 

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

A production application is developed for each unique type of game, built on a reusable layer specialization.

 

Check your knowledge with the following interaction: 


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?

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