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

# Requirements

<img height="20" noZoom src="https://mintcdn.com/celedonsolutions/Jrllsva0Wnxsp6y9/images/objecticons/requirement.svg?fit=max&auto=format&n=Jrllsva0Wnxsp6y9&q=85&s=c2b881edadfc1002e159bfa0ebb8fed8" data-path="images/objecticons/requirement.svg" />

## Description

Requirements specify conditions or capabilities that a system must satisfy to meet stakeholder needs and objectives. In SysML v2, requirements are fundamental elements that capture what the system must do, how well it must perform, and under what conditions it must operate. They form the foundation of system verification and validation activities.

Requirements in Davinci are formally captured through logical, evaluable statements that can be assessed as true or false. This enables automated verification of whether the system design meets its specified requirements. Each requirement can be decomposed into sub-requirements, creating a hierarchical structure that traces from high-level stakeholder needs down to detailed design specifications. Requirements are validated through their owned constraint objects, which define the specific testable conditions that determine requirement satisfaction.

<Info>While requirement descriptions are typically written as "shall" statements following systems engineering best practices, the actual evaluation and verification is performed using the mathematical constraints and conditions owned by the requirement.</Info>

Requirements can have the following status:

| Status       | Description                                                          |
| ------------ | -------------------------------------------------------------------- |
| `TRUE`       | All owned constraints or subrequirement(s) are `TRUE`                |
| `FALSE`      | One or all of the owned constraints or subrequirement(s) are `FALSE` |
| `INCOMPLETE` | Unable to evaluate to either true or false                           |

<Note>Object is incomplete if no constraint or subrequirement(s) exist or all subrequirement(s) are also incomplete.</Note>

## View Types

| View                                                  | Description                                              |
| :---------------------------------------------------- | :------------------------------------------------------- |
| [Properties](/pages/user-guide/views/properties)      | Edit the object's properties, attributes, and metadata.  |
| [Table](/pages/user-guide/views/table)                | Display the object and its children in a tabular format. |
| [Tree](/pages/user-guide/views/tree)                  | View the hierarchical structure of the object.           |
| [Relationships](/pages/modeling/common/relationships) | Explore the network of connections to other objects.     |
| [Thread](/pages/user-guide/views/digital-thread)      | Visualize traceability and connection density in 3D.     |
| [History](/pages/editor/model-area)                   | Track changes and revisions to the object.               |

## Properties Fields

<ParamField path="Inheritable" type="boolean">
  **Yes.** Requirements can be used as bases or specializations through [object inheritance](/pages/modeling/common/inheritance).
</ParamField>

<ParamField path="Name" type="string">
  Name of the object.
</ParamField>

<ParamField path="Short Name" type="string">
  Short name of the object.
</ParamField>

<ParamField path="Documentation" type="string">
  Description of the object.
</ParamField>

<ParamField path="Attributes" type="object">
  <a href="/pages/modeling/objects/attributes" style={{ borderBottom: 'none' }}>
    <img height="20" noZoom src="https://mintcdn.com/celedonsolutions/JD7z60pewriZ7tTc/images/objecticons/attribute.svg?fit=max&auto=format&n=JD7z60pewriZ7tTc&q=85&s=ee78f4757a821d3bff63f0845a0f804c" data-path="images/objecticons/attribute.svg" />
  </a>

  A list of all Attribute objects owned by this requirement.

  Attribute Equations, Units and Type can be editied here, as well as recalculated and deleted entirely.

  [Read more about Attributes](/pages/modeling/objects/attributes)
</ParamField>

<ParamField path="Constraints" type="object">
  <a href="/pages/modeling/objects/constraints" style={{ borderBottom: 'none' }}>
    <img height="20" noZoom src="https://mintcdn.com/celedonsolutions/JD7z60pewriZ7tTc/images/objecticons/constraint.svg?fit=max&auto=format&n=JD7z60pewriZ7tTc&q=85&s=0ef10cabe6703b8e3bd5a86ecc22478c" data-path="images/objecticons/constraint.svg" />
  </a>

  A list of all Constraint objects owned by this requirement.

  Constraint Equations and Analysis Type can be editied here, as well as recalculated and deleted entirely.

  [Read more about Constraints](/pages/modeling/objects/constraints)
</ParamField>

<ParamField path="Elements" type="object">
  <div style={{ display: 'flex', flexDirection: 'row', gap: '10px' }}>
    <img height="20" noZoom src="https://mintcdn.com/celedonsolutions/Jrllsva0Wnxsp6y9/images/objecticons/requirement.svg?fit=max&auto=format&n=Jrllsva0Wnxsp6y9&q=85&s=c2b881edadfc1002e159bfa0ebb8fed8" data-path="images/objecticons/requirement.svg" />

    <a href="/pages/modeling/objects/port" style={{ borderBottom: 'none' }}>
      <img height="20" noZoom src="https://mintcdn.com/celedonsolutions/JD7z60pewriZ7tTc/images/objecticons/code.svg?fit=max&auto=format&n=JD7z60pewriZ7tTc&q=85&s=afc96b99cb62a5c56be9c16ad30950e5" data-path="images/objecticons/code.svg" />
    </a>
  </div>

  A list of all other model objects owned by this part.

  Requirements and Code can be viewed and deleted.

  [Read more about Code](/pages/modeling/objects/code)
</ParamField>

<ParamField path="Relationships" type="connection">
  A list of all Relationships this object has with other model objects.

  [Read more about Relationships](/pages/modeling/common/relationships)
</ParamField>
