Automating categorization and assignment of application requests


Automate the manual tasks for categorizing and assigning application requests by using the BMC Helix Innovation Studio Cognitive Service. For auto-assigning application requests to individuals, you can use the BMC Helix Innovation Studio Cognitive Service or the Call Assignment Policy element in the Process designer. 

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

Action

Reference

Automatically assign application requests by using BMC Helix Innovation Studio Cognitive Service

Automatically categorize requests by using the BMC Helix Innovation Studio Cognitive Service

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 Adding-variables-to-processes.

  6. Drag the Cognitive element called Automatic Category Suggestion 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 Automatic Category Suggestion element and enter the values for the properties.

    The following table describes the properties:

    Property

    Description

    INPUT MAP

    Training Data Set Name

    Specify the training data set.

    Text To Classify

    Specify 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.

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

  8. Click Save.

To add auto-assignment in a process

Before adding an auto-assignment in a process, you must implement a Java interface to use the assignment types. BMC Helix Innovation Studio Cognitive Service returns the login IDs of the assignee. Make sure that the assignee belongs to the Agents group in the Foundation library. For more information, 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 Adding-variables-to-processes.

  6. Drag the Assignment element called Automatic Assignee Suggestion 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:

    Property

    Description

    INPUT MAP

    Record definition name

     Specify the record definition name for the listener.

    Assignee Training Data Set Name

    Specify the training data set.

    Task Category

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

    Assignment type

    Specify the type of assignment:

    • Round Robin—Tasks are assigned in a Round Robin manner; that is, the first assignee in the list is assigned to the first task, the second assignee to the second task, and so on.
    • Load Balanced By Number—A 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 Capacity—A task is assigned to an assignee depending on the amount of work.
      For example, if Seth has four days of work to complete the assigned tasks and Ajay has five days of work to complete the assigned tasks, the new task is assigned to Seth.
    • By Skill Level—A task is assigned to an assignee depending on the task expertise.
      For example, if Seth has more experience in completing a task than Ajay, the task is assigned to Seth.

    Important: To use these assignment types, you must implement a Java interface. For more information, see Creating-a-Java-program-to-use-auto-assignment.

    Task Required Resolve date

    Specify the date or time by which the tasks must be completed.

    Task Effort

    Specify the estimation of the task effort in hours.

    Task Priority

    Specify 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. Click Save.

Example: Using a process to automate the 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 Innovation Studio Cognitive Service. The process categorizes the issue by using the issue summary and returns a category. The Automatic Assignee Suggestion action uses this category to determine the correct assignee.

22_1_Example process for auto category and assignment.png

Automatic Category Suggestion values

Property

Example value

Action Type Name

Suggest Category

Label

Suggest Issue Category

Description

Returns the category of the issue

Run as

Inherit from Process

Training Data Set Name

Defect Category

Text To Classify

"Unable to localize view component"

Automatic Assignee Suggestion values

Property

Example value

Action Type Name

Suggest Assignee

Label

Suggest Assignee

Description

Returns assignee

Run as

Inherit from Process

Record Definition Name

Task

Assignee Training Data Set Name

Issue assignee

Task Category

Output

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

For example, in the CSV file, if 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 Type

Round Robin

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

22_1_Activity results.png

To add automatic categorization and automatic 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 automatic categorization or assignment.
    The system opens the Rule designer and displays the rule diagram on the canvas.
  5. Drag the Suggest Categorization element or Automatic Assignee Suggestion element 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 Automatic Category Suggestion and Automatic Assignee Suggestion elements are the same as those described in To add auto categorization in a process and To add auto assignment in a process.
  7. Click Save.

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 Innovation Studio Cognitive Service. The rule categorizes the issue by using the issue summary and returns a category. The Automatic Assignee Suggestion action uses this category to determine the correct assignee. Here the Automatic Assignee Suggestion element uses the first category for the issue that is provided by the Automatic Category Suggestion 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.

22_1_Example rule.png

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 Automatic Category Suggestion element. To use a Automatic Category Suggestion element that returns a list of Strings for data classification, loop the output data of the element.

In this example process, Automatic Category Suggestion element, named as Getting Automatic Categorization, 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 the Getting Automatic Categorization output, respectively.

22_1_Categorization mutiple values.png

The following steps describe how to assign the 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:
    22_1_Local variable.png
  2. Create a local integer variable, Counter and initialize it to 1 by using the Compute Value element Setting Counter = 1, as shown in the following image:
    22_1_Counter.png22_1_Variable_counter.png
  3. Select the output of Setting Counter = 1 as source as shown in the following image:
    22_1_Setting counter.png
  4. 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:
    22_1_Categorization subprocess.png
    For example, map Problem Area 3 with the Current Categorization variable by using Update Record, as shown in the following image:
    22_1_Current categorization2.png

  5. Use an Exclusive Gateway element to update the correct 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.
    22_1_Counter gateway.png

    22_1_Counter=2.png
    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.
    22_1_Counter without condition.png
  6. 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:
    22_1_Increment counter.png


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*