PEGA Interview Preparation
PEGA Interview Preparation
1. What is Pega 7?
Pega 7 is built-in BPM and Case Management tool (Platform or System) which helps you to build business
applications that deliver end-to-end customer requirements.
BY CAPABILITY, Pega 7 engages in
• Application Development
• BPM & Case Management
• Cloud
• Customer Decision Hub
• Intelligent Virtual Assistant
• Mobile
• Robotic Automation & Intelligence
2. What is business data and flow data?
Business Data : What data does each actor need to complete their task, steps that require human
interaction is defined as business data.
Flow Data : During case process what data is needed to transact each step, taken together, defines
your flow data.
In general, business data can be defined as a subset of flow data.
3. What are the building blocks of an application?
When you model a case type in a Pega application, you configure the application with instructions to create,
process, and resolve a case. These instructions are rules. Rules describe the behavior of individual cases.
The Pega platform uses the rules you create to generate application code. Pega uses individual rules to
describe case behavior. The use of individual rules makes an application modular. By describing case
behavior with modular, task-focused rules, you can combine and reuse rules as needed.
An integrated solution that provides common underwriting functions out-of-the-box, yet delivers the
flexibility to configure the solution to suit specific policies and procedures.
Ex: You create a rule to describe the content of an email message to a customer regarding the status of
a change of address. The rule is sent after the customer enters their old and new address. By
creating the message as a separate rule, rather than embedding the message in the case life cycle,
you can update the message without any impact to the business process.
This modularity provides three significant benefits:
1. Versioning. System architects create a new version of a rule whenever case behavior needs to
change. Ex: A System Architect updates a UI form with instructions and removes a
critical field. You can review the history of the form and revert back to the version before
the changes were made, without changing other rules in the application.
2. Delegation. System Architects delegate rules to business users to allow business users to update
case behavior as business conditions change. Ex: Expense Reports that total USD25 or
less are approved automatically. You create a rule to test whether an expense report
totals USD25 or less and delegate the rule to the Accounting department. The
Accounting department can then update the rule to increase the threshold for
automatic approval increases to USD50, without submitting a change request for the
application.
3. Reuse. System architects reuse rules whenever an application needs to incorporate existing
case behavior. Otherwise, you must reconfigure the behavior every time the behavior is
needed. Ex: You create a UI form to collect policyholder information for auto insurance
claims. You can then reuse this UI form for property insurance claims and marine
insurance claims.
Whenever a new rule that is subject to rule resolution is created (an Activity, a Flow, a When, etc.), it is
defined on a class , and saved into a particular RuleSet and Version.
5. What is a class?
Class is the template to configure a rule. A Rule is a single instance of a class derived from the Rule- class.
Both : this inheritance type is used to use 'Pattern and Direct inheritance'.
First 'Pattern inheritance' is taken initiated to check Rule resolution. If Rule is not found (TGB-HRApps-Work-
BenefitEnrollment) in the current class it searches the immediate parent class (TGB-HRApps-Work) then
TGB-HRApps, till it reaches TGB. If still the Rule is not found then it moves to the 'Work-Cover' by 'Direct
Inheritance'. In this way, it is using Both inheritance
Layer Purpose
For assets that need to be reused on an enterprise-wide basis. Such assets are rules for enterprise-wide
business logic (such as standard properties, decision tables, Service Level rules) and enterprise-wide data assets
(such as classes and rules for data stored in the system, and classes and rules for access to data in external
Enterprise
systems, via connectors).
Reuse
Ex: the MyCo enterprise wants to reuse the property that holds an employee's serial number on an enterprise-
wide basis, so that the various applications used by that employee across the enterprise can consistently rely
on the same serial number property for the same employee.
For assets that need to be reused on a division-wide basis. Such assets are rules for division-wide business logic
(such as standard properties, decision tables, Service Level rules) and division-wide data assets (such as classes
and rules for data stored in the system, and classes and rules for access to data in external systems, via
Divisional Reuse connectors).
Ex: A division wants to reuse a service level rule that defines the expected response time to a customer
complaint in all of its applications, so that it can consistently enforce a focus on meeting its customer
relationship commitments.
16. How many Rules were present in a New ruleset version when it got created?
There wont be any rules created under a new ruleset. Please refer following screen shot.
19. What is a flow action, What is its purpose and where it is called?
A connector that leads from an assignment represents an action that users can perform to complete
their task, such as Approve or Reject. This action, called a flow action, indicates the UI displayed for
the user when performing the corresponding action.
25. In which order following things are arranges --- Operator, Application, Access group, Ruleset, Built-
on Application?
Operator → Access group → Application → Ruleset → Built-on Application
29. What is the difference between Local Action and Connector Flow Action?
Flow Action can be marked as Local Action or a Connector Action or both from the Actions tab in Flow
Action rule form. The option Local Action allows you to update the assignment but does not advance
the flow whereas the option Connector Action advances the flow.
A flow action marked as Connector Action will be listed in the drop down in the connector shape in
flow rule whereas the one marked with Local Action will be listed in the Assignment shape under Local
Actions. The one marked with both obviously appears at both places.
Click on 'Cross Hair icon' at flow action. A flow Action rule is open. In flow action a Section is
referenced.
32. Where in a flow do you reference a harness?
On assignment -> application details -> harness can be seen with default harness (PERFORM Harness).
It can be changed as per requirement.
We can use LiveUI to locate the referred harness at the runtime as well.
33. What are the default Harness you know and where it is configured?
• New Harness
• Perform
• Confirm
• Review
Go to Process tab and we find New harness, Confirm Harness referred. On the assignment shape under
advanced we refer perform Harness.
34. What are the 6 UI rules covered in SAE course?
The 6 UI Rules covered in SAE course are
• Portal Rule
• Harness Rule
• Skin rule
• Section rule
• Paragraph rule
• Control Rule (like pxDateTime, pxTextInput)
37. What is the use of Skin Rule, and where it can applied?
Skin Rule specifies the visual styling as well as the responsive behaviour of the UI. A UI skin defines the
presentation layer of the application. You can associate a skin rule with an application or a portal.
38. What is the use of Mixin and Formats? What benefits it provides?
A mixin is a reusable style pattern that you define in the skin. Mixins enable you to create incremental
styling changes which provide a natural cascading of styles. Using mixins helps ensure consistency
across your user interface, maximize re-use, and minimize future maintenance.
When we select Strong link in Typography then the change can be viewed in Preview with panel.
39. Please define the number and types of rules created, When we use “Configure View” to add a property
of type FieldGroup.
DataType(FieldGroup) Rule (in the below example Sample @ DataClass with P1,P2 as its properties)
Property Rule (Sample @ Work-casetype class which is created based on Sample defined in DataClass)
FlowActionRule(Sample_0)
SectionRule(Sample_0 @ Data class)
As soon as we configure the view of a property of type “Field Group”, a page is created specifying you
the class from which it is derived. It also allows you to choose how to access the data either manually,
or referring to a data page or copying data from a data page.
As soon as a step is configured in a process. Open the process flow , A Flow action is generated in
connector leading to the assignment (Sample) , in which a flow action is created Sample_0 .
Right click on Sample connector and select view the properties. Flow action Rule is created.
Click on the cross Hair icon of Flow action. A flow action rules is opened. In which a section is configured.
Click on cross hair icon of flow action a section rule is opened. In the section rule lay out is created . in
the lay out properties are created.
40. Please define the number and types of rules created, When we use “Configure View” to add a property
of type FieldGroupList.
The difference between previous and this questions is Page vs. PageList. The change is in the default
layout that is created automatically. In case of Field group it uses Dynamic layout and incase of
FieldGroup List it uses Repeating Grid inside a dynamic Layout.
41. What is the use of Field value rule and where it can applied and what type of benefit it provides?
Field Values provide an alternate method for defining allowed values for properties. Field values enable
you to manage the list of allowed values separately from the property. Managing the allowed values
separately from the property enables you to reuse a single property, and customize the allowed values
based on the context of the property.
For example, in a Pega 7 application, every case instance has a status, which changes as the case
progresses through the case life cycle. The status of a case is set using the property named
.pyStatusWork. The list of allowed values for setting .pyStatusWork is defined using field values.
43. What do you need to create for your case to use an instance of a data class?
Just create a Data Reference Type. We have used DentalPlan as a reference from TGB-HRApps-Data-
HRPlans.
44. How to create a Reference Data?
Create a new data type through data explorer. Then defined a key for it. And add local data source.
Reference data is static and used in the application. Like different types of Units of measurement
(litres,Metres,Kilos,Numbers,Packets,Dozen ..etc). These can be stored as local data source, and used
in the application. It can be in the form of drop down list, to defined measurement units for item.
We can refer Managing Reference Data in the exercise guide to add Assets data type following data about
assets.
45. Please define the step to access data from a Database Table and use it in the application?
Database Table Class Mapping tool is preferred when integrating with external databases. The tool
creates a data class with the data mapping and a database table instance that references the external
table. There is an exercise related to Caching data with data pages in exercise guide, where we populated
seating locations data from database to the data page using report definition
46. Can you reuse a rule which is a lower patch version of a RS?
SSA QUE
47. Can you reuse a rule which is a upper minor version of a RS?
SSA QUE
48. Can you reuse a rule which is in a different major version of a RS?
SSA QUE
54. How many Clipboard get created when one Operator gets authenticated from two different browser
sessions?
As many session initiated by the user. In this case 2. Operator id is same but the remaining fields may
differ like pyFontName, pxSaveDataTime,pxUpdateDateTime
55. What is the difference between pyWorkpage and pyWorkCover? Please share an example when these
pages gets used?
pyWorkPage is created whenever the case is processed in your application and stored the case related
data. If the case contains data object, the data related to data object is stored as a separate page within
the pyWorkPage called embedded page.
If the case contains the child case, the data related to the child case is stored in the pyWorkPage and
the data related to parent case will be stored in the pyWorkCover.
In a Passport application, applying for a passport is one case and Police Verification another case within
it, so once the Passport case is processed the related data is stored in pyWorkPage and this case moves
to the child case i.e, Police Verification. In Police Verification case it has to relate the the data with parent
case i.e., Passport case. .As we said for each case processed related data is stored in pyWorkPage, so
now police verification case related data is stored in PyWorkPage then how about the parent case data.
So parent case data is made available in a separate page called pyWorkCover so that both parent and
child cases interact when a case is processed.
While before creating a case we can view the details of Employee shown in below image
addWorkObjectParty its an API activity, can be called while case already include the data about party.
Add this activity to the Action tab of a flow action rule, or call the activity by adding a utility shape to the
appropriate process.
addParty flow action : this allows case workers to add during case processing. Add this flow action to
an assignment or stage as a local action. Users select the action during case processing to add
information for a work party.
59. Which is the place where the Work Party data get stored first?
The place where the work party get stored first is
Clipboard > User Pages > pyWorkPage > pyWorkParty
The type of the pyWorkParty property is Page.
60. Where do we configure the WorkParty so that it get called when a case get created?
We configure the work party in pyStartCase flow rule.
65. What is a StepPage in an Activity and what is the actual use of it?
The StepPage identifies a page to be used as the context for referenced properties within the step. Each
step in an activity may have a designated StepPage. This StepPage Provides data context during the
execution of this step. If a step page is not specified for a step, the primary page become the step page
66. Where we can see the step Page in the Clipboard?
You would see the step page in parallel to the pyWorkPage.
The following screenshot is an activity Sample with step Page name Operator.
The below Screenshot shows the location and Goal and Deadline details in clipboard under
newAssignPage in clipboard.
70. What can you use as data source for a Data Page?
1. Connector 3. Report definition 5. Load activity
2. Data transform 4. Look-up
71. What can you use as data Source for a Repeating Grid?
The data source can be a Property, list-type Data Page, or a Report Definition.
76. What should you do to change a property from Page List to Page group?
There is no possibility to convert from page list to page group.
79. Can you directly inherit from the same class you pattern inherit?
Yes. We can have a pattern and a direct inheritance present on a single/same class.
81. Why would you create a UI directly under your Data Class?
So that I need not add any reference page under 'pages & classes' tab and I can directly add properties
from data class in app explored to the section rule directly
88. Why would you create a new stage and it would base on what factors?
When ever there is a major change in the status of the case or the ownership, we think of new Stage.
We create a new stage which depends upon case participants, for example in a case type called Expense
Report when an employee submits expenses the case will be routed to manager/director for approval
in this case we can create a separate stage as it involves different specific user.
96. How many connectors per decision shape and the number of connectors depends on what?
The number of connectors depends on the number of allowed results mentioned in the decision rule
selected.
97. The parent case waits for its subcase to complete before continuing processing?
Yes , parent case waits for its sub case to complete before continuing processing.
98. The parent flow waits for its sub-flow to complete before continuing processing?
Yes, parent flow waits for its sub flow to complete before continue processing.
99. Do you use a subcase or a sub-flow when a unique transaction with its own lifecycle is needed?
We use a subcase when a unique transaction with its own life cycle is needed.
100. What are differences between Process: participant, analyst and designer?
SSA QUE
88. Address is a valid class name?
Yes, Such class already exists under TGB-Data-Address. You can use it, If required can be created
again, in a different hierarchy. Irrelevant, but u can create a case type called Address. In such case it
creates a class called Address under ORGNAME—APPNAME-Work-Address
102. What do you create if a data class contains an instance of another data class? inheritance?
This is not inheritance. This is using one class in another. When u create field group, this gets done.
Field Description
Select this check box to cause the system to refresh exactly once per user interaction. This option is available
only for rules with Page scope set to "Thread" or "Requestor". When this check box is selected, at run time the
system ignores any values in the Refresh if older than and Page is fresh when fields.
Reload once per For Thread-scope pages, determine the refresh strategy carefully, especially if your refresh operation is costly in
interaction terms of elapsed time or use of system resources. This involves a trade-off of possibly stale data versus
additional processing. For example, refreshing upon each interaction might introduce avoidable extra
processing if once-per-hour is good enough. However, in a high-frequency access situation, refreshing once per
minute can be less often (and less costly) than once per interaction.
Identify the When record to be evaluated when a requestor accesses a page with a Page scope of "Thread" or
Do not reload "Requestor".
when If the When rule evaluates to false, then the page contents are refreshed. However, the page is never refreshed
more than once per user interaction.
Optional: Enter the amount of time in days, hours, minutes, and seconds, after which the data page is
considered expired. The timer starts when the page is first loaded, not from the time of last access. The data
page is refreshed only when another access request is made after the expiration time, and is never refreshed
more than once per user interaction.
Reload if older For example, assume a reload time of 10 minutes:
than The data page is accessed for the first time at 1200. The data page is loaded because this is the first access.
The data page is accessed for the second time at 1208. The data page is not loaded. The existing copy is
returned. The data page is accessed for the third time at 1211.
The data page is reloaded because the time from the last reload at 1200 exceeds the Reload if older than setting
of 10 minutes.
110. What is a When Rule and please define all the Locations where all it can be referred?
It is a kind of decision rule, that allow you to evaluate one or more conditions, and return a Boolean
value (true/false) . You can use this in fork shape., Declare expressions, Activities, Stages, Flow, Flow
Action, Sections, Layout, Field, Data Pages etc.,
Configuring Decision shape
Declare expressions
UI update (on click of check box something must happen, like providing another field to update data
You can skip a Stage, by using when rule in a stage
Functions are internally defined in Pega, and they are created and accessed while creating different rules
in Pega. For example, when you create a decision table, you may need to provide some inputs to obtain
a result. Internally Pega creates function to get the result based on the inputs. You also can use some
predefined functions directly in rules like When Rule, Declare Expression, Decision Tree etc.,
……………screen shots available
In When Rule (Advanced tab)
Also u can access and use a function, from expression builder. For example you can access build an
expression gear button from rules like declare Expression rule.
112. What is a Fork Shape and what kind of connector it can have?
Whenever you require, a decision shape which have multiple outputs, you can use Fork. In the flow
rule, you can attach a decision shape, and you can set the type as fork. Post which you can draw any
number of connectors to the shape. Each connector can be configure to a when rule. The connector
pointing to the next shape will be performed only if the when rule is satisfied.
113. What is the link between Harness, Flow Action, Section, Flow?
Harness is a container for a UI(section rule), that provides outer layer to user defined UI, and it provides
options to perform actions to be taken. Like providing a submit button for UI.
Section is a rule that contains Layouts, Controls/properties, sections, paragraphs etc., This is mainly to
create a UI.
Flow or Flow rule is nothing but the process design of a particular process. These are created whenever
you add a process to a stage. This contains the complete flow details of that process.
Flow Action: this is a rule associated with a connector leading from an assignment shape. Each flow
action rule point to a section rule and there by facilitative the viewer to view the ui at runtime.
114. Please define the design time view and runtime view of the Harness?
You can locate the harness rule, using LiveUI. For example use live UI, and locate PZStudio and open it
identify how it looks in design time. Run the application and see how it appears at runtime.