Requirements
Traceability
Link requirements to functions, assets and tests, find coverage gaps, and see what a change affects with the Traceability Matrix, Spider diagram and RVTM.
On this page
Overview
Traceability is the set of relationships that connect each requirement to where it came from and to what fulfills and verifies it. In Holarch every link is an LML relationship between two entities in the model, so one link made anywhere shows up everywhere: in the inspector, the Traceability Matrix, the Spider and Requirement diagrams, the RVTM, document reports and Model Checks.
The main tools:
| Tool | Where | Use it to |
|---|---|---|
| Inspector Relationships card | Any page, with an entity selected | Add or remove the links of one entity. |
| Traceability Matrix | Verification → Traceability Matrix | Create and review many links at once; find rows and columns without links. |
| Spider Diagram | An entity's Open ▾ → Spider, or Diagrams | See the trace web around one entity and run an impact analysis. |
| Requirement Diagram | Diagrams, SysML category | Show requirements with «satisfy», «verify», «deriveReqt», «refine», «copy» and «trace» links. |
| RVTM | Verification → RVTM | See each requirement's verification status, rolled up the hierarchy. |
| Model Checks | Verification → Model Checks | List leaf requirements that are not allocated or not verified. |
| Suspect Links | Needs & Requirements → Suspect Links | Review links whose upstream requirement changed (see Requirements). |
Concepts
Relationships and their inverses
A relationship has a source, a type and a target, and reads as a sentence: "1.2 Ground Sample Distance satisfied by F7 Capture Images". Every type has an inverse, and Holarch shows the link from both ends: from F7 it reads "F7 Capture Images satisfies 1.2 Ground Sample Distance". Creating either direction creates the same link.
The schema decides which classes each type may connect. A cell, menu or button that would create a link the schema does not allow is locked or refused. Projects can add their own relationship types; see Schema Extensions.
Trace relationships
| Relationship (inverse) | Connects | Meaning |
|---|---|---|
| satisfied by (satisfies) | Requirement → Action, Asset, Input/Output, Conduit (Connection), Artifact, Characteristic, Location, Cost, Time | The entity fulfills the requirement. Used for allocation to functions and design. |
| verified by (verifies) | Requirement → Test Case, Requirement, and other entities | The entity supports verification of the requirement. A Test Case here drives the RVTM. |
| traced to (traced from) | Statement or Requirement → most classes | A general trace: the target is accredited to the statement. |
| derived by (derives) | Requirement → Requirement | The target requirement is developed from this one. |
| refined by (refines) | Requirement → Requirement | The target requirement clarifies this one. |
| copied by (copies) | Requirement → Requirement | The target is a copy of this requirement. |
| decomposed by (decomposes) | Parent → child of the same class | The hierarchy: sections and child requirements, functions and subfunctions. |
| source of (sourced by) | Artifact → Statement | A document contains the statement. |
| references (referenced by) | Entity → Artifact | A standard or document defines or enhances the entity. |
| specified by (specifies) | Entity → Characteristic | A characteristic gives further information about the entity. |
| performed by (performs) | Action → Asset | The asset executes the function. |
decomposed by and source of are structure relationships: they build document outlines and hierarchies. The matrix leaves them out of the "related" columns and of the default column guess.
Coverage
Coverage answers "is every requirement allocated and verified?":
- Allocated: a leaf requirement (one with no child requirements) is satisfied by, or traced to, at least one Action, Asset, Input/Output or Conduit. Model Check Requirement.8 lists the ones that are not.
- Verified: a leaf requirement is verified by at least one Test Case. Model Check Requirement.10 lists the ones that are not. The Quality Checker's Verifiable criterion fails with "No verifying Requirement or Test Case is linked." when a requirement has no verified by link to a Requirement or Test Case.
- Verification status: the RVTM gives each requirement a status (Passed, Failed, Not Run, Planned-only, Unverified) from the results of its test cases and rolls it up the hierarchy. See RVTM statuses.
A gap in the matrix is a row or column with no links of the shown relationship types.
Impact
Impact is the set of entities a change can affect. Two mechanisms show it:
- Impact Analysis in the Spider diagram highlights everything reachable from a selected entity within N links, before you make the change.
- Suspect links flag the downstream links of a requirement automatically after a change to its text or key attributes (see Requirements).
How to use it
When and why
Trace as soon as requirements and functions exist, and keep tracing through design and verification:
- After requirements are written: decompose and derive (parent requirement derived by child requirement) so each low-level requirement traces to a stakeholder need.
- During functional analysis and architecture: allocate each leaf requirement with satisfied by to the functions, assets, interfaces and items that fulfill it.
- During verification planning: link each requirement with verified by to the test cases that prove it.
- Before each review: check coverage (gaps, RVTM, Model Checks) and export the matrices for the review package.
- During change control: run an impact analysis before a change, and review suspect links after it.
The matrix answers "what links exist and what is missing?"; the Spider answers "what is connected to this one item?"; the RVTM answers "is it verified, and did the tests pass?".
Link one requirement in the inspector
- Select the requirement in a document, the Database or any table. The inspector opens on the right.
- Open the Relationships card. The list at the top chooses which types show: Pinned (your pinned types plus any in use), Active (types with links) or All (every type the schema allows).
- On the relationship type (for example satisfied by), click Add ▾:
- Relate Existing Entities… opens a searchable list of allowed targets. Tick one or more and click Relate Selected.
- Create New… creates a new entity of an allowed class and links it.
- To remove a link, click × on its row.
Result: the link appears under the type, with a count on the heading. Pin a type you use often with 📌 so it shows in Pinned mode for that class.
Link many requirements in the Traceability Matrix
- Open Verification → Traceability Matrix.
- In the left pane, Filter tab, set Left (Y Axis): Rows From = Query, Left Query (Y Axis) =
class:Requirement, and press Enter. - Set Top (X Axis): Axis Type = Query, Top Query (X Axis) =
class:Action. - Under Relationship Type, choose satisfied by. The description under the list explains the type.
- Click an empty cell to create the link. The cell shows the mark (X by default) and the row and column counts go up.
- Click a marked cell to remove the link. With Confirm before removing a relationship on, confirm in Remove Relationship.
Result: the summary at the top right reads, for example, "32 rows × 108 columns · 56 links · 4 rows without links".
Find gaps
- In the matrix, tick Gaps only. Only rows with no links remain.
- Tick Hide empty columns to drop columns nothing links to.
- For each gap row, either create the missing link, or decide that the requirement is not a leaf, is a Statement, or is not needed.
- Check from other angles:
- Verification → RVTM: the Unverified and Planned-only cards.
- Verification → Model Checks: Requirement.8 (not allocated) and Requirement.10 (not verified), each with Fix.
- The Database query
class:Requirement AND NOT relationship:"verified by".
Let AI suggest missing links
- Set up the axes and choose the relationship type (for example verified by, rows
class:Requirement, columnsclass:"Test Case"). - Choose ✦ AI ▾ → Traceability Assist (suggest missing links). If no relationship is chosen, pick one in Relationship for Assist and click Run.
- Suggested cells are tinted green (stronger for higher confidence) and show +. Point at a cell for the confidence and reason.
- Click a tinted cell to create that one link, or Accept all to create all suggestions in one undo step. Clear removes the tints.
Suspect Assist (flag doubtful links) works the same way on existing links: doubtful cells are tinted red, clicking one removes the link, and Accept all removals (N) opens Remove N links with a checklist (links touching Approved, baselined or locked items start unticked); Remove Ticked removes the ticked links in one undo step.
Run an impact analysis before a change
- Open the requirement and choose Open ▾ → Spider (or right-click a node in any Spider diagram and choose Open as Spider Root).
- Click Relationships (N) ▾ and choose a preset: Requirements V&V (traced to, satisfied by, verified by, source of) or Traceability Relationships (decomposed by, performed by, source of, traced to). Click Generate.
- Choose the depth in the level list (up to 10) and click Generate again if you changed it.
- Select the requirement and click Impact. Choose Level 1 to Level N in the list next to it.
Result: the entities within that many links stay highlighted and everything else is dimmed. Press Esc or click Impact again to leave impact mode; the diagram cannot be edited while it is on.
Report traceability
- Matrix: Export ▾ → Matrix Report (Excel), Comma Separated (CSV), Detailed CSV (relation names) or Importable Matrix (CSV).
- RVTM: Export ▾ → Excel (.xlsx), CSV or Word (.docx) on the RVTM page.
- From a document: Reports → RVTM Output (XLSX), VCRM Output (XLSX), RVM Output (XLSX) (verified by), RTM Output (XLSX) (traced to), RSM Output (XLSX) (satisfied by) and TVM Output (XLSX) (test case × requirement). See Documents.
- From the Database: the Entity Relationship Matrix (XLSX) export for the selected entities and one relationship. See The Model and the Database.
Worked example: the CubeSat EO-1 demo
The demo project CubeSat EO-1 — Earth Observation Demo has 32 requirements in SRS-001 EO-1 System Requirements Specification, top-level functions F1 to F11 under F0 Perform EO-1 Mission, a physical architecture under 0 EO-1 Mission, and test cases TC-01 to TC-17 in two test suites.
Allocation matrix. Open Verification → Traceability Matrix. Set Rows From = Query with class:Requirement, Axis Type = Query with class:Action, and Relationship Type = satisfied by. The grid shows, for example, 1.2 Ground Sample Distance, 1.3 Swath Width and 1.4 Spectral Bands satisfied by F7 Capture Images, and 3.1 Orbit Average Power satisfied by F3 Generate and Store Power and F3.1 Convert Sunlight to Power. Tick Gaps only: rows such as 2.5 Safe Mode Recovery and 3.5 Battery Thermal Control remain. Those are the weak, unfinished requirements of the demo; allocate 2.5 to F10 Enter Safe Mode by clicking its cell.
Verification matrix. Change the top query to class:"Test Case" and the relationship to verified by. 2.1 Pointing Accuracy and 2.2 Pointing Stability share TC-04 Pointing Accuracy Test; 3.2 Battery Capacity and 3.3 Depth of Discharge share TC-07 Battery Capacity Test.
RVTM. Open Verification → RVTM. The first card reads 11 / 32 Verified (Passed). 2.1 Pointing Accuracy is Failed because TC-04 measured 0.14 degrees on 3 of 20 targets. 1.6 Revisit Time has no test of its own (own status Planned-only, from its Analysis method), but its status rolls up to Not Run from its children: 1.6.1 Ground Track Repeat has Passed and 1.6.2 Off-Nadir Imaging has Not Run. 2.5 Safe Mode Recovery is Unverified: no method and no test.
Impact analysis. Open 3.1 Orbit Average Power, choose Open ▾ → Spider, pick the Requirements V&V preset and click Generate. Select 3.1, click Impact and choose Level 1: the highlighted items are 1.3.1 Solar Arrays, F3 Generate and Store Power, F3.1 Convert Sunlight to Power, the equations EQ-1.1 and EQ-1.4, and TC-06 Solar Array Power Test, the same six items that Suspect Links flags after 3.1 changed from 28 W to 30 W.
Tips and good practice
- Trace leaf requirements. A parent requirement is covered through its children; the RVTM and Model Checks treat it that way.
- Use satisfied by for allocation and verified by for verification, and reserve traced to for references that are neither. Reports and checks look for those specific types.
- Pick one relationship type in the matrix before creating links. With All allowed, a click on a cell with several possible types opens a menu, and Relation to create on click can set a fixed type.
- Save a matrix you review often as an artifact with Export ▾ → Export to a New Artifact…. It reopens with the same axes, and it can go into a review package.
- Use a root hierarchy (Root Entity hierarchy) instead of a class to keep rows in document order with indentation.
- Run Traceability Assist on a filtered range: it is faster and the suggestions are easier to check.
Common mistakes
| Symptom | Cause | Fix |
|---|---|---|
| Clicking a cell shows "The schema does not allow …". | The row and column classes cannot be linked with that type. | Choose another relationship type, or swap the axes; the schema defines direction. |
| A grey, unclickable cell. | The schema forbids every shown relationship type for that pair, or it is the diagonal (an entity against itself). | As above. |
| A requirement with a test still shows Unverified in the RVTM. | The link is traced to or goes to an entity that is not a Test Case. | Link a Test Case with verified by. |
| The matrix shows "No rows to display". | The row query or class matches nothing, or the root entity was deleted. | Fix the Y-axis setting. |
| "Rows: The query is not valid. Check the query syntax." | The axis query does not parse. | See Search Query Syntax. |
| A parent requirement shows as a gap. | Links are on its children. | Expected. Use a root hierarchy to see the children, or filter rows with is:leaf. |
How it connects to other features
- Feeds from: requirements (Requirements, Documents), functions (Functional Analysis creates satisfied by links when it extracts functions), architecture, interfaces and the Test Center (test cases created there are linked with verified by).
- Feeds into: the RVTM and Test Center coverage, Model Checks, the Quality Checker's Verifiable criterion, suspect-link tracking, document trace reports, Home (verification counts and next actions), and Review Packages.
The Traceability Matrix
The matrix is a grid of entities: rows on the left (Y axis), columns on top (X axis), and a mark in each cell where a relationship of the shown types exists. Open it from Verification → Traceability Matrix, from the Database (Matrix on the query bar, or Matrix on the selection bar for the selected rows), from an entity's Open ▾, from a test suite's ⋯ → Open in Traceability Matrix, or from DoDAF.
With no saved setup, rows are every Requirement and columns are the class most often linked from them.
Top bar
- Import…: the CSV matrix import wizard (see Import a matrix).
- Export ▾: under Files, Matrix Report (Excel), Comma Separated (CSV), Detailed CSV (relation names) and Importable Matrix (CSV); under Artifacts, Export to a New Artifact… and Export to an Existing Artifact… (not shown when the matrix is already an artifact).
- Open Matrix Artifact: shown for a matrix artifact; opens its Entity View.
- ✦ AI ▾: Traceability Assist (suggest missing links), Suspect Assist (flag doubtful links), Accept all suggestions (N) or Accept all removals (N) while an assist is shown, and Clear Assist.
Toolbar
| Control | Action |
|---|---|
| + Column | Add New Column(s): search by name or number, tick entities, and click Add. Scroll To New Entities (on by default) scrolls to them. Entities already on the other axis are marked "(on the other axis)". |
| + Row | Add New Row(s), the same for rows. |
| Open Y Root ▾ / Open X Root ▾ | Open the axis root entity: Entity View, Document View (artifacts and statements), Hierarchy Diagram, Spider Diagram, Asset Diagram (assets), Action Diagram (actions), Traceability Matrix (as root). Without a root: "No Y-axis root entity selected". |
| Filter field | "Filter rows and columns": keeps rows and columns whose number or name contains the text, plus the rows and columns linked to them. |
| Find and Rows / Columns | Highlights matching headers on the chosen axis. Enter jumps to the next match, Shift+Enter to the previous. "No matches" when none. |
| Gaps only | Shows only rows with no links. |
| Hide empty columns | Hides columns with no links. |
| Readout | While pointing at a cell: "Top: <column> · Left: <row>". |
| Summary | "<rows> rows × <columns> columns · <links> links · <n> rows without links". |
Left pane: Filter tab
Left (Y Axis), Rows From:
| Option | Setting |
|---|---|
| Root Entity hierarchy | Root Entity: Choose… or Change…. Rows are the root and its tree through source of, decomposed by and referenced by, in number order, indented by depth. |
| Query | Left Query (Y Axis), for example class:Requirement AND is:leaf. Applied on Enter or when the field loses focus. |
| Entities of a class | Row Class. |
| Selected entities | The entities chosen in the Database. "Select entities in the Database and choose Matrix to change." |
Top (X Axis), Axis Type (disabled while there are no rows):
| Option | Setting |
|---|---|
| Hierarchy (root entity) | Root Entity. Columns are the root and its tree through decomposed by, plus source of for an artifact, or referenced by for a test suite. |
| Query | Top Query (X Axis), for example class:Action. |
| Related (targets of the rows) | Columns are every entity the rows link to (structure relationships excluded), or, with a relationship chosen, the entities linked through it. |
| Entities of a class | Column Class. |
Relationship Type: All allowed (N) (every type the schema allows between the row and column classes) or one type. The text under the list is the type's description, or "Cells show every relationship the schema allows between the row and column entities."
Options:
| Option | Values | Default |
|---|---|---|
| Checked Cell Options | X, ✓ Checkmark, ★ Star, ◆ Holarch | X |
| Cell Content | Mark, Relation name, Count | Mark |
| Indicator Options (hover) | Cross (row, column and their cells), Axis (headers only), Text (readout only) | Cross |
| Relation to create on click | Ask when more than one applies, or one type | Ask |
| Hide Roots | Leave the root entity out of hierarchy axes | Off |
| Confirm before removing a relationship | Ask before a click removes a link | On |
Show hidden (N) brings back hidden rows and columns; Remove added rows/columns removes everything added with + Row and + Column.
Legend: the mark ("relationship exists — click to remove"), an empty cell ("click an empty cell to relate"), a locked cell ("not allowed by the schema"), a gap ("row / column with no links (gap)"), and "Click a row or column header to select it; double-click opens it; Esc deselects."
Left pane: Comments tab
Comments attach to the axis root entities. With both a Y and an X root, Show X Root Comments / Show Y Root Comments switches between them. Type in Add a comment… and click Post Comment; × deletes a comment. Without a root: "Comments are attached to the axis root entities. Choose a root entity on the Filter tab." A 💬 next to a header means that entity has comments.
The grid
- Headers: each column header is rotated and shows its number and name; each row header shows a class color swatch. Point at a header for its class and label. Gap rows and columns are highlighted. The Links column and row give the count per row and column and the total.
- Empty cell: click to create a link. With one allowed type, it is created at once. With several, a menu lists them, with satisfied by, satisfies, verified by, verifies, traced to, traced from, performs and performed by first. Relation to create on click skips the menu.
- Marked cell: shows the mark, the relationship names or the count. Point at it for "<row> — <relationship> — <column>". Click to remove: one link is removed (after confirmation); with several, a menu Remove which relationship? lists each, plus All of them.
- Locked cell: grey; the schema allows none of the shown types for that pair. Its tooltip reads "Not allowed by the schema: <class> → <class>".
- Diagonal: an entity on both axes; not clickable.
Selecting a row or column
Click a row or column header to select it. The entity shows in the inspector, and a bar above the grid offers:
| Button | Action |
|---|---|
| Clear Row / Clear Column | "Remove N relationships of "<entity>" shown in this matrix?" Removes only the links shown. "Nothing to clear" when there are none. |
| Hide Row / Hide Column | Hides it from this matrix view. |
| Delete from Database | Deletes the entity after "Delete "<entity>" from the database?". |
| Open ▾ | The same menu as Open Y Root ▾. |
| Deselect (Esc) | Clears the selection. |
Double-click a header to open the Entity View.
Matrix artifacts
Export ▾ → Export to a New Artifact… asks for Number, Name and Description ("Enter a name or a number."), creates an Artifact labeled Matrix and saves the axes, relationship and options in it. Export to an Existing Artifact… saves them into an artifact you pick (compilations, test suites, simulation outputs and existing matrices are excluded). The toast reads "Matrix saved to artifact "<name>"" and the matrix reopens from the artifact.
A matrix artifact opens with its saved setup, and changes are saved back to it. The Matrix Artifact box at the top of the left pane shows its name and description; ✎ edits the number, name and description (Done or Cancel; "Name or number is required"). A new matrix artifact with no axes asks for one in Matrix Artifact: "This matrix has no Y axis yet. Pick a Y axis type and value." Choose Root Entity or Query and click Update; Back leaves.
Saved setups
Holarch remembers each matrix setup per row source (root, query or class) in the project, and reopens the last one. The mark, hover style, Hide Roots and confirmation options are kept in this browser. Scroll position is restored.
Exports
| Export | Content |
|---|---|
| Matrix Report (Excel) | A spreadsheet (.xls) titled "<rows> to <columns> (<relationship>)" with rotated column headers, the mark (or relation names) in linked cells and grey locked cells. |
| Comma Separated (CSV) | Row labels × column labels with X in linked cells. |
| Detailed CSV (relation names) | The relationship names in each cell, plus Links totals. |
| Importable Matrix (CSV) | A file the Import… wizard can read back: cell A1 holds the matrix setup and relationship, headers are "<id>:<Number Name>", cells are X or blank. Added columns are left out. The relationship is the selected one, else the create-on-click one, else the most common in the grid. |
Each export asks for a File Name in Download Report.
Import a matrix
Import… reads a CSV matrix and shows Import Matrix — Analysis before changing anything:
- Cell A1 must hold the setup from an Importable Matrix export, or a relationship name (for example
satisfied by). - Row and column headers are matched by ID, by "Number Name" label, or by number.
- A non-blank cell means "linked"; a blank cell means "not linked".
The analysis shows the relationship, the row and column counts, and + N to add, − N to remove, errors and warnings, with expandable sections Add, Remove, Errors: Relationship With Self, Errors: Existing Bad Relationships (will be removed), Errors: New Bad Relationships (skipped) and Warnings: Entities Not Found. Click Import to apply all changes in one undo step. The toast reads "Imported: N added, M removed".
| Message | Meaning |
|---|---|
| The file has no matrix rows. | The CSV has fewer than two rows. |
| Could not parse the session info in cell A1. | A1 starts with { but is not valid. |
| Could not find the relationship ("…"). | A1 names no known relationship. |
| Cell A1 must contain the session info or a relationship name. | A1 is empty. |
| Could not read the file. | The file could not be opened. |
Note: Blank cells remove existing links of that type between the listed rows and columns. Export first, edit, and import the same file to avoid removing links by accident.
Address options
The matrix can open from a link with these parameters: matrix?root=<id> (rows are its hierarchy, columns the same hierarchy), ?q= or ?rowsq= (row query), ?rows=id,id (selected entities), ?cols=<classId> (column class), ?colsq= (column query), ?rel=<relationId> and ?artifact=<id> (a matrix artifact).
Spider diagram and impact analysis
The Spider Diagram is a radial graph around one root entity over the relationship types you choose. It is the quickest way to see the whole trace web of a requirement.
- Relationships (N) ▾: Default Presets (All Relationships, Traceability Relationships, Decomposition, Requirements V&V, None), Custom Presets (Save as Preset… saves the current choice for the project; Remove Presets…), and the list of relationship types in the project with their counts and colors. Changes apply with Generate.
- Level list: how many links out from the root (up to 10). Generate applies the level and relationship changes; it is highlighted while changes are pending.
- Layout resets node positions. + Add Related… relates a new or existing entity to the selected node ("Related: <a> <relationship> <b>"). Hide removes selected nodes from the diagram; Show Hidden brings them back.
- Impact and its level list: with one entity selected, highlights everything within the chosen number of links and dims the rest. Without a selection: "Select one entity to run an impact analysis." Editing is blocked while it is on ("Turn off Impact Analysis to edit the diagram."); Esc turns it off.
- Drag from a node's connection handle to another node to create a relationship. Select a link and press Delete to remove it ("Relationship removed (⌘Z to undo)").
- Right-click a node: Expand (show more related entities), Add Related Entity…, Open Entity View, Open as Spider Root, Remove from Diagram, Delete from Database.
For the full diagram editor, see Diagram Editor Basics and Spider Diagram.
Requirement diagram
The SysML Requirement Diagram draws requirements as blocks with their containment and dashed trace arrows: «satisfy», «verify», «deriveReqt», «refine», «copy» and «trace». When you connect two blocks, the default stereotype is «verify» from a Test Case, «satisfy» from an Asset or Action, and «trace» otherwise. The toolbar's attribute menu shows or hides Id, Text and each requirement attribute on the blocks. See Requirement Diagram.
Trace indicators in documents
In a document, each row shows small S, T and V indicators when the item has satisfied by, traced to or verified by links. Turn them off with ⚙ View ▾ → Display Options… → Disable gap analysis indicators (S/T/V). Add relationship columns to the document with Display Options… to see the linked items in the table. See Documents.
RVTM and verification coverage
Verification → RVTM (Requirements Verification Traceability Matrix) lists each requirement with its Method, Level, the test cases that verify it (Verified by, or "No test"), its Own status and its rolled-up Status.
- Cards: Verified (Passed) ("<passed> / <total>" with a progress bar), then Failed, Not Run, Planned-only and Unverified. Click a card to show only those requirements; the chip Status: <status> × shows all again.
- Filter by number or name narrows the rows.
- Click a row (or press Enter) to show the requirement in the inspector; Esc deselects.
- Top bar: Export ▾ (Excel (.xlsx), CSV, Word (.docx)) and Test Center.
RVTM statuses
A requirement's own status comes from the test cases linked to it with verified by:
| Own status | Rule (first match wins) |
|---|---|
| Failed | A verifying test case failed. |
| Passed | A verifying test case passed. |
| Not Run | Verifying test cases exist, but none passed or failed. |
| Planned-only | No test case, but a Verification Method is set. |
| Unverified | No test case and no Verification Method. |
The Status column rolls the own status up through decomposed by:
- A failure anywhere below makes the parent Failed.
- The parent is Passed when its own test passed, or when every child requirement is Passed.
- Otherwise the parent shows the further-along of its own status and its least-covered child (Unverified < Planned-only < Not Run < Passed).
"Verified" means Passed. The RVTM exports have the columns Requirement Number, Requirement, Verification Method, Verification Level, Success Criteria, Verified By (with each test's result), Own Status and Status (rolled up).
When the filter matches nothing: "No requirement matches this filter. Clear the filter to show every requirement." With no requirements: "This project has no requirements. Write or import requirements, then link test cases with “verified by”." See RVTM and Test Center for test runs and results.
Model Checks for traceability
Verification → Model Checks runs rules over the whole model. The traceability rules:
| Rule | Heading | Fix offered |
|---|---|---|
| Requirement.1 | Requirement mentions entities it is not linked to | Add traced to links to every entity the text mentions. |
| Requirement.6 | Requirements with no child or parent | Add a parent or child. |
| Requirement.7 | Requirements with more than one parent | Detach the surplus parents, or Ignore if the reuse is intentional. |
| Requirement.8 | Leaf requirements not allocated to the design | Link the design entities that fulfill the requirement (satisfied by or traced to an Action, Asset, Input/Output or Conduit). |
| Requirement.9 | Requirements allocated to several input/outputs | Keep a single Input/Output link, or Ignore. |
| Requirement.10 | Leaf requirements with no verifying test case | Link the Test Case that verifies the requirement, or create one in the Test Center. |
| Global.6 | Orphan entities (no relationships) | Delete the entity or connect it. |
See Model Checks.
Queries for coverage
| Query | Shows |
|---|---|
class:Requirement AND NOT relationship:"verified by" | Requirements with no verifying link. |
class:Requirement AND NOT relationship:"satisfied by" | Requirements not allocated. |
class:Requirement AND is:leaf | Leaf requirements (use as matrix rows). |
is:orphan | Entities with no relationships. |
Use any of them as a matrix axis query or in the Database. See Search Query Syntax.
Shortcuts
| Keys | Where | Action |
|---|---|---|
| ← ↑ → ↓ | Matrix grid | Move between headers and cells. |
| Enter or Space | Matrix grid | Act on the focused item: select a header, or toggle the cell's link. |
| Esc | Matrix | Deselect the row or column. |
| Enter / Shift+Enter | Matrix Find | Next / previous match. |
| Enter | Matrix axis query fields | Apply the query. |
| Esc | Spider diagram | Leave impact mode, or clear the selection. |
| Delete | Spider diagram, link selected | Remove the relationship. |
| Enter, Esc | RVTM rows | Show in the inspector; deselect. |
| ⌘Z | Anywhere | Undo, including a whole matrix import or Accept all. |
See Keyboard Shortcuts for the full list.
Messages
| Message | Meaning |
|---|---|
| The schema does not allow "<relationship>" from <class> to <class> | The clicked cell's pair cannot take that relationship type. |
| The schema does not allow a relationship from <class> to <class> | No shown type is allowed for the pair. |
| Rows: The query is not valid. Check the query syntax. / Columns: … | An axis query does not parse. |
| No rows to display / No column entities — "Choose a root entity, query or class for each axis in the sidebar." | An axis is empty. |
| No Y-axis root entity selected / No X-axis root entity selected | Open Y Root ▾ / Open X Root ▾ without a root. |
| Nothing to clear | Clear Row or Clear Column found no shown links. |
| N suggestions — tinted in the matrix / Claude found nothing to flag | Result of an assist. |
| Too many cells for Assist (over 20,000). Filter the matrix to a smaller range first. | Narrow the axes before running an assist. |
| AI is not available. Set up a provider in AI Settings. | No AI provider is configured; see AI Settings and Keys. |
| Matrix saved to artifact "<name>" | The setup was saved to a matrix artifact. |
| Select one entity to run an impact analysis. | Select exactly one node before Impact. |
Limits
- Axis queries return at most 100,000 entities.
- Hierarchy axes go 10 levels deep.
- + Column and + Row list up to 300 matching entities; search to narrow the list.
- Traceability Assist and Suspect Assist work on up to 20,000 visible cells, sending 40 rows per AI request.
- The Spider diagram expands up to 10 levels; the impact level goes up to the diagram's level.
- The import analysis lists up to 300 items per section.
Related
- Requirements: attributes, quality, approvals, suspect links and baselines.
- Documents: S/T/V indicators, relationship columns and trace reports.
- The Model and the Database: queries, the inspector and the relationship matrix export.
- Schema Extensions: custom relationship types.
- Help: Traceability Matrix, Trace Requirements and Find Gaps, RVTM, Test Center, Model Checks, Spider Diagram, LML Primer.
Last updated October 7, 2026