Skip to main content

Pega Sales Automation for Insurance 8.5 next-best-action architecture

Suggest edit Updated on October 29, 2021

Pega Sales Automation for Insurance™ uses Decision Management capabilities to identify the next best action for every opportunity in the application. To fully understand the architecture of Pega's next-best-action capability, review the following sections:

Note: To increase the performance of the next-best-action widget, instead of calculating next best actions immediately, the system architecture calculates and stores next best actions in the NextBestActions data set first, and then displays the next best actions from that data set. To support this improvement, the UsePreloadedNBA dynamic system setting is set by default to true, and the GenerateNBA job scheduler, runs every day at noon local time.

Ruleset and class

Next best actions in Pega Sales Automation for Insurance use the SAI-Artifacts and SA-Artifacts rulesets. The SA-SR class (Sales Automation–Strategy Results) is the foundation for the entire Pega Sales Automation for Insurance next-best-action structure. This class has direct pattern inheritance from Data-pxStrategyResults.

The next-best-action structure of Pega Sales Automation for Insurance next best action uses the NextBestActions data set of the PegaInsCRM-Data-NextBestActions class to store next best actions. The PegaInsCRM-Data-NextBestActions class is the main class for storing next best actions.

Business issue, business group, and propositions

The SANBAIssue business issue contains related business groups and propositions for next best actions in Pega Sales Automation for Insurance.

Properties

Depending on the UsePreloadedNBA property setting, the next-best-action architecture varies. The dashboard widget uses the TopActions property, and the opportunity insights section uses the NBAForSalesRepOpp page list property.

Next best actions use below configurable properties to calculate top actions. Dynamic class representation (DCR) maintains these properties in the crmAppExtModel data transform. The configurable next-best-action properties are:

  • NBA_InitialOutReach
  • NBA_InactiveDays
  • NBA_OppFollowUpDays
  • NBA_OrgTrendDays
  • NBA_ContactInactiveDays
  • NBA_Interactions
  • NBA_TopActionsLimit
  • NBA_ETAForEmailReply
  • NBA_EmailsReceivedinLastXDays
  • NBA_EmailFollowUpDays
  • NBA_AppointmentsCheduledAfterXHours
  • NBA_xPolExpiryDays

Activities

The next-best-action architecture varies, depending on the UsePreLoadedNBA dynamic system setting.

When the UsePreLoadedNBA is set to false, next best actions in Pega Sales Automation for Insurance use the following activities:

  • NBASalesRepOpp – Uses the opportunity ID as an input parameter and populates the next best actions in the NBAForSalesRepOpp property. The activity opens an opportunity in the GivenSAOpp page, which acts as the parent for the entire next-best-action data model for the activity. The activity then populates the accounts, leads, contacts, households, competitors, and contacts related to the organization to create a tree structure of pages.
  • NextBestActions – Uses the PoliciesForNextBestAction, crmOpportunitiesForNBA, ContactsForNBA, LeadsForNextBestActions, and GetAccountsWithCSIPolicies report definitions. After the application fetches the results from the report definitions, it loops through each result and runs the respective data flows to get the top 10 actions for each work object (policy, opportunity, lead, contact, and account). Out of these top actions, the system retrieves the overall top ten actions by running the NextBestActions data flow.
  • CaptureTopActions – Stores the next-best-action interaction response in the interaction history with the pyOutcome property value as Clicked. This activity belongs to the SA-SR-SANBAIssue class.

When the UsePreloadedNBA property is set to true, next best actions in Pega Sales Automation for Insurance use the following activities:

  • GenerateNextBestActions – Runs based on the GenerateNBA job scheduler and populates next best actions into the data set.
  • PreloadedNBA_Dashboard – Fetches the pre-calculated next best actions from the data set and populates the next best actions widget on the dashboard.
  • DiscardNBA – Stores the next-best-action interaction response in the interaction history and updates the data set with the pyOutcome property value as Discard.
  • GenerateNBAonChangeOwner – Generates lead-related next best actions when the owner of the lead changes.
  • RemoveWORelatedNBA – This activity is a part of the tasks, activities, and appointments creation flows, and runs when the system creates these items. This activity calls another activity, for example, RemoveRelatedWONBA, RemoveRelatedWONBA_Opp, and RemoveRelatedWONBA_Contact to remove leads, opportunities, and contacts-related next best actions when the system creates tasks,  activities or appointments.
  • crmLinkPegaCPMObject – Includes the RemoveRelatedWONBA, RemoveRelatedWONBA_Opp, and RemoveRelatedWONBA_Contact activities to remove leads, opportunities, and contacts-related next best actions when an email or an appointment is associated with any of these work objects.
  • DiscardSANBA – Used to discard an individual next best action from the next best actions list.

  • DiscardSANBAforOpr – Used to discard a group of similar-proposition next best actions for a logged-in operator.

  • DiscardSANBAByWOID – Used to discard next best actions based on proposition name and unique ID of work object.

Report definitions

The next-best-action architecture varies, depending on the UsePreloadedNBA property setting. Next-best-actions in Pega Sales Automation for Insurance use the following report definitions:

  • AllQuotesRelatedToOpportunity – Lists all unresolved quotes related to an opportunity.
  • PriorityTasksByOpportunity – Lists all unresolved tasks related to an opportunity.
  • CrmCompetitorsNBA – Lists competitors for an opportunity.
  • PoliciesForNextBestAction – Lists all unresolved policies owned by logged-in users or by their direct reports.
  • crmOpportunitiesForNBA – Lists all unresolved opportunities owned by logged-in users or their direct reports.
  • ContactsForNBA – Lists all unresolved contacts owned by logged-in users or their direct reports.
  • LeadsForNextBestAction – Lists all unresolved leads owned by logged-in users or their direct reports.
  • GetAccountsWithCSIPolicies – Lists all unresolved accounts that have CSI-sourced (Customer Service for Insurance-sourced) policies owned by logged-in users or their direct reports.

When the UsePreloadedNBA is set to true, next best actions in Pega Sales Automation Next Best Action use the following report definitions:

  • AllOpportunities – Lists all unresolved opportunities.
  • AllPolicies – Lists all unresolved policies.
  • AllLeads – Lists all unresolved leads.
  • AllContacts – Lists all unresolved contacts.
  • crmOrgListWithOwner – Lists all unresolved organizations.
  • AllAccounts – Lists all unresolved accounts.
  • FetchNBA – Lists all active non-group next best actions.
  • FetchNBAForDashboard – Lists all active non-group next best actions owned by a logged-in operator.
  • GetPropositions – Lists all active, group, non-hierarchical next best actions owned by a logged-in operator.
  • GetInsPropositions – Lists all active, groups and hierarchical next best actions owned by a logged- in operator.
  • GetLatestCP – Lists the latest close plan update datetime of an opportunity in the last x days.
  • crmAllTasksRelatedTo – Lists all tasks and activities related to an opportunity, lead, contact, and organization created after a particular date.
  • AppointmentsCreatedorScheduledFromGivenDateTime – Lists appointments that are scheduled for a given date.
  • AppointmentsRelatedToWO – Lists appointments created after a given date by an operator.
  • ActivitiesRelatedToWO – Lists all tasks and activities related to an opportunity, lead, contact, and organization created after a given date by an operator.
  • CustomerActivitiesRelatedToWO – Lists all activities related to opportunity, lead, contact, and organization after a given date created by an operator.
  • EmailsRelatedToWO – Lists emails that are created after a given date.
  • crmOpportunitiesRelatedToOrganization – Lists opportunities related to a given organization.
  • GetOrgContMatrixHeaderList – Lists the contact management levels defined in Pega Sales Automation for Insurance.
  • ContactsbyOrgAndMgmtLevel – Lists the contacts of a given organization at a given management level list.
  • CrmGetAllEventsCountForOrg – Lists the event names for a given time period, for a given organization.
  • GetEmailNBAsWithNegativeSentiment – Lists the email next best actions that have a negative sentiment, that are available to a logged-in operator.
  • CheckNBAForAppointment – Lists all of the next best actions on the appointment.
  • GetEmailDetails – Lists the email details of the next best actions for an email.
  • GetAppointmentDetails – Lists the appointment details of the next best actions for an appointment.
  • GetEmailDetailsWithRcpntCount – Lists the email details of an email action's next best actions, with the email recipient count.

Data flows

The next-best-action architecture varies, depending on the UsePreloadedNBA property setting.

When the UsePreloadedNBA property is set to false, the NBASalesRepOpp activity uses the following data flows:

  • NBASalesRepOpp – Runs the parent NextBestActionsForSalesRep decision strategy to calculate the top 3 next best actions related to an opportunity.
  • PoliciesForNBA – Runs the PoliciesForNBA decision strategy to calculate the next best actions related to policies.
  • OpportunitiesForNBA – Runs the TopNBAForOpportunities decision strategy to calculate the next best actions related to opportunities.
  • ContactsForNBA – Runs the ContactssForNBA decision strategy to calculate the next best actions related to contacts.
  • LeadsForNBA – Runs the LeadsForNBA decision strategy to calculate the next best actions related to leads.
  • AccountsForNBA – Runs the AccountsForNBA decision strategy to calculate the next best actions related to accounts.
  • NextBestActions – Runs the NextBestActions decision strategy to prioritize the top 10 next best actions.

When the UsePreloadedNBA is set to true, the GenerateNextBestActions activity uses the following data flows:

  • LoadNBAForAllOpps – Loads all opportunities and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllLeads – Loads all leads and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllContacts – Loads all contacts and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllOrg – Loads all organizations and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllPolicies – Loads all policies and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllAccounts – Loads all accounts and inserts a related next best action into the NextBestActions data set.
  • LoadNBAForAllEmails – Loads all emails and inserts email actions-related next best actions into the NextBestActions data set.

  • LoadNBAForAllAppointment – Loads all appointments and inserts-related next best actions into the NextBestActions data set.

Strategies and sub-strategies

The next-best-architecture varies, depending on the UsePreloadedNBA property setting.

When the UsePreloadedNBA property is set to false, next best actions in Pega Sales Automation use the following strategies:

  • NextBestActionsForSalesRep – This strategy is the parent strategy. It uses the GivenSAOpp page and has multiple substrategies. This strategy groups and ranks the results from substrategies in priority order in the Top 3 Actions component. This component provides the top three actions and the top action to the Results component. The opportunity displays the top three actions, and the top action displays in the next best actions widget in the sales representative's dashboard.
  • TopNBAForOpportunities – This strategy is a parent strategy. It uses the OpportunityPage page and includes multiple substrategies, grouped and ranked based on the priority of the Rank value in the Top 1 Action by Rank component. This strategy displays next best actions in the dashboard widget.
  • PoliciesForNBA – Uses the PolicyPage as the input page and returns one top action. This strategy sets the Rank value as the addition of the DefaultRank and policy premium amount. This strategy displays next best actions in the dashboard widget. 
  • ContactsForNBA – Uses the ContactPage page as an input and returns a top action. This strategy sets the Rank value as the addition of the DefaultRank and Age*100. This strategy displays next best actions in the dashboard widget. 
  • LeadsForNBA – Uses the LeadPage as an input and returns a top action if it exists. This strategy displays next best actions in the dashboard widget. 
  • NextBestActions – Uses the Primary Page as an input page. Uses the top actions returned from the PoliciesForNBA, TopNBAForOpportunities, LeadsforNBA,  ContactsForNBA, and AccountsForNBA strategies as an input, and then prioritizes them based on the Rank value.

When the UsePreloadedNBA property is set to true, next best actions in Pega Sales Automation Next Best Action use the following strategies:

  • AllNBAForOpportunities – This strategy is the parent strategy. The results from the sub-strategies are grouped and ranked based on the priority of the Rank value in the Prioritize all by rank component. The NextBestActions data set stores the outcome of this strategy.
  • LoadLeadNBA and LeadsFollowUpActionStrategy – Filter the valid lead-related next best actions by using proposition filter conditions. The NextBestActions data set stores the outcome of this strategy.
  • LoadContactNBA, ContactFollowUpStrategy, and ContactMissingKeyInfoStrategy – Filter the valid contact-related next best actions by using proposition filter conditions. The NextBestActions data set stores the outcome of this strategy.
  • LoadPolicyNBAs – Filters the valid policy-related next best actions by using proposition filter conditions. The NextBestActions data set stores the outcome of this strategy.
  • GenerateNBAForOrgActions – Filters the valid organization-related next best actions by using proposition filter conditions. The NextBestActions data set stores the outcome of this strategy.
  • LoadAccountNBAs – Filters the valid account-related next best actions by using proposition filter conditions. The NextBestActions data set stores the outcome of this strategy.
  • GenerateNBAsForSentimentEmails – Filters valid emails with a negative sentiment and checks in the interaction history. The NextBestActions data set stores the outcome of this strategy.

  • GenerateNBAsForEmailActions – Filters valid emails-related next best actions by using the proposition filter condition. The NextBestActions data set stores the outcome of this strategy.

  • GenerateNBAsForAppointmentActions – Filters valid appointment-related next best actions by using the proposition filter condition. The NextBestActions data set stores the outcome of this strategy.

Pega Sales Automation for Insurance uses the following sub-strategies:

  • OpportunitiesForNBA, OpportunityCloseNBA, and TasksForNBA – Filter valid opportunity-related next best actions by using proposition filter conditions. These sub-strategies set the Rank value as the addition of the DefaultRank and opportunity amount.

Dashboard widget

The D_NextBestAction data page populates the Dashboard_NextBestActions dashboard widget, to display the top next best actions for work objects owned by logged-in users.

Opportunity insights

The OpportunityAnalysis section uses the D_NBASalesRepOpp data page to display next best actions in the Opportunity insights section of the opportunity. Dismiss action is only displayed to owner of work object.

Data page

The next-best-action architecture varies, depending on the UsePreloadedNBA property setting.

  • D_NextBestActions – When the UsePreloadedNBA dynamic system is set to false, then this data page uses the NextBestActions activity and when the UsePreloadedNBA property is set to true, then this data page uses the PreloadedNBA_Dashboard activity to populate the top next best actions. This data page displays next best actions in the dashboard widget.

  • D_NBASalesRepOpp – When the UsePreloadedNBA dynamic system setting is set to false, the data page uses the NBASalesRepOpp activity. When the UsePreloadedNBA property is set to true, the data page uses the PreloadedNBA activity. This data page displays next best actions with the next best actions for opportunity insights.

  • D_GetPropositions – Uses the report definition to fetch active and group-enabled next best actions present in the Sales Automation layer for a particular user, and then groups them to populate the next best actions list.

  • D_GetInsPropositions – Uses the report definition to fetch active and group-enabled insurance- specific next best actions present in the Sales Automation for Insurance layer for a particular user, and then groups them to populate the next best actions list.

  • D_GetPropositionsForContactMissingInfo - Uses the report definition to fetch active and particular next best actions for a particular user, and then groups them to populate the next best actions list.

  • D_InteractionsOnOpportunity – Checks whether a particular opportunity has any interactions in the past X days. You can configure the time period in the NBA_OppFollowUpDays rule.

  • D_InteractionsWithLead – Checks whether an assigned owner has any interactions with a particular lead in the past X days. You can configure the time period in the NBA_InitialOutReach rule.

  • D_InteractionsWithContact – Checks whether a particular contact has any interactions in the past X days. You can configure the time period in the NBA_InactiveDays or NBA_ContactInactiveDays rules.

  • D_InteractionsWithOrg – Checks whether an organization has any c-level and senior management level contacts.

  • D_CrmFetchNBA – Used to fetch active next best actions based on unique key of work object or next best action name.  It is used to display next best actions in lead, contact.

  • D_NBADisplayText – Used to fetch active next best actions and count of work object eligible for each next best actions owned by logged in user.

  • D_PreMeetingToDo – Fetch next best actions which are applicable before the start of today’s appointment.

  • D_PostMeetingToDo – Fetch next best actions which are applicable once appointment meeting finished.

Did you find this content helpful? YesNo

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Ready to crush complexity?

Experience the benefits of Pega Community when you log in.

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us