Requirement

class Requirement

Bases: CommonBaseModel

Defines a single requirement for engineering or scientific projects, encapsulating attributes for specification, tracking, and validation.

name

A unique identifier for the requirement.

Type:

str

description

A detailed description of what the requirement entails.

Type:

str

category

The classification of the requirement (e.g., performance, safety).

Type:

Optional[str]

priority

The priority level of the requirement (e.g., high, medium, low).

Type:

str

verification_method

The method to be used for verifying the requirement (e.g., test, analysis, inspection).

Type:

str

status

The current status of the requirement (e.g., open, closed, in progress).

Type:

str

source

The origin or source of the requirement (e.g., customer, internal, regulation).

Type:

Optional[str]

target_component

The component or system to which the requirement applies.

Type:

Optional[str]

acceptance_criteria

The criteria that must be met for the requirement to be considered satisfied.

Type:

str

risk

A description of the potential risks associated with the requirement.

Type:

Optional[str]

verification_evidence

Documentation or evidence proving the requirement has been verified.

Type:

Optional[str]

metadata

Additional metadata providing context or details about the requirement.

Type:

Optional[Metadata]

Raises:

ValueError – If essential string attributes are empty, ensuring all requirements are descriptive and actionable.

Attributes Summary

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Summary

validate_non_empty(value)

Validates that critical string fields are not empty or just whitespace, ensuring requirements are clear and actionable.

Attributes Documentation

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'allow', 'protected_namespaces': (), 'validate_assignment': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Documentation

classmethod validate_non_empty(value)

Validates that critical string fields are not empty or just whitespace, ensuring requirements are clear and actionable.

Parameters:

value (str) – The value of the field being validated.

Returns:

The validated string value.

Raises:

ValueError – If the input value is empty or consists only of whitespace.

Return type:

str

Methods:

validate_non_empty(value)

Validates that critical string fields are not empty or just whitespace, ensuring requirements are clear and actionable.

Attributes:

__pydantic_setattr_handlers__

__setattr__ handlers.

classmethod validate_non_empty(value)

Validates that critical string fields are not empty or just whitespace, ensuring requirements are clear and actionable.

Parameters:

value (str) – The value of the field being validated.

Returns:

The validated string value.

Raises:

ValueError – If the input value is empty or consists only of whitespace.

Return type:

str

__pydantic_setattr_handlers__: ClassVar[Dict[str, Callable[[BaseModel, str, Any], None]]] = {}

__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__