Skip to main content

Application configuration requirements

As a best practice, a Pega Platform™ application is small and reusable to improve the maintainability and scalability. The built-on features of an application record enable the addition of dependent applications and reuse an application that is already built.

Smaller applications with clearly defined reusable functionalities also make it easy to package the application for deployment. 

Deployment Manager allows application pipelines to leverage the dependencies feature to ensure all the dependent applications are always packaged and deployed, without the need to manually track or deploy them to all environments.

Structure every Pega Platform to enable agility in delivery. Create a development and a test layer to isolate development and test change, and migrate the changes independently through a pipeline.

Create a Development layer

A development application should be used by the development team to manage the work-in-progress features. Once the development changes are complete, these changes are merged into a target application. Using a Development layer allows you to keep the target application locked to prevent unintentional changes.

Since the target application is regularly packaged and promoted to higher environments, it is important to exclude branches and any other work that is in progress.

A Development layer consists of:

  • An application that is built on the testing or target application. Consider following the naming convention: {TargetApp}Dev.
  • An unlocked ruleset for developer tools or work that is never intended to be promoted to higher environments.
  • An access group that logs into the development application.

Development layers can be assigned to developers as needed, whether it is one layer for each developer or team.

Create a Test layer

The Deployment Manager manages the Testing assets. However, these assets are only deployed to a subset of environments. To manage and run test cases, it is necessary to create a Test layer.

 A Test layer consists of:

  • A locked application that is built on the target application. Consider following the naming convention: {TargetApp}Tests.
  • A ruleset for all test cases and test assets.
  • An access group that logs into the test application.
  • A product rule that defines those assets which the pipeline promotes.

Structure of an application

    When you create a layered application structure for an application, the structure resembles the following image:

    Image depicts the layered application structure for an application.

    For example, in the image, consider the target application (production application) is UPlusBank 08.01, when following the recommended application structure, the following is the applications corresponding to each layer:

    • The UPlusBank application with version 08.01 is the Production application which is clean (for example, only completed and validated features are included in the application) and locked to prevent any unintended changes.
    • The UPlusBankTests application with version 08.01 acts as the Test layer that contains the Test automation assets required to run Automated tests. The UplusAppTests application is locked to prevent any unintended changes.
    • The UPlusBankDev 01.01 represents the Development application layer, where all the active development by the Development team takes place. A developer works with rule branches on a Development application to prevent any accidental promotion of a work-in-progress branch.

    For Deployment Manager to promote the production (or target) application to production, the application must be built on the PegaDevOpsFoundation.

    PegaDevOpsFoundation as a built-on application

    The PegaDevOpsFoundation application is a component of the Deployment Manager that enables pipeline integration to Dev Studio and App Studio. A developer adds the PegaDevOpsFoundation application as a built-on application on the target application to enable promotion through the Deployment Manager. 

    When adding the PegaDevOpsFoundation application as a built-on application, use the major version of the application so that the latest patches and minor versions are adopted without updating the application.

    For example, include PegaDevOpsFoundation:5 as a built-on application instead of PegaDevOpsFoundation:5.1.1.

    Image depicts an example where PegaDevOpsFoundation:5 is a built-on application instead of PegaDevOpsFoundation:5.1.1

    When working on a new application, the developer must update the built-on application in the Development environment only. The Deployment Manager can deploy a new application to a new environment. 

    If the application is already deployed to all environments, a Release manager is required to manually update the application record on each environment with PegaDevOpsFoundation as the built-on application. The next deployment syncs the application changes and results in an Aged update message in the Deployment Manager.

    Check your knowledge with the following interactions.

    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