Process Flow
10 % of EXAM
MATERIAL FOR PRPC CERTIFICATION
•   Developer Portal
     • Navigate and use the components of the developer
       portal to display and bind rules
     • Display Rules by type
     • Use the tabs of the explorer to access the different
       parts of the PegaRULES database or application
     Check for Whats New in PRPC5.1 ppt.
•   Visio Editing Tool
     • List and describe the process commander smart
       shapes
     • Explain how and when the smart shapes are used in
       a flow diagram
     • Create and modify flow diagrams
 Assignment is a pause in the flow and it signifies that a person or external system must act on a
work object before the flow can progress. In certain situations assignments can be processed
completely or in part by a Process Commander agent rather than by a person
Assignments are created by a flow operating on a work object, but they are not themselves part of
the work object. The system saves data relating to an assignment in instances of the Assign-
Workbasket class, Assign-Worklist class, or other subclasses of the Assign- base class. Means
whenever a workobject reaches an assignment, it creates an instance of respective Assign-* class.
This instance stores all the assignment pertaining information rather than work object itself
The symbol for comments shape is        . You can add this at any stage of the flow. It does not have
any impact on processing of the flow.
PRPC comes with certain standard built in flows which u can use as it is or customize. Some of such
flows are
  • Work-Cover-.NewWork
  • Work-. FlowProblems
  • Work-Folder-. NewWork
  • Work-. NewWork
  • Work-.VerifySendCorr
Important shape properties for connector are
    •   Connector: There are five options available here. “Always”, “Action”, “Status” ,
        “Else” and “When”
          –  All of the choices may not be available always. It all depends on the shape
             from which the connector emanates. For example
              »    When the connector is from assignment, you will have only “Action”.
              »    When the connector is from utility, you will have four options i.e., all
                   except “Action”
              »    When the connector is from the decision you will have only Status and
                   Else.
              »    When the connector is from fork, you will have four options i.e. all except
                   “Action”
          –  Always: When there is to be only one possible path from the connector.
          –  Status: If the connector is from a Utility task shape, a Fork task shape or a
             Decision task shape and you want to perform a comparison. The flow
             proceeds on this connector only if the value returned at run time matches the
             value in the text box
          –  Action: For a connector that is to be associated with a flow action. In the third
             box, enter the name of a (non-local) flow action
          –  When: The work object is permitted to flow along this connector when only
             when a certain when condition rule evaluates to true. In the third box, enter
             the name of a when condition rule.
          –  Else : To define a none-of-the above connector that the flow is to use when no
             other connectors are valid
•    An integrator task in flow is an activity that connects your Process Commander
    system to an external system to send or receive data
•    In decision shape on flows we can refer any of the flowing
     • Map Value
     • Map value pair
     • Decision tree
     • Decision table
•    At run time, the system evaluates the decision rule based on inputs from the flow
    and the work object, and chooses one of the outgoing connectors based on the
    result. No user interaction or input is required.
•   Fork shape in the flow: We need to use the fork shape in the flow when we want to
    represent a point where the flow execution chooses one of the few different paths
    (Connectors) based on the tests on the work object. At run time the system
    evaluates the conditions on each connector, starting with the connector assigned the
    highest likelihood.
•    Notify shape to an assignment will cause our application to send correspondence to
    a work party in the work object reflecting the assignment. (The system creates this
    correspondence as the assignment is created, not when it is performed.). You need
    to supply one of the notify ( activity of type notify) to the notify shape.
The main difference between fork and decision in the flow – Decision executes a
   decision rule ( like map, map value pair, decision tree and decision map ) and then
   basing on the output it takes appropriate branch ( basing on the status ). Where
   as fork does not execute any decision rule, it branches the flow basing on the
   when condition embedded in the connectors emanating from the fork
The difference between the notify, router and comments symbols in flow        is very
   narrow. Be careful ( they look same to some extent)
                                                          This is a comment
•   Flow Design
     • Design, build and test a multi-process flow from an
       elaboration document
       • Flows
           – Represent business processes
           – Identify who works on a work object and in what sequence
           – Route work to external systems for processing
           – Identify what decisions and processing happen
             automatically
           – Defined in MS Visio as a network of shapes that represent
                 » Tasks
                 » Connectors
                 » Each with parameters and values
•   Flow Design
     • Design, build and test a multi-process flow from an
       elaboration document
       • Flows
           –   Represent business processes
           –   Identify who works on a work object and in what sequence
           –   Route work to external systems for processing
           –   Identify what decisions and processing happen automatically
           –   Defined in MS Visio as a network of shapes that represent
                 » Tasks
                 » Connectors
                 » Each with parameters and values
   • Flows govern:
       – How work objects are created
       – How they progress through the system
       – How they become resolved (completed)
   • Flow Requirements
       – A work object, cover, or folder are required to run a flow
       – Start and end shapes
       – Interim shapes (e.g. assignments, decisions, forks, etc.)
• Understand the appropriate level within a class
 structure to build a flow that can support
 reusability
       – Flows can be configured to create work objects or can be added
         to an existing work object
       – Flows must be built at the appropriate level within a class structure to
         support reuse
       – You can leverage a common process from a number of different
         specialized work objects, by calling the starting flow, which then calls the
         “common process” sub-flow
• Call one flow from another flow using smart
  shapes and activities
• Design and implement screen flow
  –     Many computer input procedures are most effectively handled
      by presenting a user with a series of simple forms that each
      require only one or a few questions to be answered. After
      submitting a form, the user is presented with another simple
      form (with more questions) that may depend on previous
      answers. At any point, the user can backtrack to review, or
      change, previous answers.
  –   Process Commander flow rules can support such interactions
      with screen flows, supported by a flow rule with specific settings.
  –   To make a screen flow, create a new flow rule and select
      ScreenFlow in the Template field. Use the Flow shape in a non-
      ScreenFlow flow to call the screen flow.
  –    The standard harness rule Work-.PerformScreenFlow is by
      default used to present the assignments in a screen flow rule.
      You can override this rule.
  –    A screen flow can create a temporary work object, one that is
      never saved to the database.
• Understand how to divide a large flow into several
  smaller flows
• Understand when to create work object versus
  when to initiate a task by calling a sub flow
  A subflow, also called a subprocess, is a flow rule (Rule-Obj-Flow class)
 that is referenced in another flow rule, so that execution of the other
 rule may start execution of the subflow. For example:
   – Add a Flow shape ( ) to the Visio representation of a flow rule to
     start another flow and end processing of the current flow, a form of
     branching. The second flow is called a subflow of the first flow.
   – Add a Spin-off shape ( ) to the Visio representation to start
     execution of a different flow using the current work object.
     Processing in the current flow rule continues without waiting for the
     subflow to complete.
   – The Split-ForEach shape and the Split-Join shapes also "call"
     subflows.
   – The calling flow — that contains the Flow, Spin-Off, Split-ForEach or
     Split-Join shape — is known as the parent flow. This is a runtime or
     dynamic designation, because many different flows can branch or
     call a common subflow
• Understand the purpose of and how to create
  worklists, workbaskets, and work groups
  Work List
   –  A worklist is an element of the Process Work workspace home page. It lists open,
     outstanding (not complete) assignments waiting for a user to perform them. Thus, a
     worklist display shows some of the instances in the Assign-Worklist class.
   – The worklist appears in the My Work In Progress area of this workspace. Details of its
     appearance vary, depending on the portal in use.
   – Usually, assignments appear on a worklist because an Assignment task in a flow
     created them. Assignments appear in order of urgency — the most urgent
     assignments appear first.
   – Information on the worklist display may become stale (outdated) if the user is inactive
     or works only in a workspace other than the Process Work workspace. Use the F5 key
     or interact with the worklist to refresh its contents.
Workbasket (Data-Admin-Workbasket)
      – A name for a shared pool of open assignments from
        which multiple users can get work. Allows you to route
        work. (ToWorkbasket)
      – Assignments leave a workbasket in various ways
          » Users who are qualified may remove an assignment
            from the workbasket to process the assignment
          » The application may automatically route assignments
            in a workbasket to individual users based on work
            schedules, due dates, skills, workloads, and other
            factors
          » Managers can transfer assignments to the worklists
            of individual users
• Work Group (Data-Admin-Workgroup)
           – A mechanism that provides access across multiple
             workbaskets and worklists
           – Can identify a user who is a supervisor, together with a
             set of workers and workbaskets that report to that
             supervisor
           – Summarized in management reports
  •   Work group information is not related to the three-level
      organizational hierarchy consisting of unit, division, and
      organization. Work group membership does not affect a user's
      RuleSet list
• Define and create within a flow
   – Routing Activities
   – Assignments and their corresponding service level rules
   – Connectors
   – A router task   in a flow rule identifies an activity that computes or derives a
     workbasket or Operator ID name and adds a new assignment to that
     workbasket or to the user worklist.
   – Basics
        » The shape on the Diagram tab of a flow rule identifies a router task. A
          router task is always connected to an assignment task.
        » At runtime, the router task calls an activity to determine which
          workbasket or worklist will receive the new assignment. The activity may
          consider skills, backlogs, facts in the work object, urgency, deadlines,
          and other factors in making this determination.
   – Requirements
        » To support a router task, developers create an activity with these
          characteristics:
        » For the Applies To key part, use a class derived from the Work- base
          class.
        » Set the Activity Type field on the Security tab to Route.
        » Store the result in an output parameter named AssignTo. (Only input
          parameters need to be declared on the Parameters tab of the Activity
          form.)
        » For example, the standard activity Work-.ToDefaultWorkbasket routes an
          assignment to the default workbasket associated with the current user
The summary of actions for connectors when they are
  coming out of different shapes is
•   Flow Actions
     • Define and create flow action rules
       A flow action is a choice available to users as an interim or final disposition of an
      assignment they are processing.
      Flow actions
             – Control how users interact with work object forms to complete
                assignments
             – Can associate flow actions with connectors (arrows) and with assignment
               tasks
             – Can associate a likelihood value
             – Can be previewed by clicking the toolbar Preview button ( ) to view an
               approximate runtime rendering of the flow action presentation
             – Can be local and NOT move along the flow
• Define a form or reference an HTML rule that is
 displayed by a flow action
• Call activities before and after a flow action
  executes
•   Understand the difference between connector flow actions and
    local flow actions
     •     There are two types of flow actions:
           – Connector flow actions appear as lines on Visio presentation in the
             Diagram tab of a flow rule. A line exits from an assignment shape and
             ends at the next task in the flow. At runtime, users choose a connector
             flow action, complete the assignment, and causes the work object to
             progress along the connector to the next task. A connector flow action is
             an instance of the Rule-Obj-FlowAction rule type.
           – A local flow action, when selected at runtime, causes the assignment to
             remain open and on the current user's worklist. Local flow actions are
             recorded in the Assignment Properties panel and are not visible on the
             Visio flow diagram.
      Connector Flow actions
         Identifies possible path from assignment
           – Moving a work object to the next part of the flow
                  » Examples: Approve, Reject
      Local Flow actions
            Describe actions that can be taken during assignment processing
           – Can change the state of the work object
           – Does not move it along in the flow
           – Example:
                 » Attach a file to a work object
                 » Send a piece of optional correspondence
• Understand how to use and modify standard flow
 actions
 Process Commander contains dozens of standard flow action instances in the Work-
 class for you to use or copy and modify. You can reference them in your application
 or copy and modify them to meet your custom needs.
         – Approve
         – CancelAssignment
         – Reassign
         – Reject
         – Resolve
         – TransferToManager
         – Withdraw
•   Work Status
    • Describe the different categories of work status
      The standard property Work-.pyStatusWork is known as the work object status. This
      value defines whether the work object is open or resolved. The value of this
      property is a primary indicator of the progress of the object towards resolution.
      Values are restricted and controlled, and are changed only through specific
      mechanisms.
             – Resolved work objects identify completed work and are ordinarily not modified by any
               further processing, unless the work object is re-opened. The following values are
               typical for this property:
             – New — not yet reviewed or qualified
             – Open — responsibility for processing is with the processing organization
             – Pending — responsibility for processing is currently with an external organization
             – Pending-PolicyOverrides — work is suspended pending a review of a potential violation
               of policy
             – Resolved-Duplicate — resolved, as this work object is judged to be a duplicate of
               another work object
             – Resolved-Rejected — resolved, not accepted
             – Resolved-Revoked — resolved, reviewer has determined that processing should not
               continue
             – Resolved-Complete — resolved, work completed
             – The last three values all indicate that the work object is resolved, meaning that no
               further processing is expected. You can define more status values, but start each
               value with one of the words New, Open, Pending, or Resolved, with initial capitals as
               indicated.
             – Values for this property are defined through field values rules; several standard values
               are defined.
• Understand the difference between a work object
 status and an assignment status
 The assignment status — property Assign-.pyAssignmentStatus — can record a
 user's judgment about an assignment on their worklist .
        –   The following assignment values are often used:
             » Unknown or blank
             » Next — Signals to the user, manager, or others the intent or
                guidance that this assignment is expected to be processed next
             » Soon — Signals to the user, manager, or others the intent or
                guidance that this assignment is expected to be processed soon
             » Current — Signals that this assignment is being worked on
  The work object status gives you the status of the work at that point of time before
 it finally gets resolved
• Create New Work Status
  Create a new field value for pyStatuswork property for creating new work status.
• Apply Work Status to Work Objects
     –  Call the standard activity Work-.UpdateStatus, which changes the status
       directly, and calls standard activities RecalculateAndSave and Resolve as
       appropriate. This activity is of type Utility.
     – The status may also change when your flow uses these two standard
       activities:
     – Work-.WorkBasket — Places the assignment in a workbasket and calls
       Work-.UpdateStatus. This activity is of type Assign.
     – Work-Worklist — Places the assignment on a worklist and calls
       Work-.UpdateStatus.This activity is of type Assign.
     – All three activities update the work object history to reflect the status
          change and perform other housekeeping.
• Understand how work is resolved
         Whenever a work object is resolved it will no more reside in any
         worklist/workbasket. The harness changes to confirm harness.
•   Service Levels
     • Explain the difference between assignment and work object
       service levels and how each type works.
           – Service level rules define three time intervals, known as goal, deadline, and
             late intervals. The goal time is the smallest time interval, the deadline time is
             a longer interval, and the late interval defines post-deadline times. Each time
             interval is in days, hours, minutes, and seconds.
           – Service level rules can be associated with a work object or an assignment.
             When the time interval defined by the service level is reached without the
             assignment being performed (or the work object becoming resolved),
             escalation occurs.
           – Escalation can change the urgency value of the assignment or work object,
             send it to someone else, send an alert or e-mail message, cancel the work, or
             initiate other processing.
           – Where referenced
           – Service level rules are referenced in the assignment tasks of flow rules.
           – The Pega-ProCom agent — a background requestor — detects goals and
             deadlines not met and performs escalation processing. To make your
             application's custom service level rules visible to this agent, update the
             access group for the Pega-ProCom agent schedule data instance to include
             your application RuleSet versions.
•    A service level rule is an instance of the Rule-Obj-ServiceLevel rule type. Each
    service level rule defines one or two time intervals, known as goals and
    deadlines, that indicate the expected or targeted turnaround time for the
    assignment, or time-to-resolve for the work object. Process Commander detects
    service levels not achieved — unmet goals or deadlines — promptly. If an
    assignment isn't completed before the time limit, the system can automatically
    notify various parties, escalate the assignment, cancel the entire flow, and so on
•   A developer can assign the SLA to either the assignment or for entire flow.
•   The assignment icon changes to include a clock icon, when you add a SLA at the
    assignment
•   If we want to associate the whole SLA for entire work object we need to add the
    SLA at Model level
• Understand the time intervals on which the service
  levels operate.
   –    Important fields in service level from are
          »    Initial urgency ( Optional ) : To set the initial urgency for a work object
          »    Assignment is ready for work : Represents when from the time count
          to consider SLA, most of the cases it would be immediately. At times, it is
         beneficial to create an assignment but not expect a user to start work on
         the assignment for a while. In these cases this field is useful There are 3
         options available
•   There are 3 options available
           »    Immediately : Immediately
           »    Define from Property : You can take from property
           »    Interval from assignment creation : You can directly set the timing
     –   Escalation Event timing :
           »    Goal : Goal time details ( Not sequential)
           »    Deadline times : Deadline time details( Not Sequential )
           »    Repeating interval from deadline : Repeats several times after
                                    Deadline (Sequential)
•   Activities( When work object not locked )
            »     Activities to get triggered on goal, deadline and repeat
     –     Activities ( When work object locked )
            »     Activities to get triggered on goal, deadline and repeat, when work object is
                  locked
•   Execute an activity on reaching a goal or deadline
     –     Complete the Escalation tab to specify the activities to execute when
          an assignment remains unperformed, or a work object remains open,
          after a deadline, goal, or repeating interval time is reached. All data are
          optional.
     –    When you identify an activity that requires parameters, click the Params
          button to enter parameter values.
     –    Escalation activities are performed in background by a Java thread of
          the Pega-ProCom agent; these activities do not include user interaction.
•   Understand the concept of urgency as it relates to the work
    object and an assignment
        »      An urgency value is a numeric value used for indicating priority
            of work to be performed, both for automated tasks and
            assignments requiring user interactions.
        »   Assignment urgency
        »   The urgency of an assignment is a value between 0 and 100 that
            defines the importance (priority) of promptly completing and
            resolving the assignment. This property Assign-.pxUrgencyAssign
            defines the order that assignments appear on a user's worklist.
        »   A value of 20 is "normal," and larger values correspond to higher
            importance.
        »   The property Assign-.pyUrgencyWork holds the urgency value at
            the time the assignment was created.
        »   The computed urgency can reflect adjustments from user or
            manager input. For computed values, the calculation in your
            application may depend on service levels, dollar amounts, special
            treatment for special customers, backlogs, and a wide variety of
            other conditions.
        »   Adjustments to urgency in your application can bring visibility and
            attention to the most important work that's in process. Users or
            automatic processing can set the property
            Assign-.pyUrgencyAssignAdjust to increase or decrease the
            assignment urgency.
•   Work object urgency
        »   The urgency of an open work object is also a number between 1
            and 100. This value is computed in the Work-.pxUrgencyWork
            standard property.
        »   The related standard property Work-.pyUrgencyWorkAdjust is
            visible on most harness forms, and allows a user to enter a positive
            or negative adjustment value for the urgency calculation.
        »   The standard flow actions Save and UrgencyUpdate force
            recomputation of the work object urgency.
•   Computations
        »   The system uses standard Declare Expression rules to compute
            both Assign-.pxUrgencyAssign and Work-.pxUrgencyWork, so these
            values are current in real time.
•   Correspondence
     • Identify the different correspondence types supported by
       process commander
         • A correspondence type rule is an instance of the Rule-CorrType class. These
           rules affect how the system finds an address for outgoing correspondence.
         • A correspondence type rule indicates whether a piece of correspondence is a
           printed letter, fax, e-mail, or SMS phone text. Each type is associated with a
           different Data- subclass, such as Data-Corr-Email, that holds the content of
           correspondence items.
         • Where referenced
              – Correspondence type rules are referenced as the second key part of
                 correspondence rules. Addressee information for individual
                 correspondence items is stored in subclasses of the Data-Address- class.
    •   Describe the CorrNew Activity, its parameters, and how it
        processes correspondence
         Use the standard utility activity named Work-.CorrNew to generate
        correspondence without any user interaction. When this activity is used to
        generate e-mail correspondence, you can set parameters so that all work object
        attachments, or all attachments of one or more specified categories, become
        attachments to the email message. Optionally, you can send the e-mail to multiple
        TO: work parties, one or more CC: work parties, and one or more BCC: parties.