Skip to main content

What You Will Achieve

After completing this tutorial, you will have:
  • A Polarion LiveDoc document with Risksheet embedded
  • Risk items with severity, occurrence, and detection columns
  • Automatic RPN (Risk Priority Number) calculation using formulas
  • Conditional color coding that highlights high-risk items in red, medium in yellow, and low in green
  • A downstream mitigation task linked to a risk item
diagram

Prerequisites

Before you begin, ensure the following:
  • ✅ Risksheet is installed on your Polarion server (see Installation)
  • ✅ You have a valid Risksheet license (production or evaluation)
  • ✅ You have permission to create documents and work items in your Polarion project
  • ✅ Your project has a work item type configured for risk items (e.g., riskItem or fmeaItem)
Risksheet does not ship with pre-configured work item types. Your Polarion administrator must define a work item type for risk items with appropriate custom fields (severity, occurrence, detection) before you can create a risksheet. Coordinate with your administrator if these are not yet configured. If you have installed the Nextedy demo project from Administration > Nextedy RISKSHEET > Setup, default templates and the risksheet topic definition are already available.

Step 1: Navigate to Risksheet

Open your Polarion project in the browser. In the left sidebar, click the Risksheet topic entry. You should see the Risksheet home view displaying available folders and existing documents. The default folder path is Risks/Risk Specification.
Your administrator may have configured a specific template path for risk documents via the project-level Risksheet settings. The default template path is Risks/Risk Specification. Multiple paths can be configured using comma-separated values.

Step 2: Create a New Document

  1. Click the Create button in the document selection interface
  2. Enter a name for your risk analysis document, for example: FMEA - Sensor Module
  3. Select the default risk specification template
You should see the new document created and the empty Risksheet grid displayed, ready for data entry.
Risksheet—>Select Folder—>Create Document
Browse foldersRisks / RiskFMEA - Sensor
SpecificationModule
v
Empty Risksheet
Grid loads

Step 3: Understand the Configuration

Risksheet reads its configuration from a file named risksheet.json attached to the document. When you create a document from a template, the configuration is inherited from the template automatically. If you need to customize the configuration for a specific document, you attach a risksheet.json file directly to the document, which overrides the template configuration. The configuration defines the grid structure including columns, formulas, cell decorators, styles, and data types. Here is a minimal FMEA configuration showing the key elements:
{
  "columns": [
    { "id": "id", "header": "ID", "width": 80 },
    { "id": "title", "header": "Failure Mode", "width": 200 },
    { "id": "sev", "header": "Severity", "width": 80, "type": "rating:severity" },
    { "id": "occ", "header": "Occurrence", "width": 80, "type": "rating:occurrence" },
    { "id": "det", "header": "Detection", "width": 80, "type": "rating:detection" },
    { "id": "rpn", "header": "RPN", "width": 80, "formula": "commonRpn" }
  ],
  "ratings": {
    "severity": [
      { "id": "1", "name": "1", "description": "No effect" },
      { "id": "5", "name": "5", "description": "Moderate effect" },
      { "id": "10", "name": "10", "description": "Hazardous" }
    ],
    "occurrence": [
      { "id": "1", "name": "1", "description": "Remote" },
      { "id": "5", "name": "5", "description": "Moderate" },
      { "id": "10", "name": "10", "description": "Very High" }
    ],
    "detection": [
      { "id": "1", "name": "1", "description": "Almost certain" },
      { "id": "5", "name": "5", "description": "Moderate" },
      { "id": "10", "name": "10", "description": "Absolute uncertainty" }
    ]
  },
  "formulas": {
    "commonRpn": "function(info){ var value = info.item['occ']*info.item['det']*info.item['sev']; return value?value:null;}"
  },
  "cellDecorators": {
    "rpn": "function(info){ var val = info.value; $(info.cell).toggleClass('boldCol', true); $(info.cell).toggleClass('rpn1', val>0 && val<=150); $(info.cell).toggleClass('rpn2', val>150 && val<=350); $(info.cell).toggleClass('rpn3', val>350);}"
  },
  "styles": {
    ".boldCol": "font-weight:600;",
    ".rpn1": "background-color: #eaf5e9 !important; color: #1d5f20 !important;",
    ".rpn2": "background-color: #fff3d2 !important; color: #735602 !important;",
    ".rpn3": "background-color: #f8eae7 !important; color: #ab1c00 !important;"
  },
  "global": {
    "culture": "en"
  }
}
If you attach a custom configuration, the file must be named exactly risksheet.json. Risksheet looks for this specific filename. If the file is named differently, the configuration will not load and the grid falls back to the template configuration.

Step 4: Add Your First Risk Item

  1. Right-click anywhere in the empty grid to open the context menu
  2. Select the option to create a new risk item (the menu entry is generated from the configured levels where showInMenu is true)
  3. A new row appears in the grid with a temporary ID prefixed with an asterisk (*)
The cursor focuses on the first editable column, ready for data entry.

Step 5: Enter Risk Data

Click on the cells in the new row to enter the following data for a sample failure mode:
ColumnValue
Failure ModeSensor signal drift beyond tolerance
Severity8
Occurrence4
Detection6
After entering the severity, occurrence, and detection values, the RPN column calculates automatically using the commonRpn formula:
RPN = Severity x Occurrence x Detection = 8 x 4 x 6 = 192
You should see the RPN cell display 192 with a yellow background (medium risk), because the value falls in the 151—350 range and the rpn2 style class is applied by the cell decorator.
The default rpn cell decorator applies three risk levels based on the calculated value:
RPN RangeCSS ClassVisual Style
1 — 150rpn1Green background, dark green text
151 — 350rpn2Yellow background, dark yellow text
> 350rpn3Red background, dark red text
These thresholds and colors are fully customizable through the cellDecorators and styles configuration sections.

Step 6: Add a Second Risk Item

Right-click the grid again and create another risk item. Enter data for a different failure mode:
ColumnValue
Failure ModePower supply voltage drop
Severity9
Occurrence2
Detection5
The RPN calculates as 9 x 2 x 5 = 90, displayed with a green background (low risk: 1—150 range, rpn1 style).

Step 7: Add a Downstream Mitigation Task

  1. Select the first risk item row (Sensor signal drift)
  2. Right-click and select the option to add a new task
  3. A new task row appears below the risk item with a generated task ID
  4. Enter a task description such as Add temperature compensation algorithm
You should see the task row grouped under the parent risk item. Tasks are grouped using the systemItemId field, which links the task row to its parent risk item. When you add multiple tasks to the same risk item, they appear as consecutive rows below the parent.
Task creation is controlled by the readonly and downstreamReadonly configuration properties. If downstreamReadonly is set to true, you cannot create or edit tasks from within the risksheet. When the grid-level readonly property is true, all editing including task creation is disabled.

Step 8: Save Your Work

Click the Save button in the toolbar to persist all changes to Polarion. You should see a success confirmation. After saving:
  • Temporary IDs (prefixed with *) are replaced with permanent Polarion work item IDs
  • All risk items and tasks are stored as standard Polarion work items
  • Field values and link relationships between risk items and tasks are preserved
  • The items participate in Polarion traceability, baselines, and reporting
Risksheet batches changes in memory using deferred commit mode. Changes are sent to the server together when you click Save. If you navigate away without saving, your changes are lost. Always save before closing the browser tab.

Step 9: Verify the Data in Polarion

Right-click on the first risk item and select Open Row Item from the context menu. This opens the work item in the Polarion item editor. You should see the risk item with all the field values you entered, plus a link to the downstream mitigation task.

Summary

You have created a risk analysis document with two risk items and one mitigation task. The key elements you used:
ElementPurpose
Risk documentContainer for risk items in a specific folder path
risksheet.jsonConfiguration file defining grid structure, formulas, and styles
columnsArray defining visible columns with ID, header, width, and type
ratingsEnumeration definitions for severity, occurrence, and detection scales
formulas.commonRpnAutomatic RPN calculation from Severity x Occurrence x Detection
cellDecorators.rpnJavaScript function applying color-coded CSS classes based on RPN thresholds
stylesCSS class definitions for risk level visual formatting
Downstream taskMitigation action linked to a risk item via systemItemId

Next Steps

  • Understanding the Interface — learn the full grid layout, context menu, toolbar, and navigation features
  • Basic Configuration — customize columns, add header groups, configure review workflows, and adjust global settings
  • Column Type Reference — explore all available column types including item links, multi-enum, and calculated columns
  • Conditional Formatting — customize cell decorators and styles for your risk thresholds
  • Formula Examples — learn advanced formula patterns for HARA, TARA, and custom calculations
  • Levels Configuration — configure hierarchical levels for failure mode, cause, and effect structures
KB ArticlesSupport TicketsSource Code
  • risksheet.json
  • RisksheetProduct.java
  • AppConfig.ts
  • RisksheetProjectProperties.java
  • AddTaskCommand.ts