This documentation supports the 20.02 version of BMC Helix Platform.

To view the documentation for the current version, select 20.08 from the Product version menu.

Automating categorization and assignment of application requests

In BMC Helix Platform, you can automate the manual tasks for categorization and assignment. Auto-categorization of application requests is achieved by using the BMC Helix Platform Cognitive Service. For auto-assigning application requests to individuals, you can use the BMC Helix Platform Cognitive Service or the Call Assignment Policy element in the Process designer. 

The following table explains the methods of auto-categorizing and auto-assigning application requests:

ActionReference

Auto-assignment by using BMC Helix Platform Cognitive Service

To add auto-assignment in a process

Auto-assignment by using the Call Assignment Policy element in the Process designer

Defining assignment processes to trigger the assignment policies

Auto-categorization by using the BMC Helix Platform Cognitive Service

To add auto-categorization element in a process

To add auto-categorization in a process

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application in which your process exists.
  3. In the application, click Processes.
  4. Click the process name to which you want to add auto categorization.
    The system opens the Process designer and displays the process diagram on the canvas.
  5. Based on your requirements, add the input and output variables required for the process. 

    For information about adding input and output process variables, see Defining the application business logic through processes.
  6. Drag the Cognitive element called Suggest Category to the canvas and place it where you want to add it in the process and provide the input and output connections.

  7. Select the Suggest Category element and enter the values for the properties.

    The following table describes the properties:

    PropertyDescription
    INPUT MAP
    Training Data Set NameSpecify the training data set.
    Text To ClassifySpecify the data that you want to categorize.
    OUTPUT MAP

    Specify the process parameters that you want to obtain as output values from this element.

    You can build an expression for assigning output values to process variables. The data that you want to categorize can have multiple categories.  For example, in the CSV file, for the text "Unable to localize view component," you specify two categories: Localization and View component.

    Note: To get multiple categories output values, you must create a list of the categories. If you do not create a list, the output value is only the first category.

  8. Click Save.

To add auto-assignment in a process

Before you add an auto assignment in a process, you must implement a Java interface to use the assignment types. BMC Helix Platform Cognitive Service returns the login IDs of the assignee. You must ensure that the assignee belongs to the Agents group in the Foundation library. See Creating a Java program to use auto-assignment.

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application in which your process exists.
  3. In the application, click Processes.
  4. Click the process name to which you want to add auto assignment.
    The system opens the Process designer and displays the process diagram on the canvas.
  5. Based on your requirements, add the input and output variables required for the process. 

    For information about adding input and output process variables, see Defining the application business logic through processes.
  6. Drag the Assignment element called Suggest Assignee to the canvas and place it where you want to add it in the process and provide the input and output connections.
  7. Select the Suggest Assignee element and enter the values for the properties.

    The following table describes the properties:

    PropertyDescription
    INPUT MAP
    Record definition name Specify the record definition name for the listener
    Assignee Training Data Set NameSpecify the training data set
    Task Category

    Specify the category that is used by the BMC Helix Platform Cognitive service to return a list of possible assignees.

    Assignment type

    Specify the type of assignment

    • Round Robin—Tasks are assigned in Round Robin manner; that is, the first assignee in the list is assigned to the first task, second assignee to the second task, and so on.
    • Load Balanced By Number—Task is assigned to an assignee depending on the number of tasks already assigned to that assignee.
      For example, if Seth has four tasks assigned and Ajay has five tasks, the new task is assigned to Seth.
    • Load Balanced By CapacityTask is assigned to an assignee depending on the amount of work.
      For example, if Seth has four days work to complete the assigned tasks and Ajay has five days work to complete the assigned tasks, the new task is assigned to Seth.
    • By Skill LevelTask is assigned to an assignee depending on the task expertise.
      For example, if Seth has more experience to complete a task as compared to Ajay, the task is assigned to Seth.

    Note: To use these assignment types, you must implement a Java interface. See Creating a Java program to use auto-assignment.

    Task Required Resolve dateSpecify the date or time by which the tasks should be completed
    Task EffortSpecify the estimation of the task effort, in hours
    Task PrioritySpecify the priority of the task
    You must provide a number (0,1, 2, or 3) as follows:
    • 0—Critical
    • 1—High
    • 2Medium
    • 3Low
    OUTPUT MAP

    Specify the process parameters that you want to obtain as output values from this element

    You can build an expression for assigning an output value to a process variable.

  8. Save the process.

Example: Using a process to automate categorization and assignment of an issue

The following image shows a sample process that automatically categorizes an issue and assigns it to the assignee by using the BMC Helix Platform Cognitive Service. The process categorizes the issue by using the issue summary and returns a category. The Suggest Assignee action uses this category to determine the correct assignee.

Suggest Category values

PropertyExample value
Action Type NameSuggest Category
LabelSuggest Issue Category
DescriptionReturns the category of the issue
Run asInherit from Process
Training Data Set NameDefect Category
Text To Classify"Unable to localize view component"

Suggest Assignment values

PropertyExample value
Action Type NameSuggest Assignee
LabelSuggest Assignee
DescriptionReturns assignee
Run asInherit from Process
Record Definition NameTask
Assignee Training Data Set NameIssue assignee
Task Category

Output

Note: Here the output value used is the first classified category for the text.

For example, in the CSV file you have specified two categories Localization and View component for the text "Unable to localize view component". The Localization category (first classified category) is used as the value for Task Category.

To use multiple categories, see Example: Using multiple categories of data classification.

Assignment TypeRound Robin

When you run the process, the output of the Suggest Category action (Localization) is provided to the Suggest Assignee action and the Suggest Assignee provides the name of the assignee as an output. The following image illustrates a sample process activity result:

To add auto categorization and auto assignment in a rule

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application in which your rule exists.
  3. In the application, click Rules.
  4. Click the rule name to which you want to add an auto categorization or auto assignment.
    The system opens the Rule designer and displays the rule diagram on the canvas.
  5. Drag the Suggest Categorization element (for auto categorization) or Suggest Assignee element (for auto assignment) to the canvas and place it where you want to add it in the rule and provide the input and output connections.
  6. Select the element, enter the values for the properties, and repeat for the next element.
    The properties of the Suggest Category and Suggest Assignee element are the same as those described in To add auto categorization in a process and To add auto assignment in a process.

  7. Save the rule.

For more information about how to create a rule, see Creating rules.

Example: Using a rule to automate categorization and assignment of an issue

The following image shows a sample rule that automatically categorizes an issue and assigns it to the assignee by using the BMC Helix Platform Cognitive Service. The rule categorizes the issue by using the issue summary and returns a category. The Suggest Assignee action uses this category to determine the right assignee. Here the Suggest Assignee element uses the first category for the issue that is provided by the Suggest Category element. To use multiple categories, see Example: Using multiple categories of data classification

You can trigger the rule on a record event such as On Create, After Create, On Update, and so on. For information about record events, see Rule designer elements.

For information about the sample values, see Suggest Category values and Suggest Assignment values.

Example: Using multiple categories of data classification

The following image shows a sample process that uses multiple categories provided by a Suggest Category element. To use a Suggest Category element that returns a list of String for data classification, loop the output data of the element.

In this process, Getting Automatic Categorization (Suggest Category element) has three output values and these output values are used to update the Setting Categories. Setting Categorization 1, Setting Categorization 2, and Setting Categorization 3 use the first, second, and third values of Getting Automatic Categorization output respectively.

The following steps describes how to assign Getting Automatic Categorization output to Setting Categorization 1, Setting Categorization 2, and Setting Categorization 3:

  1. Create a local text variable Current Categorization to store the current categorization as shown in the following image:
  2. Create a local integer variable Counter and initialize it to 1 by using a Compute Value element Setting Counter = 1, as shown in the following image:

    Select the output of Setting Counter = 1 as source as shown in the following image:
  3. Loop the output of the Getting Automatic Categorization in a subprocess and for every step in the loop store the current categorization in the local variable Current Categorization, as shown in the following image:

    For example, map Problem Area 3 with the Current Categorization variable by using Update Record, as shown in the following image:


  4. Use an Exclusive Gateway element to update the right Setting Categories according to the value of the counter.
    When the counter is 1, it updates the first categorization. When the counter is 2, it updates the second categorization. When the counter is 3 the default branch is used to update the third categorization.



    The third path of the Exclusive Gateway is the default path (without a condition). In this case, it is the path when the counter is greater than 2.
  5. Increment the counter by 1 at each iteration of the loop, so that in the next iteration of the loop, the exclusive gateway picks up another branch, as shown in the following image:

Related topic

Adding cognitive capabilities to a custom application

Was this page helpful? Yes No Submitting... Thank you

Comments