Sentiment Analysis
Introduction
To aid in assessing the health and status of a project, projects in AdpativeWork sometimes include fields, such as comments boxes, to allow users record their thoughts or observations about the project. However, these blocks of text are not easily summarized or quantified into an overall assessment and can require hours of time to read and evaluate.
Sentiment analysis uses natural language processing with our large-language model to assess the unstructured text fields and return a sentiment status that shows whether the text entered is positive, neutral, or negative. You can then use this analysis as an early risk identifier, with negative sentiments indicating potential issues within the project or program.
Sentiment Analysis Basics
The following types of standard and custom fields can be used for Sentiment Analysis:
- Text
- Text Area
- Rich Text Area
It is available for Projects and Programs and up to 25 fields can be set for use in Sentiment Analysis. (Examples of standard text fields that can be used include Overall Summary, Overview and Internal Status).
When a field is enabled for Sentiment Analysis, the text entered into the field is scored using our Large Language Model (LLM) and the result is displayed in the following 2 key fields:
- Sentiment Status - possible sentiment statuses are: None; Positive; Neutral; Negative
- Sentiment Score - quantifies the sentiment intensity with a numeric value
Additional 3 supporting fields help indicate when sentiment was last calculated, when sentiment text was last changed, and whether sentiment is the latest up to date.
- Sentiment Changed - is the date when the value of at least one of the fields used for sentiment changed or when a text field was added/removed from being used for sentiment
- Sentiment Calculated - is the date of when the sentiment was last calculated (via custom action or workflow)
- Sentiment Latest - if the sentiment calculated timestamp is greater or equal to the sentiment changed timestamp
Sentiment Analysis can be run on-demand by using a Custom Action or automatically with a Workflow Rule.
How Are Sentiment Scores Calculated?
A sentiment score per selected text field ranges between -1 and 1. The value indicates whether the sentiment analysis assessment is positive, neutral, or negative.
Assessment | Sentiment Score |
---|---|
Positive | 1 |
Neutral | 0 |
Negative | -1 |
The sentiment score on a Project or Program is the sum of the scores calculated for each text field that is part of the sentiment calculation.
Example:
- 3 text fields are marked to be used for sentiment
- 1 field has a positive sentiment = 1 x 1
- 1 field has a neutral sentiment = 1 x 0
- 1 field has a negative sentiment = 1 x (-1)
- The overall sentiment score on the corresponding project/program = 1+0+(-1)= 0
- The overall sentiment status on the corresponding project/program = neutral
Sentiment Analysis Set-Up
To use a text field in Sentiment Analysis:
- If you are creating a new field, click the New Custom Field link. If you are editing an existing field, click the Edit link to the left of that field. Sentiment analysis can be enabled on standard and custom fields.
- Under Field Properties, check the box next to Used for Sentiment.
To easily identify which fields have been marked to be used for sentiment, take advantage of the configuration filter:
To create a custom action to calculate sentiment analysis:
- Create a new custom action as shown on the Custom Actions page.
- In the Set Actions dropdown, select Calculate Sentiment.
- In the Work Item field, enter the reference to the project or program you want to calculate sentiment for.
- In the Success Message you might want to add an indication that the page requires a refresh to display the sentiment analysis results
- Click Save.
>> You can initiate the sentiment calculation for one or more items (e.g. projects) by clicking this custom action
To create a workflow rule to calculate sentiment analysis:
- Create a workflow rule as shown on the Business Rules page.
- In the Set Run Time section, select Every time a record is created or edited
- In the Set Evaluation Criteria section, select Run only when the following conditions are met
- If True = IsChanged( <API name of text field that is marked for 'used for sentiment'>)....
- Please note: If you are removing or adding a field to sentiment calculation, you will need to update the workflow to account for the set of fields that are marked for sentiment calculation
- In the Set Actions dropdown, select Calculate Sentiment.
- In the Work Item field, enter the reference to the project or program you want to calculate sentiment for.
- Click Save.
>> When one of the fields that are marked for 'used for sentiment' are changed, the workflow will be triggered to recalculate sentiment. User Journey
Limitations
- Sentiment Analysis is currently available on Project or Program level
- Up to 50 fields can identified to be 'Used for Sentiment'
- Scheduled workflows are not supported at this point.