Skip to content

memo_assurance_verification_validation

SysML API

Public namespace memo::assurance::verification_validation
Declared package memo_assurance_verification_validation
Source src/assurance/verification_validation/memo_assurance.sysml

Namespace hierarchy

memomemo::assurancememo::assurance::verification_validation

Packages

Package
memo_assurance_verification_validation

Imports

Visibility Target
private Metaobjects::SemanticMetadata
private ScalarValues::*
private memo_core_common::*
private memo_core_enumerations::*
private memo_core_relationships::*
private memo_architecture_operational_scenarios::*
private memo_architecture_operational_use_cases::*
private memo_architecture_functional_functions::*

Declarations

Name SysML kind Description Specializes
VerificationCase verification def Verification and validation cases are SysML v2 verification cases (behaviours that check requirements), not verifiable structures — they derive from the MemoVerificationCase foundation, not MemoPart. status is NOT redeclared here.… MemoVerificationCase
ValidationCase verification def Validation case definition specializing MemoVerificationCase. MemoVerificationCase
ExecutesScenario connection def Typed relationship for executes scenario. MemoRelationship

VerificationCase

verification def VerificationCase :> MemoVerificationCase
Property Value
Description Verification and validation cases are SysML v2 verification cases (behaviours that check requirements), not verifiable structures — they derive from the MemoVerificationCase foundation, not MemoPart. status is NOT redeclared here.…
Kind verification def
Abstract No
Specializes MemoVerificationCase
Owning package memo_assurance_verification_validation

ValidationCase

verification def ValidationCase :> MemoVerificationCase
Property Value
Description Validation case definition specializing MemoVerificationCase.
Kind verification def
Abstract No
Specializes MemoVerificationCase
Owning package memo_assurance_verification_validation

ExecutesScenario

connection def ExecutesScenario :> MemoRelationship
Property Value
Description Typed relationship for executes scenario.
Kind connection def
Abstract No
Specializes MemoRelationship
Owning package memo_assurance_verification_validation

Source

assurance/verification_validation/memo_assurance.sysml
package memo_assurance_verification_validation {
    private import Metaobjects::SemanticMetadata;
    private import ScalarValues::*;

    private import memo_core_common::*;
    private import memo_core_enumerations::*;
    private import memo_core_relationships::*;
    private import memo_architecture_operational_scenarios::*;
    private import memo_architecture_operational_use_cases::*;
    private import memo_architecture_functional_functions::*;
    // Verification and validation cases are SysML v2 verification cases
    // (behaviours that check requirements), not verifiable structures — they
    // derive from the MemoVerificationCase foundation, not MemoPart.
    // `status` is NOT redeclared here. It used to be re-declared as a String,
    // which shadowed the `status : ElementStatusKind` every MEMO base carries
    // and let a verification case hold an editorial status no other element
    // could hold — against the "one status vocabulary in MEMO" rule stated in
    // memo_requirements.sysml. The values it actually held ("planned") were an
    // EXECUTION state, not an editorial one; execution state belongs in an
    // attribute of its own (see RiskControlMeasure.verificationStatus), not in
    // a second spelling of `status`.
    verification def VerificationCase :> MemoVerificationCase {
        attribute methodKind : VerificationMethodKind;
        attribute acceptanceCriteria : String;
    }
    verification def ValidationCase :> MemoVerificationCase {
        attribute validationMethod : ValidationMethodKind;
        attribute userParticipation : String;
        attribute acceptanceCriteria : String;
        attribute clinicalContext : String;
    }
    // Operational validation confirms the user's goal is achieved in the
    // use environment (§5): ValidationCase validates a UseCase.
    // Safety-critical functions must trace to verification (rules/coverage).
    connection def ExecutesScenario :> MemoRelationship {
        end verificationCase : VerificationCase :>> source;
        end scenario : OperativeScenario :>> target;
    }
    abstract connection executesScenarioLinks : ExecutesScenario[*];
    metadata def <executesScenario> ExecutesScenarioMetadata :> SemanticMetadata {
        :> annotatedElement : SysML::ConnectionDefinition;
        :> annotatedElement : SysML::ConnectionUsage;
        :>> baseType = executesScenarioLinks meta SysML::Usage;
    }
}