CSA Interview Qs Flashcards

1
Q

In Pega 8.1 what are the new components added for application development?

A

From App Dev point of view, couple of new features added:

  • We can use role-based workspaces
  • Developers have the capability to review complete project highlights on a single page
  • Effective management of resuable component
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What do you mean by work-space or studio?

A

It is an environment that provides specific tools and features

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the various workspaces supported in the latest release?

A

There are four types:

  • App Studio,
  • Dev Studio
  • Admin Studio
  • Prediction Studio
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Can you use Pega Express in 8.1?

A

The App Studio is nothing but former Pega Express

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

A system admin complained that he is not able to access the Admin Studio? What could be the potential reason?

A

To access Admin Studio, you should have a few Privileges:

  • SysAdmin4
  • PegaRULES:SysOpsAdministrator
  • PegaRULES:SysOpsObserver
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Like we used to switch portal, similarly, is there any way to Switch Studio as such?

A

Yes. In the header of the workspace, we need to click the Switch Studio menu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How can you show the relevant record?

A

We can show it by right-clicking the relevant record management tab for a specific class in the App Explorer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Prediction studio?

A

It is the studio where you can build ML models for adaptive, predictive, and text analytics.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a channel?

A

A channel is the technology or application where a user interacts with the Pega Platform application

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a Chabot ?

A

A Chatbot is the part of an application that handles NLP, case processing, and AI to interact with a user in a conversational way

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the types of channels supported?

A

Amazon Alexa (uses voice commands)
Email (sends email messages)
Facebook Messenger (sends text messages in Messenger)
SMS (sends text messages from a mobile phone)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Your client wants to built a Chatbot on Facebook. What will be your recommendations?

A

They must purchase a separate license for Pega Intelligent Virtual Assistant and install the Facebook channel component from Pega Exchange and post that add in the ruleset in your application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Your client set up an email account but the outgoing email is failing. What are the possible reasons?

A

Check the connection refused by provider (most times they treat it as spam)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is email listener?

A

Email listeners provide the Pega Platform with the information it needs to route incoming email messages to an email service rule.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

While creating the listener, a developer select “Block startup”. What will be the impact?

A

When selected, “Block startup” stops the listener from being started automatically or manually.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Is there any need to set email listener in separate node?

A

It helps enhancing performance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Any way to delete tracking data for listener?

A

Select the “Reset start up” option in email listener.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is latency period?

A

After the amount of time specified, the listener checks the email folder specified for messages.

Note - enter the duration of listener’s rest period in seconds

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Your architect wants to increase the number of threads per server node that this listener requestor creates. How will you do that?

A

Increase the count under concurrent threads field

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What do you mean by Declarative?

A

It is something that allows you to set up calculations which occur when one of the values used in the calculation changes. The result of one declarative rule can trigger another declarative rule in a process known as chaining.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Can you perform Obj-Save in Trigger activity ?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are the new features related to Data in 7.x?

A
  • Introduction of Data Explorer
  • Can dynamically provide data
  • Data page parameter can be passed from anywhere
  • Data page can be accessed from anywhere in application
  • Data page can now have multiple data sources
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Is there any limitation of Asynchronous Data Page?

A

Asynchronous Declare pages cannot run declarative expressions, triggers, and other rules that belong to a declarative network.

For example, you can enable executing declarative expressions in a background requester; but if the declarative expression refers to properties defined in external named pages which are not present in the background requester, then the declarative expression may not execute.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What do you understand by non-blocking user interfaces? As an architect, where you would like to use this feature?

A

Non-blocking user interfaces means the UI element which are of the user’s interest but not necessary for them. The user can interact immediately with the work item, typing in the text box. Since the other sections are asynchronously loaded, the user can even click Submit to process the action before the defer loaded sections display.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

How do you enable defer load using data page in section?

A

You have the option to chose the defer load check box and upon selecting you can mention the D page name under the Using page field

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

While trying to trace the asynchronous data page (ADP), developer complained that they can’t trace it. What could be the possible reason?

A

In the Tracer configuration, if you have to trace ADP, then you need to enable two options: Interaction and ADP load. If these are not checked, you can’t trace them at runtime

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is the significance of requester pool?

A

Requestor pooling often improves the performance of a service because requestors are reused, their allocated resources are shared, and the service doesn’t need to wait for a requestor to be created.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

The “Load this Page Asynchronously?” checkbox is checked on the Declare Page Definition tab, but it still is not working. What could be the possible reason?

A

The pre-configuration setting can cause it to stop loading asynchronously

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

In SMA, which components will you check to see the max load on the requestor pool ?

A

“Most Active” parameter. This indicates the maximum load on system (the most ADPs concurrently executing)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

How will you modify the requester pool settings?

A

Log in as a developer; then from the landing page go to integration and resources and check the service package option, you will see the AsyncDeclarativesPool service package there:
- You can open it and modify the value under the pooling tab.

Note - remember to restart the server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What is Property-Seek-Value method?

A

This method is mostly used for backward chaining purposes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

How does Declare Constraints work?

A

When the system detects that a constraint fails, it adds a message to the page of the property identified in the left portion of the require field (if any). The presence of this message ordinarily prevents the system from saving the page containing this property value to the database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Can you apply constrains on embedded page properties?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Your business wants to show the constraints violation error immediately, rather than waiting till end. How can you can do it?

A

Make use of flow action and harness rules, by enabling the checkbox for enable expression calculation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

When should you use a Decision Table?

A

When there is a possibility of deriving a value from more than one choice

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

What happens when one of the rows in a Decision Table rule returns false?

A

If any of the conditions in a row evaluate to false, processing continues with the next row

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

What is the significance of evaluate all rows in a Decision Table rule?

A

It ensures that the entire Decision Table has been evaluated before returning the result

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Your business has decided to give 50% off to a product if the card member is Gold, if Silver then 40%, otherwise give flat 10% . How will you design this?

A

We can do it using Decision Table rule, where we get the discount amount based on return value from the table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

Your business wants the manager of particular location to decide which month they want to give discount. How will you do that?

A

We can delegate a Decision Table and let the manager make the changes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

What is the typical usage of Decision Tree?

A

Use a Decision Tree to record if/then logic that calculates a value from a set of test conditions organized as a tree structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Where can a Decision Tree be referenced?

A

Flow, Activity, Declare Expression

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Where can a Decision Table can be referenced?

A

Flow, Activity, Declare Expression

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

From a Decision Tree, what are the rules you can call?

A

Decision Tree, Map Value, Decision Table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

Is there any limit for the number of nodes of a Decision Tree?

A

300-500 max (as post performance might get impacted)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

Does Decision Tree produce forward or backward chaining?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

What do you mean by Declare Constraints?

A

Constraints rules are used to define and enforce comparison relationships among property values. They can provide an automatic form of property validation every time the property’s value is “touched”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

What is forward chaining?

A

Forward chaining allows for the automatic propagation of changes in one property value to changes in other property values or to indexes

For example - the way the system evaluates constraints automatically each time a property is identified in a constraints rule is changed is known as forward chaining.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Give some examples where forward chaining is used?

A

Declare Expression rules (whenever inputs change), Declare Trigger and Declare OnChange rules.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

What is backward chaining?

A

Backward chaining executes Declare Expression rules when a value is needed for a property, rather than when inputs change.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

Give an example where backward chaining works?

A

Backward chaining applies to Declare Expression rules

  • When no value is present
  • When property is missing
  • Whenever used
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

What is a Locatable page? Where are they used ?

A

Locatable pages reduce the need for pages to be explicitly named in the rule. They can be used with Constraints and Declare Expression rules. There is no need to use “When” condition if you use this feature in backward chaining.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

How does Rule Resolution work when it looks for Declaratives?

A

1) Filters candidate rules based on a requestor’s RuleSet list of RuleSets and Versions
2) Searches through ancestor classes (in the class hierarchy) for candidates when no matching rule is found in the starting class

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

Can you circumstance a Declarative rule ?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

What can cause Declarative rules to be re-evaluated ?

A

When a circumstance property’s value changes, the declarative network re-evaluates the expression or constraint. However, if a circumstance property reference uses a top-level page name, changing that property’s value does not cause the declarative network to re-evaluate the expression or constraint.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

What does Context-free expression rules mean?

A

A context-free expression rule is a Declare Expression rule that applies to an embedded page or pages. It computes the value of a target property in every page of that class that appears on the clipboard (regardless of the name, class or content of higher-level pages above the embedded page)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

What are some of the best practices for Declare Expression?

A

Never change the target properties manually, prefer to use whenever used

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

Your business wants you to design a mechanism so that, whenever someone modifies the interest rate, the regional head gets a mail. How will you implement it?

A

Use Declare OnChange targeting the interest rate property, and call an activity of OnChange type to send email notification.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

Your business wants that if any of their customer has failed to pay one year EMI, then they will no longer be able to apply for any new product of the bank and all the existing requests will be frozen or cancelled. How to implement it?

A

We can set a flag which can be checked before creating any new request for the customer. We need to track the same flag via a Declare OnChange rule and then suspend all work object via that.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Can an OnChange type rule call or branch to a non-OnChange rule?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

What are the best practices of Declare OnChange ?

A
  • Don’t create an infinite loop
  • Don’t attempt to overtly set the value of a property that is the target of a Declare Expression rule
  • Design the OnChange activity to execute quickly
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

What is policy override flow?

A

It a kind of flow used to handle some special cases (eg; policy breaches, etc.)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

What are the main components required to have the policy override flow in place?

A
  • Property (to show business exception OnChange rule)
  • Flow
  • Reviewer with ReviewPolicyOverride privilege
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

Is there any router in place to take care of the routing of policy override flow?

A

ToPolicyOverrideOperator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

Is there any out-of-the-box flow for the policy override flow?

A

Work-.PolicyOverride

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

What is the difference between DeclareOnchage-Suspend workitem and policy override ?

A

“Suspend workitem” completely rejects the work items (via policy override). Other work on the work item is blocked until the review completes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
66
Q

Your business has given the following use case: User will enter their date of birth and the age will be automatically populate. How will you do that?

A

Use Declare Expression and retrieve it by subtracting the Date of Birth from current date time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
67
Q

Your business has given the following use case: User will enter their date of birth and the age will be automatically populate. You are taking two date types parameter, but age is not date type. How will you convert from date time to integer ?

A

Use “datetimedifference” function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
68
Q

Using Declare Expression is a way of performing forward chaining or backward chaining ?

A

Both. If you select “Whenever input changes”, it behaves as forward chaining. “Whenever used” indicates backward chaining

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
69
Q

Your business wants to give provision to your end manager to adjust the calculation of final loan disbursed amount (by offering some random discount ). How you can do this?

A

We can delegate the Declare Expression rule to the manager.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

A developer complained that he has successfully created a property but when he is trying to define expression for the same, it is failing to do that. What could be the possible reason?

A

Check whether “Cannot be declarative target” is checked or not. It should be unchecked.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

Can you use symbolic page or primary page ?

A

No. You cannot use symbolic page names (ie; primary or step-page) because they are meaningful only in an activity execution context

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
72
Q

Can you create a Declare Expression on a property defined in Rule-Declare class?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
73
Q

Can you define Declare expression on page list properties?

A

Yes. Under the page context field, identify a Page List or Page Group property reference plus parentheses, starting with a period and omit any index between parentheses

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
74
Q

Suppose you have created two Declare Expression for the same property. One is with page context “myPage.EmployeeAge” and the other is only the property “EmployeeAge”. At run time which one will run?

A

The one with longer reference will execute.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
75
Q

What are the decision rules you can refer from Declare Expression?

A

Decision Tree, Decision Table and Map Value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
76
Q

Can you fire a Declare Expression from an OnChange type activity?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
77
Q

Your client wants to implement a use case so that whenever report instances get saved in production, you get notified. How will you do that?

A

Create a Declare Trigger

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
78
Q

When is Declare Trigger used?

A

Create Declare Trigger rules to cause an activity to run when instances of a specific class are created, updated, or deleted in the database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
79
Q

Is Declare Trigger forward or backward chaining?

A

Forward chaining

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
80
Q

What are the different types of event for which a Declare Trigger can be configured?

A

Saved, Deleted, Saved, Modified, Committed save and Committed deleted.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
81
Q

You don’t want to engage your main thread to run trigger every time you perform a save. Is there any alternative to achieve it?

A

Design the trigger with trigger in background option. It will ensure that the activity executes in a new requestor, outside of the context of forward chaining.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
82
Q

A developer complained that they have designed trigger with “run in background” option but still can’t get it worked correctly. The changes are not reflecting. What could be the reason?

A

If you choose “run in background”, the activity should include a Commit method

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
83
Q

A developer is planning to use obj-save with write now with a trigger activity in background thread. Is it advisable or not?

A

No, this is not advisable, because it is not supported.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
84
Q

What are the property types you can set in a trigger ?

A

Single Value, Value List or Page List property

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
85
Q

Your client has the following use case: they want a manager to update the CTC of every employee. They also want to store the old CTC separately. How will you do that?

A

Design a Declare Trigger to track change of the property and set a property in the field “copy value to” in order to capture the old data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
86
Q

A developer designed its trigger activity in such a way so that it accesses some data from Clipboard and process it. He also chose to run it in background. At runtime, it does not work. What could be the reason?

A

The triggered activity cannot access Clipboard pages other than the primary page. So if he tries to access any other page, then it will fail

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
87
Q

When can you use file listener?

A

File Listener form in conjunction with Service File rules to import data from a file or files into your system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
88
Q

What is the purpose of “associated ruleset” for file listener?

A

It is required to define when you want to do a ruleset specific packaging. If you keep this empty, system will pick up the application ruleset.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
89
Q

What are the various way to start a file listener?

A
  • Run on all nodes
  • Node based startup
  • Host based startup (NodeClassification based startup)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
90
Q

What is the difference between Node based and Host based?

A

Node based startup is when the listener is started only on specified nodes.
Host based startup is when the listener is started on a specified number of nodes on specific servers within the cluster.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
91
Q

How you can make the listener pick every file from a specified folder?

A

In the Source name mask field, if we define . then it will pick up all the files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
92
Q

Your business wants the listener to read only the csv files. How to do that?

A

In the source name mask field, you can define *.csv

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
93
Q

Your business wants the file listener to process s multiple files at the same time. How to achieve it?

A

Mention a single digit number (greater than 1) in the concurrent thread field.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
94
Q

What is pooling interval?

A

It is the number of seconds that a listener waits before it checks for newly arrived files

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
95
Q

Your system consists of a single server node or the file listener is set to run only on a single node. Will you lock the temporary file?

A

No. It is advisable not to lock it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
96
Q

Your business complained that few of the files are not getting picked up by file listeners while others are getting picked up properly. What could be the reason?

A

One issue could be that the files are empty, and if you want the empty files to be picked up and work by listener, it is better to check the option “Process Empty Files?”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
97
Q

How do you let the listener know what to do with corrupted or erroneous file?

A

Under error tab, for the File operation field, choose Rename or Delete to specify what to do with files in error

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
98
Q

What is Guest user in PEGA?

A

They are unauthenticated requestors (typically have access to only the rules in the rulesets in the PRPC:Unauthenticated access group). The Clipboard for a guest requestor does not include pages for the Operator ID, organization, division, or organization unit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
99
Q

How do you customize the log in sequence for all operators?

A

Modify the Code-Security.ApplicationProfileSetup activity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
100
Q

Business wants two operators from two different units to be part of same workgroup. Is it possible?

A

Members of a work group may belong to different organization units, divisions, or even different organizations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
101
Q

If your browser locale is French but your user locale is German, which one will be picked up at run time?

A

German locale.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
102
Q

A developer complained that while updating a user Email ID in an Operator ID rule form, they are getting an error stating the length is more than 40 character. How will you solve it?

A

pyEmailAddress property has the limit of 40 characters (can be overrided)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
103
Q

Where in DB does the Operator ID normally gets stored?

A

pr_operator table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
104
Q

Your business wants to restrict the access to a particular workbasket only to few set of users. How will you do that?

A

Set a new role for those set of users and define the same role under the role field in the workbasket

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
105
Q

What is workbasket?

A

Queue of open items

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
106
Q

How many types of workbasket can be there?

A

Two types. Standard and Robotics

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
107
Q

What are the pre-requisites to create custom mobile app?

A

Have to set the following settings system-wide:

  • MobileBuildServerAuthentication authentication profile.
  • DSS: pega/mobilebuild/baseurl
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
108
Q

As a developer you need to debug a mobile app. How do you Enable the Client Clipboard and setting debugging options?

A

Have to select the “Enable debugging” check box in the advance tab of mobile build tab.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
109
Q

What happens if an offline-enabled mobile app fails to synchronize data after reconnecting to the server?

A

Pega platform generates a PEGA0066 alert.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
110
Q

Suppose we try to login to mobile app and received “HTTP Basic authentication failed error” during login. What could be the root cause for this issue?

A

This issue applies only if the Oracle WebLogic web application server is used by the Pega Platform. To overcome it, set the following Oracle SOA 11g partner link binding property to true (oracle.webservices.preemptiveBasicAuth=true)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
111
Q

How do you debug an offline-enabled custom mobile app?

A

Have to enable the log level settings for following class to debug (com.pega.pegarules.session.internal.mgmt.autostreams.packaging.PackageRunti)me

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
112
Q

How do you prevent custom mobile apps from being closed in Android?

A

Have to open pyKeepAliveTimeout Declare Expression rule and set the value of the keep-alive timeout to 0 (to turn the feature off)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
113
Q

You are working on mobile app and received the below error stacktrace:
- ERROR ITMS-90032: Invalid Image Path – No image found at the path referenced under key ‘CFBundleIcons’: ‘AppIcon20x20’

What could be the root cause of this issue? How do you resolve?

A

The possible root could be a Missing icon for the device. You can add missing icons to the “asset.zip” file to fix the issues.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
114
Q

What is data page?

A

Data pages store data that the system needs to populate work item properties for calculations or for other processes.

Note -known as “declare pages” and “declarative pages” in Pega 7

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
115
Q

What happens when the system references a Data Page?

A

The data page either creates an instance of itself (on the Clipboard) and loads the required data in it (for the system to use); or responds to the reference with an existing instance of itself.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
116
Q

Your business user reported that they are facing slowness while accessing a grid. You found that the grid is sourced from a data page. How you will you conclude that declare page is causing the slowness?

A

Most likely will see a “PEGA0024 ALERT” in the log, which will indicate about the same.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
117
Q

Where in Clipboard will you find Read-only Data Page and Editable Data Page?

A

Read-only will appear under Data Page list, and Editable under User Page

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
118
Q

What are the different Data Page structures?

A

There are two types :

  • Page (contain single object)
  • List (contain multiple objects)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
119
Q

What are the various scopes for Data Page?

A

There are 3 scopes: Thread, Requestor and Node (server)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
120
Q

What is a Thread based Data Page?

A

Treated in single requestor thread, and accessed as often as needed in the thread

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
121
Q

What Requester based Data Page?

A

Requester can access the page loaded across all threads

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
122
Q

What is the disadvantage of Editable Data Page?

A

They can’t have a refresh strategy, and can only have thread and requester

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
123
Q

Your business wants to source data for the data page from two locations one will serve as primary and other as secondary. Can you achieve it?

A

Yes, provided we define a When rule (which evaluates a condition to decide which source should be picked up) for supplying the data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
124
Q

What are the various sources you can define in a Data Page?

A

Connector, Activity, Data Transform, Look-up and Report Definition

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
125
Q

A developer complained that he can’t see the “look up” as an option for a data page source. What could be the reason?

A

“Look up” can only be used as a data source for page-structure data pages. So possibly he forgot to select that.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
126
Q

What are the various refresh strategies of Data Page?

A
  • Can choose to reload once per interaction

- Can specify when we don’t want this refresh to happen or how long it can wait before getting refreshed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
127
Q

Is it possible to use Page Remove to remove the data page?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
128
Q

When does the Data Page gets removed from system?

A

It depends on various page types:

  • For node scope, it gets removed only upon server shut down
  • For thread scope, it get removed when requestor of that thread logs out
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
129
Q

What is Node based Data Page?

A

Any requester executing on the current node can access the pages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
130
Q

What is NLP?

A

NLP is a reference application that showcases the text analytics capabilities of the Pega 7 Platform

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
131
Q

How many text analyzers does PEGA provide for Intelligent Virtual Assistant for Facebook?

A

5: Pre-NLP, In Case escapes, Global NLP, Post NLP, Simple NLP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
132
Q

What does Simple NLP do?

A

Case-sensitive text analyzer that interprets the exact text entered in the message and compares it to the literal names of commands.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
133
Q

Can you modify Simple NLP?

A

It is recommended not to modify it

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
134
Q

What is Post NLP?

A

Manages commands that have special functions after the message has been received

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
135
Q

What is Global NLP?

A

When the customer is not in the middle of a service case. All queries/responses and case commands should be provided for this NLP taxonomy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
136
Q

What is In-Case NLP?

A

It is used for circumstances where the user is in the middle of a service case

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
137
Q

What is Pre-NLP?

A

Manages the status of an Intelligent Virtual Assistant for Facebook Messenger to understand whether the Messenger is currently in the middle of a service case or is interacting with a live agent.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
138
Q

How can you configure NLP?

A

Use either a rule-based model or free-text model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
139
Q

What is the benefit of NLP?

A

NLP makes it possible for you to classify content that is posted on social media (in the form of tweets, posts, comments, messages, and so on) into various categories to make that content easy to sort and manage

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
140
Q

Your client wants to upload their custom NLP taxonomy. What are the columns the CSV file must contain ?

A

Primary, Second, Should words, Must words, And words, Not words, Child match, and Node type

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
141
Q

What is the significance of Should words column in NLP’s CSV file?

A

This column is very important for category assignment. If the text analyser encounters any of the words or phrases that are in this column, the text analyser assigns the content to the corresponding category

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
142
Q

What is the significance of Must words column in NLP’s CSV file?

A

You can narrow down your categorization conditions by specifying the words that the content must contain to be assigned to the corresponding category.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
143
Q

What is Node type column in NLP’s CSV file?

A

The values in this column indicate whether a row is a category or not

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
144
Q

What are the some of the best practices of creating NLP taxonomy?

A
  • Create an exhaustive list of categories
  • Test your taxonomy
  • Maintain taxonomy regularly
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
145
Q

A developer is trying to commit in an activity but getting a error saying the property has been truncated. What could be the issue?

A

Commit method takes 4 mandatory properties (ObjClass, ClassName,InsKey and InsName). If any one of these four properties contains a value that is longer than the width of the database column, the system associates a warning message.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
146
Q

You did a commit and then ran a report definition. The report fetched the data with (+) symbol in it? What could be the reason?

A

While doing a commit, if properties contains a value that is longer than the width of the database column, then though the data get saved, the system changes the last character of the truncated value to a plus sign (+) character

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
147
Q

What are some of the best practices about commit?

A
  • Commit method should occur only after errors are intercepted, checked, and corrected.
  • It should include a transition in the Commit step that checks the status
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
148
Q

You are performing a commit operation but it is taking long time at DB end, what properties will you check?

A
  • Performance tool report on Commit operations
  • Elapsed time writing to the database (property Code-Pega-PAL.pxCommitElapsed)
  • Database Commit Count (property Code-Pega-PAL.pxCommitCount)
  • Database Rows Committed (property Code-Pega-PAL.pxCommitRowCount)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
149
Q

Can a regular rule use End Validate method ?

A

No, it is for custom rules

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
150
Q

When is Flow-end method used ?

A

This method is used to immediately end a flow execution, before execution reaches a Flow-End shape. Used mostly to handle exceptional situations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
151
Q

Give an example where you will use Queue For Agent method?

A

This method stores a request for processing as a persistent object (entry) in the system queue. So it is used if there is an application need to queue an agent for processing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
152
Q

Can we use any other alternatives of Queue for Agent method?

A

Your application can call the standard activity @baseclass.QueueForAgent,

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
153
Q

What is default value for “maxAttemps” in Queue For Agent method?

A

1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
154
Q

You have defined “maxAttempts” as 2 (in Queue For Agent method) and the agent failed 2 time. What will happen next?

A

If the agent attempts to process the entry this number of times without success, it keeps the item in the queue but changes its status to Broken-Process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
155
Q

Is it required to define “MinimumAgeforProcessing” in Queue For Agent method?

A

It is important to ensure that a user releases all work item locks before an agent attempts to process the queue entry. To address this requirement, configure a small delay with the MinimumAgeForProcessing parameter. The default value is 0, which means the agent can process a queue entry immediately

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
156
Q

As a user, you are trying to fix broken item but facing an insufficient privilege error. What could be the reason?

A

Users who hold the @baseclass. ReconcileBrokenQueueItems privilege can re-submit or delete broken queue items. If you don’t have it you can’t work on it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
157
Q

Your business needs to reload the entire session without logging off. How will you achieve it?

A

When you want to reload, this requires reload of thread page. So I would go for “Thread Clear” method. It will clear the Thread pages for your current session, except for any pages specified in the “KeepPages” parameter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
158
Q

Will Thread-clear method also clear the worklist?

A

Depends on whether the “EmptyTaskLists” is selected or not. If selected, it will clear activity worklist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
159
Q

Consider a situation where a developer has used Obj-Open but forgot to select the option of ReleaseOnCommit. You are working on something else and faced an unusual situation of being unable to use the page because it is locked. How will you proceed?

A

Opt for “Page-Unlock” method to release a lock that is no longer needed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
160
Q

Which one will you prefer, Obj-Save or Commit?

A

Obj-Save is preferable. Use this method to request that the system saves a Clipboard page to the PegaRULES database or (if the page belongs to an external class) an external database. You can reverse the effect of an Obj-Save method (if it has not yet been committed) with the Obj-Save-Cancel or the Rollback method.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
161
Q

Can you do Obj-Save with write now for a trigger type activity?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
162
Q

What is the difference between Obj-Save and RDB-Save ?

A

RDB-save saves the contents of a Clipboard page into a row of a relational database. Use Connect SQL rules and the RDB-Save method only with an external database.

Note - do not use Connect SQL rules or RDB methods to update the PegaRULES database.
Note - because not all properties in the Pega 7 Platform databases are distinct database columns, use the Obj-Open and Obj-Save methods, not the RDB- methods, with the PegaRULES database to prevent loss of data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
163
Q

What is “RuninParallel” indicates in RDB-Save?

A

When the “RunInParallel” box is selected, the SQL operation occurs in a new requestor session. This temporary requestor has the same access group and Clipboard as the original.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
164
Q

How many parallel threads can be spun off via RDB Save?

A

Max 10

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
165
Q

A developer complains about seeing a log entry that says “Obj-Save is trying to write to a non-existent column”. What could be the reason?

A

This error can occur when two different PRPC database schema are present in the same database, but the “Data-Admin-DB-Table” instances do not explicitly identify which schema to use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
166
Q

Can we delete external database row?

A

Yes. Use RDB-Delete, to delete a row or rows from an external relational database using SQL

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
167
Q

What is the significance of “pxMethodStatus” and “pxMethodStatusInfo” properties?

A

Most methods update the “pxMethodStatus” property on the pxThread page (with a status that starts with Good, Warn, or Fail). These three values are prefixes to a message key that is looked up as a field value rule.
Optionally, your activities can place additional information about an error or result in the property named “pxMethodStatusInfo”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
168
Q

Give two examples when an Obj-Save can fail?

A
  • You cannot save a page that is locked by another requestor
  • You cannot save pages of any class derived from the “Code-“ base class or the “Embed-“ base class.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
169
Q

When do you use “Obj-Refresh-and-Lock” method?

A

Use this method to assure that the contents of the step page are current, and a lock is held on the corresponding object. This is useful if you are not certain whether the contents of the step page are current or whether your requester session already holds a lock on the page.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
170
Q

Can Obj-Refresh and lock fail?

A

If the object is locked and the lock has not expired, this method has no effect

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
171
Q

One developer forgot to check the Release On Commit checkbox? How you can retain the lock?

A

Use Page-Unlock method.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
172
Q

What is LockInfoPage?

A

As a debugging aid, identifies the name of a page (to be created by this method) to hold the results of the locking attempt when it fails. By convention, this page is named LockInfo in standard rules

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
173
Q

How does the system determines whether the current Clipboard page is stale or not?

A

Compares the last update time stamp of the instance on the step page on the Clipboard (property pxUpdateDateTime) with the pxUpdateDateTime time stamp of the instance on the database. If the times are the same, the Clipboard copy is not stale; if they differ, the Clipboard copy is stale. DateTime values are captured to the nearest millisecond.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
174
Q

Can we update rule instance via Obj Refresh and Lock?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
175
Q

What is activity?

A

Sequential processing unit of Pega. Consists of one or more steps

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
176
Q

Where are local variables stored?

A

Local variables are stored together as fields in the Java class (that PEGA generates) to implement the activity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
177
Q

Is there any property that holds the reference of the iteration inside a loop of activity?

A

Yes. “pyIterationTarget” does it. For page and repeat types, it is blank. For embedded, it is the step page reference

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
178
Q

When do you use &laquo_space;current&raquo_space; ? Give an example.

A

The symbolic reference can be used only in the activity step that defines the iteration.

For example - for a repeat type of for-each embedded list, refers to the Clipboard Page of the current iteration. For other repeat types, refers to the index number of the current iteration, and corresponds to the “pyForEachCount” parameter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
179
Q

How many ways you can achieve looping in an activity?

A

We can get it done in five ways:

  • For each top level page
  • For each embedded page
  • For each element in value list
  • For each element in value group
  • For loop
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
180
Q

What is the significance of template in activity?

A

Selecting a template automatically sets the activity type

The following options are available:

  • Route
  • Locate
  • Trigger
  • Utility
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
181
Q

Is there any alternate way to achieve same result like activity?

A

Although we can’t tell that PEGA has rules which work just like activity, we have some other mechanism to achieve similar results like activity:

  • Use data transform
  • Use Linked property
  • Change work item status in flow
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
182
Q

Can you explain how activity works?

A

When a requestor session runs an activity for the first time, the system converts information from the activity into Java, compiles the Java, and executes it. Later executions (of the same activity in the same ruleset, version, and so on) reuse the compiled Java

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
183
Q

If a lock is held and you perform a commit, what will happen to it?

A

All locks held by the requester Thread will be released

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
184
Q

What happens when a commit occurs in activity?

A

The system commits all deferred write operations (including deletes) for this requestor in the queue to the database. If any of the writes fail, they all fail

185
Q

Can you do commit for a work- class or @baseclass?

A

Yes, but it will issue a warning.

186
Q

Is it advisable to use commit in a utility type activity?

A

No. Flow processing performs commits automatically when the flow ends

187
Q

Which method will you use to load a data page?

A

Preferably “Call-Async” activity, which loads a data page and run asynchronously

188
Q

As a developer, what would you prefer to use, Activity Exit or Activity End?

A

Ideally, Activity Exit is widely used. But if business demands something which can be fulfilled with methods like Activity End, then we have to use that.

189
Q

What is the difference between Activity End and Activity Exit?

A

The Exit-Activity method ends the current activity and returns control to the calling activity. If no calling activity exists, the system starts the next activity in the activity list. But Activity End aborts all the activities in the stack.

190
Q

What is the usage of Activity End ?

A

If there is a need to terminate all the activities in a call stack, then we can use this method.

For example - if one activity calls another activity that executes the Activity-End method, both activities end; the system does not return to the calling activity

191
Q

What are the methods that do not need a step page ?

A
  • Obj-Open
  • Obj-Open-By-Handle
  • Obj-Refresh-And-Lock
  • Page-Change-Class
  • Page-Merge-Into
  • RDB-Open
192
Q

A developer is trying to pass a parameter as a local variable to another activity, is it advisable?

A

No. You can’t do this. You will end up getting an error when saving the activity.

193
Q

Why would you prefer to use a local variable?

A

Local variables require less memory and execute faster than regular parameters. They are often used to pass information from step to step.

194
Q

You are creating an activity and entered into a loop, can you perform Obj-Refresh and Lock via a loop?

A

No

195
Q

What is a handle?

A

The handle of an instance is a unique key, in an internal format, assembled by the system that identifies an instance in the PegaRULES database

196
Q

What would you prefer to have “Obj-Open” or “Obj-Open-By-Handle”?

A

Use the Obj-Open-By-Handle method only if you can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method.

197
Q

What is the difference between RDB-Open and Obj-Open?

A

Use RDB-Open method to retrieve a single row (record) of data from an external relational database and add the retrieved data into a specified clipboard page as property names and values. Use Connect-SQL rules and the RDB-Open method only with an external database. Do not use Connect-SQL rules or RDB methods to update the PegaRULES database(s)

Use the Obj-Open method to open an instance stored in the PegaRULES database or in an external database linked to an external class, and save it as a Clipboard page.

198
Q

Can you use DB Trace for Connect-SQL Performance track?

A

Yes

199
Q

Suppose you are using Obj-Open and mentioned a step page, say PageA. Now at runtime, the clipboard already has some data in PageA. What will happen if Obj-Open Runs at that time?

A

If it finds the specified step page, the system clears any data that is on it and reuses the page. If no existing page has a name matching the specified step page, the system creates a new page.

200
Q

What is RDB-List method?

A

Use this method to retrieve rows from an external relational database and place the results as embedded pages in a specified step page of class

201
Q

Where in RDB- method you will specify the DB type?

A

Under the Package name

202
Q

Can you use declarative for RDB List?

A

Yes

203
Q

Is there any way to to determine whether a specific instance exists in the database ?

A

You can call the standard function rule “pxDoesHandleExist()” in the Utilities library

204
Q

What is Auto Queue Management (AQB)?

A

Available with Standard type of agents, AQM can help with requeing the item (just in case the agent fails to process a queue item)

If you disable it then the agent will attempt only once to process the item, and in case of failure it will not retry

205
Q

What are the various node type available for agent?

A

There are four nodes:

  • Background Processing node (runs the agents on a background node)
  • BIX node (runs the agents on a BIX node for BIX jobs)
  • Search node (runs the agents on a search node for search jobs)
  • Web User node (runs the agents on a web user node for web user jobs)
206
Q

What is Queue Manager?

A

The Queue Manager is the internal server facility that supports queued items created by the Queue-for-Agent method. Agents with a Queue Method value of Standard (on the Schedule tab of the agents rule form) use the Queue Manager.

207
Q

How do you start and stop an agent from Queue Manager?

A

Use SMA/Landing page tools to start up or stop agents

208
Q

Can you control which version of agent to run in Queue Manager?

A

The Agent Manager does not use rule resolution to determine which version of an agents rule to run. The highest version always runs.

209
Q

Can you set an agent locale in Queue Manager?

A

No. The batch requestor honors the default server locale settings, including the default calendar.

210
Q

Which clock does an agent follow in Queue Manager?

A

Generally the server clock .

211
Q

Agents are just like users, which is automated in nature. Is there any difference with real time user?

A

Agents do not have an associated organization, division, or unit neither they have an associated business calendar

212
Q

Where will you find Node ID in Clipboard?

A

This identifier is stored on the process page as property “pxProcess.pxSystemNodeID”, and is used in log files

213
Q

What is host name in Agent Nodes tab?

A

It is the server name of the node

214
Q

Why standard agent do not require an access group?

A

For standard agents, each queue item is processed in the authorization context of the user whose actions or processing (work item, assignment, and so on) generated the queue item.

215
Q

What is the significance of Auto Queue Management (AQM)?

A

When AQM is enabled, the system locks items that are retrieved from the queue by the agent until the agent is finished with the item (commit or rollback). If a transient condition means that the item cannot be processed (such as if the work item is locked), the system queues the item again and the agent can try processing it the next time it wakes up.

216
Q

What are the various modes of agent?

A

There are 3 types of modes:

  • Legacy (for old agents. This option is not available for agents created in PRPC 5.4 or later)
  • Standard (indicates that this agent processes items from an agent queue and that it relies on the system to provide object locking and other transactional support)
  • Advanced (indicates that this agent uses custom queuing. This is the option is recommended when the Pattern field is set to Startup)
217
Q

Business wants to configure the interval period of 10 seconds, how will you do that?

A

To configure an interval less than 30 seconds (and at least five seconds) create the agent/minimumwakeup environment variable in the prconfig.xml file.

218
Q

What are the patterns of agent in Queue Manager?

A

Generally 3 types:

  • Periodic agent (runs the activity and then sleeps for the number of seconds entered in the Interval column)
  • Recurring agent (runs the activity based on a specified calendar schedule (for example, every Monday at 5:00 PM)
  • Startup agent (runs the activity once at startup based on a specified parameter)
219
Q

What is the general wake time (for agents in AQM), and how to change it?

A

By default, this operation occurs every 10 minutes. This value can be updated in the prconfig.xml file setting:

220
Q

We often talk about automatic timeout. Who handles this?

A

Generally master agent monitors idle requestor sessions to enforce automatic timeouts.

221
Q

What is master agent (for Queue Manager)?

A

Master agents are background processes operating on each Pega Platform node that are not defined by agents rules

222
Q

You have to programmatically re-opens an assignment and redraw the flow action on the screen. Which API will you use?

A

Refresh(onSuccess,OnFailure). This works in perform harness.

223
Q

Can you finish an assignment via activity?

A

Yes, by using finishAssignment() API

224
Q

What is process API?

A

Process API consists of the rules for standard activities, flows, and flow actions that you can use to start and advance flows without using user forms.

225
Q

What is PEGA API?

A

Pega API powers client and mobile apps (by using built-in Pega REST services)

226
Q

What are the various Pega API categories?

A

There are around 6-7 Pega APIs:

  • Assignments
  • Authenticate
  • Cases
  • CaseType
  • Data
  • Docs
  • Users
227
Q

A developer complained that he is not able to access or work with Pega API. What could be the reason?

A

Check whether PegaRULES:PegaAPI and PegaRULES:PegaAPISysAdmin access role are added or not.

228
Q

What is Public API?

A

It is the supported public interface to the rules engine.

229
Q

What is Engine API?

A

Engine API sometimes refers to Public API is supported public interface to the rules engine

230
Q

What is Cross Origin Resource Sharing?

A

Cross-Origin Resource Sharing settings (in Pega 7) enable you to control and secure the use of the Pega API services embedded in your web or mobile client application. Configure these settings to permit Pega API access across domains you trust using the headers you specify.

231
Q

What is offline validation API?

A

The offline validation API consists of a JavaScript method that allows you to run a validate rule in offline-enabled applications.

232
Q

How you can use offline validation API?

A

We can use it by running a script action or a custom JavaScript function.

233
Q

How can you control the work object history written to the audit trail?

A

Update the system setting FilterHistory with Write Some or Write ALL, then update the Decision Tree Work-FilterHistory to modify it

234
Q

How can you alter the history written for an old assignment?

A

History instances already written remain in the audit trail (can’t be changed)

235
Q

You are system admin and want to track security related alert. Instead of screening through the entire Log, is there an easy way to segregate the same?

A

The Alert Security log contains alerts (named “SECUnnnn”) specific to security issues. So watch out for those log.

236
Q

Name few tools that can be used to monitor garbage control for your application?

A

PMAT and JMETER

237
Q

Is there anyway to determine the Clipboard size?

A

There are multiple ways to view Clipboard size:

  • Run PAL > Perform typical user functions > Select “Add reading with Clipboard Size”.
  • Open Clipboard > Select Action > Analyze Clipboard
  • Select System Management Application > Requestor Management > Requestor Summary
238
Q

As an LSA, how will you estimate an application’s memory footprint?

A

You can estimate an application’s memory footprint by multiplying the size of the Clipboard by the peak number of users

239
Q

How will you understand that application is failing to collect garbage?

A

PEGA0028 alerts. The alert indicates a failed garbage collection attempt (the process failed to reduce the used memory in a particular memory pool below a specified threshold)

240
Q

Suppose you recommended the system admin to increase the heap size, but admin said it can’t be possible. Is there any alternative to increase heap size?

A

If the heap size cannot be increased, lower the number of users per JVM (by adding an additional JVMs to the system)

241
Q

What will be your recommendation for agent in JVM?

A

Pega recommends using a separate virtual machine for agents, especially in multi-node Process Commander systems.

242
Q

What is AES?

A

AES monitors, gathers, and analyzes performance and health indicators from multiple SmartBPM systems across the enterprise.
AES aggregates the most serious alerts and exceptions into work items (for use in a work flow) that can be assigned for diagnosis and resolution.
AES consolidates and summarizes the Pega log and the JVM GC log (which provide key information about each of the monitored nodes)

243
Q

What is the ideal size of Clipboard?

A

The Clipboard should be no larger than 6 MB on average, and no single Clipboard page or repeating pages should exceed 5 MB

244
Q

What is the recommended DB query running time?

A

No single database query should exceed 5 seconds of CPU.

245
Q

What is the recommended Maximum bytes of data sent from browser to server?

A

15 MB on an average .

246
Q

Is there any limit for Maximum declaratives executed (all types)?

A

Yes. The best practice says, it should not be more than 45K

247
Q

What is the ideal Maximum CPU time?

A

180 Seconds (3 minutes)

248
Q

At a time, how many requestor Execution of RDB database operations is permitted?

A

8000

249
Q

Imagine a hacker tried to attack the system, but system prevented it. As an admin, how will figure it out?

A

You will see an alert SECU0006.

250
Q

Which alert suggest that there was an unauthorized access for user session termination API?

A

SECU0013

251
Q

Name few performance related alerts?

A

PEGA0001 : HTTP interaction time exceeds limit
PEGA0002 : Commit operation time exceeds limit
PEGA0005 : Query time exceeds limit
PEGA0011 : Total request time exceeds limit
PEGA0018 : Number of PRThread Exceeds limit
PEGA0033 : DB Query length has exceeded a specified threshold

252
Q

Your business wants to freeze the browser and challenge the user to enter user ID and password, if they keep the system idle for more than 10 min. How will you do that?

A

Enable the authentication timeout under the access group rule.

253
Q

What is BLOB caching?

A

BLOBs that are stored in table rows use the same buffer caching rules as the tabular row (as they reside in the same data block as the rows). By default, BLOBs stored out of the row use direct path reads and writes to store and retrieve data without caching.

254
Q

Do you recommend BLOB Removal?

A

Database tables which are the target for Rule-Declare-Index rules are candidates for optimization (by removing the pzPvStream (BLOB) column).

For example - if work parties are used in work items and no customization is required, removing the pzPvStream column from the pc_index_workparty table can improve system performance.

255
Q

Where is cache stored?

A

Most caches are stored in the system memory (JVM) or on disk

256
Q

What is rule cache?

A

Rule cache holds data about the reads done from the PegaRULES database for rule classes. If the data is available in the database, the system retrieves the rule, stores it in the Rule cache, and then sends the rule information back to whichever process requested it.

257
Q

What if rule cache is not tuned properly?

A

An incorrectly sized Rules cache may bog down memory resources

258
Q

What is rule assembly cache?

A

Rules Assembly cache is used to minimize Java code generation and compilation mainly by tracking RuleSet lists and user entire.

259
Q

What is the significance of proper tuning of Rule assembly cache?

A

An improperly sized Rules Assembly cache can lead to repetitive and (sometimes) continuous rules assembly.

260
Q

What is Conclusion cache?

A

Part of Dictionary cache. It contains instances of Java objects (resulting from the Rules Assembly process) that were generated, instantiated, and then persisted to the database for future use

261
Q

What is Property Definition cache?

A

It is a cache of all the Rule-Obj-Property instances used by the system. This cache enhances system efficiency because properties are looked up frequently.

262
Q

Name a few caches stored in memory?

A
  • Rule Cache
  • Rule Assembly Cache
  • Dictionary Cache.
263
Q

Name a few caches stored in Disk ?

A
  • LookupList cache

- Static content cache.

264
Q

What do you mean by rule assembly?

A

Rules assembly is a technique for improving performance (by generating and compiling the Java code) that corresponds to a rule only when needed.

265
Q

What is static assembler?

A

The static assembler is a utility used to pre-assemble and cache the rules of an application.

266
Q

What is virtual rule table cache?

A

The Virtual rules table cache is the default caching setting for all Pega applications. It is automatically primed (during system startup) with rules that have been either statically assembled or built dynamically as they were used in the system.

267
Q

Is Application-Based-Assembly (ABA) caching still being used in Pega?

A

No, it is replaced by Virtual Rule Table Cache.

268
Q

What is look up list cache (LLC)?

A

The lookup list cache (LLC) is a cache of recent search results that are available for display and reuse.

269
Q

What is rule cache?

A

Rule cache contains recently found and non-found rules that are used to improve the performance of the engine, (especially during rule resolution searches). The system adds to the cache any rule that is read three or more times, however, for some rule types, a higher limit applies.

270
Q

What is database cache or system cache?

A

It is nothing but the rule cache .

271
Q

What are the rule types for which static content cache is stored?

A

Static content stored for these rule types:

  • Binary file rules (Rule-File-Binary rule type, for images such as JPG files)
  • Text file rules (Rule-File-Text rule type, for JavaScript and Cascading Style Sheet files)
  • Form file rules, for rule forms (Rule-File-Form rule type)
  • eForm file rules (Rule-File-eForm rule type, for PDF forms)
  • The location of the StaticContent directory is determined by a temporary files path setting in the prconfig.xml file.
272
Q

Is it advisable to clear production cache periodically?

A

If properly designed, an application should have high availability and high performance, even during extended periods of uptime. In a production setting, there are no requirements for periodic clearing of any cache.

273
Q

Is there any property to indicate whether rule cache is enabled in a particular node or not?

A

pxCacheEnabled is the property which shows the same

274
Q

What is pattern inheritance?

A

Pattern inheritance is an optional method where a class inherits characteristics from other classes and affects the first steps in the rule resolution algorithm. The name of the parent class is based on an initial portion or substring of the name of the class.

275
Q

What is directed inheritance?

A

Directed inheritance is the method by which a class inherits characteristics directly from a specified parent class, regardless of any defined pattern inheritance.

276
Q

Can you allow locking for concrete class?

A

For concrete classes that do belong to a class group, you have to leave the tab blank. The Lock field on the Class Group form controls locking for all the classes in the group.

277
Q

What is the significance of Allow Locking?

A

Allow Locking box causes the system to lock open instances of the class.

278
Q

Can you define a key when marking it as class group?

A

If you enter a class group, leave the Keys array empty. In this case, the class group instance defines a common key structure used by all associated classes.

279
Q

Can a developer set the availability of a class to “Final”?

A

No, Availability value for class rules is always “Yes”.

280
Q

Can class be found via rule resolution?

A

The system does not use rule resolution or rule availability to find instances of the Rule-Obj-Class rule type. Choose class names that are unique system-wide, across all applications.

281
Q

What is ruleset restriction? Where you can see it?

A

We can see it in class ruleform. Use the list in this section to control which rules can be created with pyClassName set to this class name.

282
Q

Few of your developer complained that they are trying to enable the option “Dedicated table” but unable to do it. What could be the reason?

A

This feature is available only to users with the “@baseclass.pxClassToDbTableOptimization” privilege. So watch out whether they have sufficient privilege or not.

283
Q

Your application is running in production, and due to a new client requirement, you have to create a new work class and going forward all the work item will be part of that class. How do you ensure that the old class is not referred at all?

A

Check the “Deprecate” checkbox class rule form to deprecate all instances of this class and block users from creating new instances. Only classes with the “Does not belong to a class group” option selected can be deprecated.

284
Q

What is the primary role of Pega Decision? Management?

A

Helping to determine the Next-Best-Action

285
Q

What are the three key elements of NBA?

A

Listen, Learn, and Act

286
Q

Explain some of the key strategic business directions of NBA.

A

Few of the business directions tied up with NBA are:

  • Growth
  • Service
  • Retention
  • Risk mitigation.
287
Q

What are the various features of Pega Decision Management?

A
  • Proposition Management
  • Decision Strategies
  • Interaction History
  • Visual Business Director
  • Adaptive Decision Manager
  • Predictive Analytics Director.
288
Q

What is proposition?

A

Anything that can be offered to a customer. (ie; advertising)

289
Q

Which one is safe: Adaptive or Predictive?

A

Predictive is safe

290
Q

What is a Sub Strategy?

A

A Next-Best-Action strategy is broken up into smaller strategies, called sub-strategies.

291
Q

How can you invoke a decisioning component in the BPM flow?

A

We can use the Data Flow Flow shape which usually invokes a decision strategy (via the Data Flow record)

292
Q

When do you typically want to use a decision management component?

A

When the business want to understand how to retain a customer and how much budget one should spend.

293
Q

You have to define a strategy for execution. Which shape you will use for that?

A

“Run interaction” shape can be used for this purpose

294
Q

What is switch component?

A

It is related to Pega’s DSM offering and typically used to arbitrate between two decision logics

295
Q

I want to set some offer properties. Where can I set it?

A

We can do it by navigating to the landing page related to proposition management

296
Q

What do you call the Business Rules that ensure that selected propositions have greater relevance to the customer?

A

Soft Rules

297
Q

How can we narrow down the number of results returned by an Interaction History component?

A

Based on outcome of previous interactions in the Interaction History component

298
Q

How can you upload a PMML file that contains a TreeModel model type?

A

Use the Predictive Model rule to upload all the PMML files.

299
Q

What are the six Key features of Decision management?

A
  • Proposition Management
  • Decision Management
  • Interaction History
  • Adaptive Decision Manager (ADM)
  • Predictive Analytics Director (PAD)
  • Visual Business Director.
300
Q

Which report allows you to see how frequently the proposition is offered to the customer?

A

Proposition distribution report.

301
Q

What privilege is required to have to run simulations?

A

pyRunSimulations is generally being used for this.

302
Q

What is the need of Application overlay?

A

It is used for the direct deployment of the control parameters and the default Application overlay can not be deleted (It starts with “RTC- “)

303
Q

Suppose there is a scenario, where the company has launched a new phone and it must be the top offer for all the customers. How will you achieve that?

A

Increase the Marketing weight of the new phone in the decision parameters of the Propositions; if necessary, reduce the marketing weigh value for other products.

304
Q

What are the different steps involved in creating a predictive model in PAD portal?

A
  • Data preparation
  • Data Analysis
  • Model Development
  • Model Analysis
  • Model Export.
305
Q

In the terms of Coefficient of Concordance, what does value of 50% and 100% represents?

A

50% – Random Distribution

100% – Perfect Discrimination

306
Q

Let’s have a situation where one company started their organization and created an Adaptive model. They don’t have any customer response and data with them. What should be the optimal way to go ahead and use the adaptive model in their strategy?

A

Use the smooth propensity. Once the actual response arrives, actual propensity and smooth propensity converges.

307
Q

Client said that Strategy should only output propositions with Average margin higher than 200. How can you implement the requirement?

A

We can try by using Group By- Filter component. and use a Group by component to get the Average Margin and then use Filter component to filter the proposition based on the Average margin > 200.

308
Q

What privilege provides the user the ability “Monitor Interaction History” link from navigation page showing the Actual data source in the VBD, in the decision manger portal?

A

pyMonitorVBDActuals

309
Q

What privilege provides the user the ability to click on the Update reporting data link, which ensures that a new database snapshot is taken for adaptive reporting, in the Decision Manager portal?

A

pyUpdateADMReportingData

310
Q

What privilege do you use to create a role where the end user in the portal will only be able to change proposition data and nothing else?

A

Assign pyManagePropositionData in a custom role.

311
Q

What are the Name of the flows in Revision Management?

A
  • Revision Management
  • Change-Request Management
  • Change Request Approval
  • Direct Deployment.
312
Q

Explain the concept of getNextWork?

A

It is an automated way of choosing the best, most appropriate assignment to work on next. User can see a button or link stating get next work in the portal. Upon clicking the button, Work-.GetNextWork gets called which in turn calls Work-.GetNextWorkObject. This checks the pyWorkBasketFirst property for the user. Based on whether it is true or false, it calls either findAssignmentinWorkbasket or findAssignmentinWorklist. At runtime, it also verifies whether merge workbasket option selected or not. Finally decision tree Assign-.GetNextWorkCriteria is applied to each assignment found. Then the GetNextWork activity creates and populates the newAssignPagepage, moves the assignment to the user’s worklist, and locks the work item.

313
Q

Business wants to skip specific types of work items to be picked by getNextWork. What you will suggest?

A

We can think of setting the GetNextWork_MoveAssignmentToWorklist system setting to false.

314
Q

A developer complained that despite having GetNextWork_MoveAssignmentToWorklist system setting to false still the outcome is not as expected. What could be the possible reason?

A

Perhaps the case might be using optimistic locking or it is getting called from REST API.

315
Q

What could be the possible reason that an assignment is not picked up by get next logic ?

A

If the assignment has pyActionTime in the future. or he operator already worked on it today. Also if the operator does not have required skill, the assignment will not be picked up.

316
Q

What are the extension points for getNextWork?

A

Two possible areas are:

  • finAssignmentInWorkBasket activity
  • getNextWorkObject activity
317
Q

Explain the ways to debug getNextWork algorithm.

A

Any debugging should start with Tracer. So I would opt for Tracer and in the Tracer settings, under event type, will mention process engine so that at run time it captures only the engine related events. Post that from Tracer I can find out the SQL query which is used to retrieve the case .

318
Q

Business wants that as soon as user finish working on assignment, he should get the next assignment and not see the confirm harness. How will you achieve this?

A

In the flow action, upon assignment completion settings, change it to GetNextWork from the default Show Confirm Harness.

319
Q

Name the Decision Tree involved in the getNextWork logic?

A

GetNextWorkCriteria. It is an available rule and can be modified as per business needs.

320
Q

Your business workbasket contains cases with skills as: French,German and Japanese. Business wants to configure getNextLogic in such a way that it does not pick up the cases where the operator does not have required skills. How to do it?

A

Enable this system setting: “GetNextWork_SkipUnskilledAssignments”

321
Q

Business wants to enable getNextWork to assemble and sort assignment in any work queue for which the work group field is the same as workgroup of the operator. How do you do it?

A

In the operator ID rule form, enable the MergeWorkbasket and also check the use all workbasket assignments in users work group field.

322
Q

How do you lock the entire ruleset ?

A

Provide password under security tab

323
Q

Your client wants to disable search for some of the classes which contains confidential information. How will you do that?

A

We can configure it by clicking “Exclude this class from search?” on the Advanced tab of the Class form.

324
Q

You store attachments on a content management system. Can you configure indexing for that?

A

No

325
Q

Your business sometimes attaches huge attachments to the cases. You have noticed that indexing got hampered or slowed down due to this huge size. How best you can handle it?

A

On the Search landing page, we can specify the maximum size of attachments to index. Attachments that exceed the threshold are not indexed. This way we can control

326
Q

How can you configure search query timeouts?

A

By enabling the DSS: “indexing/distributed/search_timeout_millis”

327
Q

There is a need to rebuild indexes. But you are not able to access any rules on designer studio due to some indexing issue. Any alternate way to trigger indexing?

A

We can run reindexing by a direct connection to the database. We need to modify the common properties and index node properties of the “prpcUtils.properties” file and then run “prpcUtils.sh” script.

328
Q

How can you specify additional properties to index?

A

We can do it by creating a custom search property data instance.

329
Q

How can you use embedded properties in filters and new data instances?

A

By setting the DSS : “Indexing/useDataInstances” to true.

330
Q

Describe some of the disadvantages of full-text search?

A

It can Produce many results that require further review.
It can disclose sensitive work item or work item attachment details to users who otherwise are not authorized to open or review such work.
It can affect system performance doing indexing and searching.

331
Q

Name the sections that support full-text search?

A
  • @baseclass.FindWork section

- @baseclass.SearchField section

332
Q

Which agent is responsible for the search and indexing?

A

PegaRules-System Indexer agent is responsible to do the indexing. It runs the standard activity Code-.SystemIndexer which updates the search index cache that supports the operations of the full-text search facility for rules and data instances.

333
Q

What is the frequency of the System Indexer agent run?

A

Typically, runs every 60 seconds

334
Q

What is elastic search?

A

Elastic search is a No-SQL database implementation for indexing and storing data that is based on the Lucene search index

335
Q

What is Stream processing?

A

Stream processing is the runtime conversion and evaluation that converts an HTML or XML text containing JavaServer Page (JSP) tags into a final form.

336
Q

Describe the processing sequence of Stream processing.

A

1) Assembles runtime Java, evaluating those tags or directives (e.g tag) that don’t involve the Clipboard contents.
2) Compiles the Java
3) Executes the Java to resolve Clipboard references and produce the final HTML (or XML).

337
Q

There is a need to programmatically add an element to the end a Value List or Page List property. How will you do that?

A

We can use .Something like .Year()

338
Q

How you can set or retrieve an element value from the end of a Value List or Page List?

A

We can use index. Something like .Year()=2017

339
Q

Generally in a year, Government holidays are fixed in any country. You maintain the holiday list in a page list. Now there is a new requirement that on election day offices should be closed. How can you accommodate the change so that the moment the election date is declared, office manager can modify the list quickly?

A

I can try Use the keyword. It takes an integer to insert a new element and its value into the Page List property at a numeric index position.

340
Q

What will happen to the value which is already present in the list at that position. For example, holiday(5)=Independence Day. Now you programmatically change it holiday(5)=Election Day. So what will happen to Independence day?

A

Any elements with the same or higher index value are “pushed down” by one. So now, holiday(6)=Indepence Day

341
Q

How you can get the current index of the page list or page group property?

A

In data transform, also we can use the keyword

342
Q

When can top keyword be used in indexing?

A

To refer a property on the top-level page of the current context of an embedded page.

343
Q

How you can force release a lock ?

A

Lock information is held in the memory of each node, rather than in the database, for improved performance. However, even in a multinode system, a requestor can force the release of locks held by any session with the same Operator ID and same user name (pyUserName) through the PublicAPI method: LockManager.unlock(StringMap, boolean)

344
Q

What debugger can will use to troubleshoot Lock related issues ?

A

com.pega.pegarules.engine.database.LockManagerImpl

345
Q

What is soft lock?

A

An expired or “soft” lock remains held by a requestor session until the session releases it or until the requester session ends, but a soft lock can be stolen — broken and acquired — by another requester who opens the instance. In that case, any updates by the first user that are not committed are lost.

346
Q

How long can a lock be held?

A

Generally, a thread that acquires a lock retains it until the instance is saved again with a Commit method (which may complete an Obj-Save or Obj-Delete method). However the system automatically expires locks held longer than a specified timeout period. You can change the default timeout interval of 30 minutes to a longer or shorter period. This value is stored in the Data-Admin-System data instance.

347
Q

What is lock string?

A

A lock string uniquely identifies a lock. For instances that belong to classes not associated with a class group, the text string consists of the class name concatenated with the key parts of the object (determined on the Keys area of the Basics tab of the Class form, or the Locking tab of the Class form).

348
Q

What is the significance of LockInfo Page ?

A

If a method failed to acquire a lock because the object is already locked, information on this page identifies the current requestor session that holds the lock. By convention, this page is named LockInfo in standard rules.

349
Q

What are the methods that require acquiring a lock?

A
  • Obj-Open
  • Obj-Open-by-Handle
  • Obj-Refresh-and-Lock
350
Q

A system admin wants to know whether there is any report which helps him to get the lock details or not. Can you assist him on this ?

A

To view all locks held by any requester:
- Select Designer Studio > Process and Rules > Tools > Work Admin > All Locks > Drill down to identify the details of the locked object > Hold the mouse pointer over a row of the drill-down detail (to identify the Operator ID of the requester holding the lock.)

351
Q

When can a requester acquire a lock?

A

A requestor can lock an open instance if all of the following are True:

  • The instance belongs to a concrete class that has “Allow Locking?” selected in the class rule.
  • The instance has never been saved and committed to the PegaRULES database. The requestor has an access role that conveys the privilege needed.
352
Q

What do you mean by locking?

A

Locks are exclusive to one Thread, and operate system-wide in a multinode system

353
Q

What is a pinging service?

A

You can verify whether a Pega 7 Platform instance is up and running by entering this URL: http://<>/PRRestService/monitor/pingservice/ping

The Pega 7 Platform Engine responds with HTTP Response “Code 200” if the instance is available

354
Q

What is requestor passivation?

A

Requestor passivation is a best practice; it is a built-in feature that writes out the memory footprint of idle user sessions to the file system. This frees up valuable memory for the more active users.

355
Q

What is the default value of requestor passivation and how do you change it?

A

In a production setting, the default timeout setting of 60 minutes is usually too long. Change it via pre-configuration or DSS

356
Q

Your company wants to retain data in log file for 60 days, is there a way to set the value in PRPC ?

A

In prconfig.xml

357
Q

What is the recommended production level for development and production?

A

Use a production level of 2 for development systems and 5 for production systems

358
Q

There is a requirement that each time an SLA agent successfully processes an assignment, it refreshes the retrieved item list (retrieves a new list of assignments). How will you do that ?

A

We will set the SLA system setting: “SLARefreshListEachIteration” to true

359
Q

What is the default number of assignments the SLA agent processes during its interval? and how do you update it?

A

Default value is 20 and you can modify the system setting: “SLAUnitsToProcess”

360
Q

What is the significance of SLAUnitsToRetrieve?

A

This setting specifies the number of assignments the SLA agent retrieves for processing. It reflects the number of events handled for each type. Therefore, if this entry is set to “5”, the SLA agent could potentially process up to 15 assignments (5 each for goal deadline and past deadline)

361
Q

What is recommended for multinode system?

A

For multi-node systems, it is recommended that the number of assignments retrieved be much smaller, so that contention is reduced

362
Q

What is the significance of PEGA0001 alert?

A

The default threshold for HTTP interactions is 1 second. If a particular screen takes more time to render, the system writes alert PEGA0001 to the alert log.

363
Q

How do you enable database alerts ?

A

To identify database queries, which return large amounts of data, and thus are candidates for tuning, set the Byte Threshold. This feature is off by default.

The warning threshold “warnMB” writes a stack trace to the alert log. The error threshold “errorMB” writes a stack trace and additionally halts the requestor. Thus, setting the warnMB entry to 10 will provide insight into which queries are requesting 10MB or more of data.

364
Q

Briefly explain the steps you will follow if you face an out-of-memory (OOM) exception?

A

The first step is to set the context right, try to gather information of the following:

  • What type of system is experiencing this problem, e.g. development, test, or production
  • What versions of Process Commander, the application server, operating system, database, and JVM are in use?
  • What is the current usage of this system?
  • When did this problem begin and/or when was it first noticed?
  • What if anything changed in the environment on or around the time the problem first started
  • Has anything been done to remedy the problem thus far?

Gather supportive debug data:

  • Verbose GC
  • JVM Setting
  • Pega RULES and ALERT Log file
  • Identify the root cause
365
Q

What is PermGen?

A

The permanent generation is used by the Sun JVM to store objects that are long lived, and to house certain internal JVM cache structures

366
Q

What is message related to PermGen error?

A

A permanent generation exhaustion has a special OutOfMemory exception message: java.lang.OutOfMemoryError: PermGen spac

367
Q

How do you resolve PermGen issue?

A

Increase the space and check whether it is at recommended value or not

368
Q

What is Maximum ClassLoaders Exceeded Exceptions (IBM JVMs)?

A

When you face an error like this “ERROR: The failure was caused because the class loader limit(-Xmxcl) was exceeded. Please set –Xmxcl to value or greater.” It happens due to the built-in limit on the number of ClassLoaders that it permits in a JVM.

369
Q

How do you address Native OOM exceptions?

A

Native OutOfMemory exceptions occur when the JVM process has exhausted the memory areas dedicated to native operations. So verify the memory allocation and act accordingly.

370
Q

How do you prevent this Native OOM exception?

A

Generally, the more memory allocated to the main JVM heap, the less that is available for native operations. So allocate memory carefully.

371
Q

What are standard OOM exception?

A

The standard OutOfMemory exception are:

  • Memory usage spike (A memory spike involves a requester (user or agent) requesting a large amount of memory space for objects)
  • Memory leak
  • Load exceeds capacity of system
372
Q

What is Memory usage spike?

A

A memory spike involves a requester (user or agent) requesting a large amount of memory space for objects

373
Q

What are the alert associated with OOM?

A
  • PEGA0004
  • PEGA0027
  • PEGA0029
  • PEGA0035
374
Q

How do you estimate the number of JVMs needed for a particular business solution?

A

It depends on 3 factors:

  • Number of service requestors
  • Decision requestor
  • Estimated concurrent users
375
Q

Does SMA require a separate JVM or not?

A

Yes, SMA and Agents must have separate JVM

376
Q

How much memory is required for Pega 7 caches?

A

Around 200- 250 MB

377
Q

What is total PermGen and native memory required for Pega 7?

A

Around 2 GB

378
Q

What is the total recommended memory size for Pega 7?

A

Around 1 GB

379
Q

For a typical Pega 7 environment, what will be the recommended Heap size?

A

Somewhere around 8 GB to 16 GB depends on usage and application load.

380
Q

Can you tell me some of the best practices for maintaining a healthy DB for Pega?

A
  • Perform daily statistics-gathering on the database
  • Correctly size initial database and size growth rate to prevent a slow, fragmented database
  • Ensure connection pooling is properly sized.
  • Avoid creating an index for a single column. Instead, examine the most common and the most time-consuming queries and create multiple-column indexes for them
  • Create Declare Indexes for embedded properties if they need to be exposed for lookup and reporting
  • Enable Purge and Archive for WorkHistory , WorkList and WorkBasket tables
  • Wherever possible, construct queries in ways that do not require full table scans.
381
Q

Is exposing large number of properties a good idea?

A

The more exposed columns, and the more native database indexes you have, the more expensive the each read, update, or delete operation becomes. Consider involving a DBA who is familiar with of the fine art of database tuning

382
Q

How to enable UDF Lookup in JSP?

A

Create a dynamic system setting named “prconfig/cache/enableForlookup
Owning RuleSet value — always Pega-Engine
Set the Value to true

383
Q

You made some changes in DSS but did not see the outcome, tell one common reason why this can happen?

A

You might have forgotten to restart the server, which is required. Also, check the owning ruleset whether that is correct or not.

384
Q

Is it possible to set the number of Database retries?

A

Yes, it is possible to set between 0 to 3 for both PegaRULE and PegaDATA schema

385
Q

What are the types of reports?

A

There are two types of report definition reports: summarized reports and list reports.

386
Q

What is a summarized report?

A

It is type of report that display summary counts, totals, or averages.

387
Q

What are the built-in functions available in summarized report?

A
  • COUNT()
  • COUNT DISTINCT()
  • SUM()
  • AVG()
  • MIN()
  • MAX()
388
Q

Where are report results stored ?

A

On a Clipboard page (typically of class Code-Pega-List).

389
Q

Name few areas where you can reference the report?

A
  • Data page
  • Read-only grid
  • Autocomplete
  • Radio buttons
390
Q

Can we create a report definition directly on an external class?

A

No. We cannot use an external class as the Apply to class.

391
Q

How do you create a report on a framework class that can dynamically report on implementation classes?

A

Select the concrete Apply to class in the framework, and select the Report on descendent classes check box when creating the report.

392
Q

A developer reported that he is not able to see all the ruleset when trying to create a report?

A

Each class can restrict applying rules to an explicit set of rulesets as specified on the Advanced tab of the class form.

393
Q

Can we have Declare Index rule as a column in Report Definition?

A

If your application has Declare Index rules, you can choose one of the properties in the Declare Index as a column.

394
Q

A developer complained about seeing a warning about unoptimized property usage while saving a report, but he does not want to expose the column. What best he can do?

A

Reports that use unoptimized properties in filters or selects result in a warning message in the Report Editor or the report definition. One option could be you can use a linked property to populate a column instead.

395
Q

How will you see the list of all ruleset involved in your application along with their prerequisite ?

A

We can see it from the Application landing page.

396
Q

What is the significance of having validation mode?

A

It guarantees that rules referenced are available on target system and accessible at runtime.

397
Q

How many types of ruleset validations are present?

A

Application and Ruleset validation

398
Q

Can you explain what is Application validation?

A

It reference all rules in a ruleset that is defined in the same application or a ruleset that belongs to any built-on application

399
Q

A developer ask whether their branch ruleset can access other ruleset in the branch if validation is on?

A

Yes they can do.

400
Q

You are not using application validation, however, the built-on application rulesets are using application validation. Can you access the rules present in the other application?

A

No, can’t. The logic is written accordingly so that it restricts the access.

401
Q

As a system administrator, you have created a version 06-10-15 of your ruleset. One developer complains that they can’t access the 05-01-01 anymore. Is it a bug?

A

No, this is not a bug. It is expected behavior. Each user or other requestor can access rules in only one major version of a ruleset

402
Q

You have locked a ruleset version. What are the changes you can still achieve in your application?

A

Typically 3 changes can still do:

  • Change to class rule
  • Adding or Modifying ruleset versions
  • Modifying the ruleset
403
Q

Your business has expressed concern about the password being saved in database, which is accessible by developers. What you will do to bypass it?

A

Will explain that Operator ID passwords are saved as hashed values in the PegaRULES database, using the bcrypt (default) algorithm.

Otherwise, they can go for LDAP, which will then ignore the operator rule form password and take network password.

404
Q

What is Access Group?

A

It restricts access to functionality within your application

405
Q

What if one forgot to mention the Access Group in Operator ID?

A

If the Access Group field is blank, the system instead uses the Access Group identified in the Org-Division associated with the Operator ID.

If that also is blank, the access group in the Organization data instance is used,

If that is also blank then it uses the Access Group identified in the Browser requestor type.

406
Q

Your business wants to freeze the browser and challenge the user to enter user ID and password if they keep the system idle for more than 10 min. How will you do that?

A

We will enable the authentication timeout under the access group rule.

407
Q

What is rule resolution?

A

Rule resolution is the internal process by which PRPC decides at runtime which rule (of a set of candidate rules) to execute.

408
Q

What happens when Rule Resolution Algorithm finds multiple eligible rules?

A

It returns a “Multiple Rule Version Exception” error.

409
Q

Explain the Rule Resolution algorithm.

A

1) Check the rule cache (if the rule is present in the cache, go to Step 8)
2) Choose all instances with correct purpose
3) Discard rules where Availability = No/Draft
4) Discard inapplicable RuleSets and Versions
5) Discard all candidates not defined on a class in the “ancestor tree”
6a) Rank remaining candidates by:
- Class
- RuleSet
- Circumstance
- Circumstance Date
- Date/Time;
- Remove all that are withdrawn or hidden by other withdrawn candidates
6b) Discard all choices that occur in the ranked list after the first “default” rule
7) Set the cache
8) Find best instance (and check to make sure there is not a duplicate)
9) Check that Availability does not show BLOCKED
10) Security – Verify that the user is authorized to see the rule

410
Q

Can you explain the concept of LightWeight List in PEGA?

A

A lightweight list is an internal structure used by the page list property. It is called “lightweight” because its efficient structure requires less CPU memory and processing than traditional page lists. It does not duplicate the metadata defined for each element, therefore consuming far less memory and processing.

411
Q

Where is LightWeight List used ?

A

Obj-Browse and Look up

412
Q

Any DSS we need to enable for LightWeight List?

A

Yes. Two dynamic system settings control the use of lightweight lists:

  • clipboard/lightWeightList/enableForCorePRPCRules
  • clipboard/lightWeightList/enableForCustomerRules

This setting overrides the setting in the Use Lightweight List checkbox for your rules.

413
Q

What are the limitations of LightWeight list?

A

Forward chaining is not possible (references can’t be established)

414
Q

What is Static Assembler utility?

A

It enables the pre-assembly and caching of rules that belong to an application. These actions improve the response time for interactive users after a system startup or when new ruleset versions are imported into the system.

415
Q

What is the recommended way to run Static Assembler utility?

A

Run the Static Assembler from the “/scripts/utils” directory within the extracted application installation directory.

416
Q

In Development environment, you have multiple developer operator IDs. When moving them to production, will you keep all of them? What is the best practice?

A

The best practice is to have only one or two system admin developer ID . Also, it is advisable not to have the “allow rule checkout” button enable to ensure optimal performance.

417
Q

What is the ideal order of shutting down nodes?

A

Non-search nodes > Secondary search nodes > Primary search node > All other nodes.

418
Q

Can you explain some of the key things to keep in mind while planning a load test?

A
  • Do a load math calculation and design accordingly.
  • Set realistic user interactions, and consider adding think time.
  • Switch off virus checking.
  • Validate environment.
  • Prime the application first.
  • Ensure adequate data load.
419
Q

What are the various performance debug tools available in PEGA?

A

PAL, PLA, Clipboard, Tracer, DB Trace.

420
Q

What is the thumb rule of CPU Utilization for OS running PEGA ?

A

CPU utilization should never be more than 70% busy (due to PRPC itself)

421
Q

Is having too many ruleset is beneficial or not?

A

No. It unnecessary increase the overhead.

422
Q

Explain the concept of edge server.

A

If the server hosting your PRPC application is distant from your users, you can improve performance by deploying static PRPC content to a cache on an “edge server” (a local computer closer to your users)

423
Q

How do you enable PRPC to interact with edge server?

A

PRPC provides a placeholder activity (Code-Security.ApplicationProfileSetup) which is called during user login. Modify this activity to direct the remote users’ systems to the edge server for static PRPC content. The property “pyEdgeServerURI” identifies auto-generated static content references. This property is used at the requestor level and must be set to the path of the edge server in the activity.

424
Q

What are the various troubleshooting tools available in PEGA?

A

Tracer, Clipboard, Live UI, PAL,DBTrace, Alerts

425
Q

What is tracer buffer size?

A

During Tracer operation, the system by default saves unprocessed events in a temporary file called buffer.

426
Q

What is the default tracer buffer size? How we can change it?

A

Default is 500 items and can be changed via prconfig setting

427
Q

What are the various temporary directories present in PEGA?

A
  • LLC : For look up
  • PRGenBackup : Backup copies of older versions of generated files in PRGenJava
  • PRGenClasses : Compiled Jave source code
  • PRGenJava : Java source code generated by rules assembly
  • StaticContent : Extracted images etc and JS CSS files
428
Q

What is Clipboard?

A

Clipboard is temporary memory area on the server that is associated with every connected pega 7 requestors

429
Q

Can an external requestor also be seen in Clipboard?

A

Yes we can see it.

430
Q

How will you identify the threads in Clipboard?

A

Named as per the tab name.

431
Q

Explain the page structure of the Clipboard?

A

Basically there are 7 groups of pages:

  • User pages (top level pages created by normal processing)
  • Data Pages (read-only defined by data pages rules)
  • Linked property pages (read-only retrieved whenever linked property is referred)
  • System pages (top level created pages during authentication, etc)
  • pxThread (thread page provides context of the page)
  • pxRequestor (contain info about access group role ruleset, etc)
  • pxProcess (contain info about JVM, etc)
432
Q

Can you execute an activity via Clipboard?

A

Yes. We can select any page from the clipboard and run an activity by making that page as primary page.

433
Q

What are the items not visible in Clipboard?

A
  • Pz properties
  • Java object properties
  • Data page referenced by the rules in the current and built on application.
434
Q

Name some of the reserve pages?

A
  • Local
  • Locate
  • Mode
  • Param
  • Parent
  • Primary top
435
Q

Which class is associated with PAL Reading?

A

Code-Pega-PAL

436
Q

In PAL, can you tell me the difference between Init, Full and Delta?

A
  • Full (all activity since you signed on or clicked Reset)
  • Init link (activity at the time you most recently started the Performance tool, but not activity since that time)
  • Delta link (only incremental values between adjacent rows of the Performance report)
437
Q

How you can analyze the profiler data?

A

Can download the CSV file generated to analyze it further

438
Q

For the PAL, CPU Statistics, typically how many components can you see?

A

There are 3: Full, TotalsOnly and None

439
Q

What is the significance of pxTotalReqCPU ?

A

Total CPU time JVM responding to HTTP requests and to service requests.

440
Q

What are the typical things you can do using Performance Tool?

A
  • Add reading
  • Measure Clipboard size
  • Check DB trace
  • Start profile
  • Verify the alerts generated by my activities
441
Q

In order to enable auto node discovery, what JVM Argument will you enable ?

A

Modify the “setenv.bat” file (which is in the /bin directory) by setting the following JVM argument to true: DSMAAutoNodeDiscovery=true

442
Q

What does Auto Node Discovery mean?

A

It is a new feature added in 7.2.2. Its a way to manually manage nodes in a cluster.

  • Configures the IP addresses of the nodes in a cluster
  • Automatically adds new nodes,
  • Updates the cluster node list.
443
Q

You have just updated the password of an operator. The said operator, when trying to login with the new password, still faced the wrong password error. What could be the reason?

A

If it is a multiple node environment, then the changes needs take some time to be reflected on all the nodes.

444
Q

A developer wants to delete some operator ID, but unable to do so. What could be the reason?

A

Verify whether any rules are checked-out by those operators or not. Otherwise, the operator should not have logged-in at that point of time.

445
Q

Your client wants the users to change their password in next log-in. How will you implement it?

A

Under the security tab of the operator rule, select the “Force password change” on next login.

446
Q

How do you restrict access to SMA?

A
  • For Tomcat-based systems, the web.xml and tomcat-users.xml files control access to such servlets.
  • For WebSphere-based systems, the users.props and groups.props files define custom user registries
447
Q

What is PAL and how it works?

A

It is a tool available inside Designer Studio to display statistics, and to identify incremental resources consumed by your processing.

448
Q

Client wants to improve the application user experience, anything you can do from the access role side to make it better?

A

Can enable client-side rendering of application UI (by adding the PegaRULES:TemplateUIEnabled role)

449
Q

What are the activities for which you can define password in a ruleset?

A
  • Add a ruleset version
  • Update a ruleset version
  • Update ruleset.
450
Q

What is a harness?

A

Its an instance of the “Rule-HTML-Harness” rule type and defines a runtime form.

451
Q

Business wants to show their custom log-in screen instead of Pega screen. How will you do that?

A

Follow the below steps :

1) Create an unauthenticated ruleset with version 01-01-01
2) Create a new access groups for unauthenticated users (use role as PegaRules:Guest)
3) In the access group, use unauthenticated ruleset as production ruleset
4) Save web-login.html and web-session-return.html under the unauthenticated ruleset (modify with the required background image, etc.)
5) Update the browser requestor type (by adding the unauthenticated access group)

452
Q

What is control?

A

It is a rule used to define how properties will appear in user form correspondence, etc.

453
Q

Where can you use a control?

A

Can be used in Property, Report Definition, Section, Harness

454
Q

For a single value text type property, what is the corresponding HTML code?

A

TYPE_TEXT

455
Q

Your business wants to showcase the key features on user forms or portals. Apart from smart-info, is there any other rule that can do that?

A

Can use Guided tour rules

456
Q

Which rule categories does Guided tour rules fall under?

A

Rule-Automation-Tour

457
Q

Can the Guided tour be started automatically?

A

Yes. We can configure it to start automatically when the section is loaded (need to select pxGuidedTourAutoStart or pxGuidedTourAutoStartOncePerSession)

458
Q

A user complains that he can’t see the Guided tour. What could be the reason?

A

A potential reason could be that the Data-Preference-Operator write permissions is not given (one should have this so that his tour history can be recorded)

459
Q

In order to use LiveUI, is there any specific privilege we should have?

A

Yes, need “PegaRULES:SysAdm4” and “PegaRULES:SysArch4” privilages