> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nextedy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Risk Management Model

> The risk management data model defines entity types and relationships for hazard analysis and risk control workflows within Siemens Polarion ALM.

export const LastReviewed = ({date}) => {
  if (!date) return null;
  const formatted = new Date(`${date}T00:00:00Z`).toLocaleDateString("en-US", {
    year: "numeric",
    month: "long",
    day: "numeric",
    timeZone: "UTC"
  });
  return <p className="mt-10 text-sm text-gray-400 dark:text-zinc-500 not-prose">
      Last reviewed on {formatted}
    </p>;
};

<Frame>
  <img src="https://mintcdn.com/none-17b4493f/-WiVljKlDztH36bB/powersheet/diagrams/reference/example-models/risk-management-model/diagram-1.svg?fit=max&auto=format&n=-WiVljKlDztH36bB&q=85&s=80c8a31113d62fc8b49bfb8a7bddf734" alt="diagram" style={{ width: "460px", maxWidth: "100%" }} width="460" height="180" data-path="powersheet/diagrams/reference/example-models/risk-management-model/diagram-1.svg" />
</Frame>

<Info title="Verify in application">
  This model reference is derived from source code configuration. Verify entity type names and property mappings against your project configuration.
</Info>

## Entity Types

Entity types are declared as a map under `domainModelTypes`, keyed by type name. Each entry specifies a `polarionType` mapping and its properties.

| Entity Type      | Polarion Type    | Purpose                                                  |
| ---------------- | ---------------- | -------------------------------------------------------- |
| `Hazard`         | `hazard`         | Risk items identified during hazard analysis             |
| `RiskControl`    | `riskControl`    | Mitigation measures applied to reduce risk               |
| `RiskAssessment` | `riskAssessment` | Evaluated risk levels combining severity and probability |

### Property Configuration

Each entity type declares its properties as a map. Property names are used in queries, column bindings, and data display.

```yaml theme={null}
domainModelTypes:
  Hazard:
    polarionType: hazard
    properties:
      description:
      severity:
      probability:
      riskLevel:

  RiskControl:
    polarionType: riskControl
    properties:
      description:
      controlType:
      effectiveness:

  RiskAssessment:
    polarionType: riskAssessment
    properties:
      description:
      residualRisk:
      acceptability:
```

A property set to `null` (empty after the colon) inherits all default settings. The property name is used as the Polarion field name unless `serverName` or `customFieldName` is specified.

## Relationships

Relationships define how entity types are connected. Each relationship specifies the Polarion `linkRole` and navigation property names using `direct` (forward) and `back` (reverse) notation.

```yaml theme={null}
relationships:
  - from: Hazard
    to: RiskControl
    linkRole: mitigates
    cardinality: one-to-many
    storage: linkedWorkItems
    direct:
      name: riskControls
    back:
      name: hazards

  - from: Hazard
    to: RiskAssessment
    linkRole: has_assessment
    cardinality: one-to-many
    storage: linkedWorkItems
    direct:
      name: riskAssessments
    back:
      name: hazard
```

| Property      | Description                                                              |
| ------------- | ------------------------------------------------------------------------ |
| `from` / `to` | Source and target entity type names (must match `domainModelTypes` keys) |
| `linkRole`    | Polarion link role ID implementing this relationship                     |
| `cardinality` | Multiplicity: `one-to-many`, `many-to-one`, or `many-to-many`            |
| `storage`     | Must be `linkedWorkItems` (Polarion native linking)                      |
| `direct.name` | Navigation property on the source entity for forward traversal           |
| `back.name`   | Navigation property on the target entity for reverse traversal           |

## Complete YAML Example

```yaml theme={null}
domainModelTypes:
  Hazard:
    polarionType: hazard
    properties:
      description:
      severity:
      probability:
      riskLevel:

  RiskControl:
    polarionType: riskControl
    properties:
      description:
      controlType:
      effectiveness:

  RiskAssessment:
    polarionType: riskAssessment
    properties:
      description:
      residualRisk:
      acceptability:

relationships:
  - from: Hazard
    to: RiskControl
    linkRole: mitigates
    cardinality: one-to-many
    storage: linkedWorkItems
    direct:
      name: riskControls
    back:
      name: hazards

  - from: Hazard
    to: RiskAssessment
    linkRole: has_assessment
    cardinality: one-to-many
    storage: linkedWorkItems
    direct:
      name: riskAssessments
    back:
      name: hazard
```

<Tip title="Custom Field Naming">
  Polarion custom field IDs typically use the `c_` prefix (e.g., `c_probability`). Use the `customFieldName` property when the Nextedy POWERSHEET property name differs from the Polarion field ID.
</Tip>

## See Also

* [RTM Model](/powersheet/reference/example-models/rtm-model) -- standard requirements traceability model
* [Properties](/powersheet/reference/data-model/properties) -- full property configuration reference
* [Cardinality](/powersheet/reference/data-model/cardinality) -- relationship multiplicity options
* [Data Model Types](/powersheet/reference/data-model/domainmodeltypes) -- entity type definitions

<LastReviewed date="2026-06-22" />
