SysML 2.0b2 FTF Avatar
  1. OMG Issue

SYSML2 — checkRequirementUsageObjectiveRedefinition is incorrect

  • Key: SYSML2-553
  • Status: closed  
  • Source: Model Driven Solutions ( Mr. Ed Seidewitz)
  • Summary:

    In 8.3.20.9 RequirementUsage, the checkRequirementUsageObjectiveRedefinition constraint requires that "A RequirementUsage whose owningFeatureMembership is a ObjectiveMembership must redefine the objectiveRequirement of each CaseDefinition or CaseUsage that is specialized by the owningType of the RequirementUsage." However, the objectiveRequirement property of a CaseDefinition (see 8.3.21.2) or a CaseUsage (see 8.3.21.3) is derived to be only the owned objective of the case. This means that, if a case declares an owned objective, but specializes a case with an inherited objective, then checkRequirementUsageObjectiveRedefinition will actually not be satisfiable.

  • Reported: SysML 2.0b1 — Wed, 22 Nov 2023 04:58 GMT
  • Disposition: Resolved — SysML 2.0b2
  • Disposition Summary:

    Correct objectiveRequirement redefinitions

    Actually, while the properties CaseDefinition::objectiveRequirement and CaseUsage::objectiveRequirement are specified to subset ownedRequirement / nestedRequirement, the derivation constraints for them actually select the ObjectiveMembership from the featureMemberships of the CaseDefinition or CaseUsage, not ownedFeatureMemberships, which includes inheritedMemberships. With these derivations, the checkRequirementUsageObjectRedefinition constraint works with no problem. It is just the subsettings of the objectiveRequirement properties that need to be corrected.

    The actorParameter, stakeholderParameter and subjectParameter properties for requirements and cases also have a similar issue.

  • Updated: Tue, 1 Jul 2025 14:51 GMT