Constellation Architecture is made of several building blocks, which work together in harmony to help you crush complexity. With the Infinity server at its core and with logic, DX API, and UI services providing prescriptive UI and UX, Constellation strives to provide a whole that is truly greater than the sum of its parts. All of these features mean that you can focus on implementing what's most important for your business, rather than grappling with low-level implementation details. Let's see in detail how Constellation’s building blocks work together.
Constellation Architecture is made of several building blocks, which work together in harmony to help you crush complexity.
Client device
In traditional Pega UI, the server was tasked with handling both the business logic and generating all of the UI markup, which was returned along with the response to the user's request. But by taking advantage of the growing power of personal computers, in Constellation Pega now has an architecture that enables user browsers and devices to do the heavy lifting, by utilizing the Constellation orchestration layer.
In comparison with the Traditional architecture, in the Constellation architecture, the client device plays active and vital role, acting as the layer that is responsible for runtime orchestration, managing client-side state, interpreting metadata, and resolving dynamic values. Not only does the client device now dispatch requests to the Infinity server, but it now also renders the response. This includes transforming JSON metadata into HTML code. Because all of the logic for these operations is now located on the user's device, the server load is minimized, creating an even faster and more responsive user experience. Infinity is then spared from having to perform this type of work, saving capacity for its core tasks, case management, and data processing.
Infinity server and DX API
The Infinity server is still a key part of the architecture, but the difference now is that it only handles the tasks and work that it is specifically built for. In other words, Infinity server lets other components of the architecture do their own jobs, and by combining their efforts with Infinity’s, we can see great results. In the Constellation architecture, the Pega Infinity Server acted as a brain holding the business rules, logic, and data, while the orchestration and presentation were handled by the user's device.
Communication between both sides is covered by the use of DX API - a set of model-driven REST API endpoints that provides both the case data and User Interface metadata that is required to fully render the UI, regardless of the chosen front-end framework.
Whether you’re building your app's UI using Pega's portals, Web Embed, or Constellation SDKs, DX API handles the communication in the same way, taking care of the data while the part of the response containing the API's UI metadata references the Components served by Constellation UI services, which serve as a recipe for rendering the UI. Altogether, DX API fulfills the needs of the Center Out approach.
This change of approach enables you to deliver journeys and experiences powered by DX API that are tailored to your customer's needs independently of their devices and the channels that they use.
Constellation UI services
Pega has separated responsibility for handling UI-related tasks into two separate services and delivery mechanisms: a client application-specific UI static content delivery service (App-static), and a Constellation Pega UI static content delivery network (CDN):
- JavaScripts generated by Pega and that are part of Pega Platform™ are available on the Pega CDN (the Pega UI static content service), which is a global service – the same service for all clients.
- UI assets (images, custom components, localizations) authored by clients are application-specific. These assets are available as a cloud-based multitenant service or as a deployable service known as the App-Static service (the Customer application UI Service).
Separation is used to maximize the efficiency and responsiveness of the application's UI components. The recipe for Pega’s out-of-the-box (OOTB) components is the same for all components and can be made publicly available for quick access. Components created by clients, on the other hand, must be safely stored and protected.
Pega applications’ static UI content, which provides the OOTB components through the CDN, is read-only and does not require authorization. The CDN is used by all Constellation portals to load the Pega-generated OOTB JavaScript; the provided content is the same for all customers, is cached worldwide, and does not store personal or customer data. Clients can also deploy their own CDN services locally, if needed.
On the other hand, the App-Static service handles only customer-generated application-specific UI static content. Customer-generated UI static content is read/write and is protected by security measures, and requires authentication for all APIs (for both read and write). Reading or writing of customer-generated content is covered by the signed token.
Messaging Service
There is also a third service, which provides unique capabilities: the Messaging Service, which realizes a server-to-client push architectural component of Constellation. This keeps the UI content updated beyond the last server interaction, based on the components-to-topics subscriptions made through the WebSocket connection. Infinity publishes data to the Message Broker through an HTTP REST connection. The Message Broker then pushes this information to browsers that have registered an interest in this information. Thanks to the Messaging Service, you can easily implement highly dynamic parts of the UI, for example, charts that update in real-time, or a bell icon with a badge that shows the number of new notifications when the backend system receives a new message.
Greater than the sum of its parts
Constellation Architecture represents a transformative shift in how business applications are built and deployed. By offloading the UI rendering to the user's device, making use of the power of DX API, and ensuring efficient UI content delivery through its segmented services, Pega has achieved seamless integration of multiple components that work together harmoniously. The orchestration layer, the Infinity server, and the robust Messaging Service collectively deliver a faster, more responsive, and highly scalable user experience. This modern approach frees developers to focus on high-level business logic and case management, rather than grappling with low-level implementation details. As a result, Constellation empowers businesses to innovate and adapt rapidly to changing demands, proving that the whole can indeed be greater than the sum of its parts.
Related Resources
- Constellation on Support Center
- Pega Community Constellation Page
- Constellation Adoption on Pega Academy
- Constellation Documentation
Don't Forget
- JOIN THE CONVERSATION on Support Center
- FOLLOW @PegaDeveloper on Twitter