Creating a new Pega Application with App Express
So you have the Pega 7 platform up and running. Now what? It´s time for one of the essential tasks often performed by a Lead System Architect (LSA) which is setting up a new application structure. This structure includes more than just an application name. It also defines certain business and technical aspects. To capture these aspects Pega comes with a wizard called App Express. This wizard will effectively generate rules to define the Organizational and Class hierarchies. One should not think lightly about naming class layers, since it could make or break maintainability and re-usability in the future.
Tip: It helps to determine where in the organization (division and business unit) this application will be deployed. Get your hands on a current organogram.
App Express will guide you through the preparation process consisting of four steps; easily remembered with the acronym ABCD. It will ask your for:
- Application settings
- Business objectives
- Case types
- Data types
Let´s walk though these step to set-up a basic Airline application to support travel bookings. The fictitious company is named: Airline Business & Co. (ABC) and has divisions for Administration, Commercial and Technical matters. The Services business unit interested in the new booking application is part of the Commercial division.
Launching App Express
App Express is typically run by an administrator of PRPC in the PegaRULES context; the base application on which most typical applications are built, unless you target Decision Management (PegaDM) or some other base framework. So log in to Pega as Administrator@pega.com to open the homepage. Next, from the PegaRULES menu at the top select New Application to open App Express.
Pega distinguished two types of applications: Enterprise applications and Express applications. While most businesses will start out with Enterprise, Pega has added a lightweight version of their product offering, which is based on the very same technology under the hood. Express provides a more wizard driven approach, but does impose a few limits in the area of customization, i.e. Activity rules. Do note that any Express application can be upgraded to a full-fledged Enterprise app down the road. Also, Express could be a good starting point for Proof of Concept (PoC) programs to keep focus on creating tangible business value and leveraging Out of the Box (OOTB) features instead of these customizations. We will however select Enterprise application from the get-go. Apart from the application name and description, the most important selection is the Built on application. Every Pega application is built on exactly one other base application. This base application will be used as "next in line" for the proprietary rule resolution whenever pattern and directed inheritance within the application itself is exhausted.
The topmost application in this stack (layer cake) will always contain an Implementation structure, which means it will hold concrete classes that can store instances of data. These data records represent state, i.e. a particular booking made by a customer. One or more (separate) framework layers can improve reuse and maintainability in larger enterprises, because these framework applications have their own life cycle and can be re-deployed independently. The bottommost layer is usually PegaRULES; or PegaDM if you want to leverage Pega´s Decision Management. For demo purposes we create a single implementation application directly on top of PegaRULES and leave layering for a future article.
For Organization, use an acronym or the exact name of your organization if it is 6 characters at most. That´s kinda hard to make fit, but this is in fact a technical identifier from which a lot of other object names will be deduced. For starters it will become the prefix in any class name and appears in the underlying table names as well. Choose wisely. We will put ABC for our Airline Business & Co.
This is the first article in a series about the screen flow steps in Pega´s App Express:
[Edgar] (2/3/2017 12:58:53 PM)
@edgarverburgTweets by @edgarverburg
Edgar is a software engineer with experience in TIBCO Middleware and Pega Case Managemement. He holds a master's degree in Computer Science with a specialization in Data Visualization & Computer Graphics.