All Superinterfaces:
ActionUsage, BaseElement, CalculationUsage, Cloneable, Comparable, Element, org.eclipse.emf.ecore.EObject, Expression, Feature, ModelElement, com.dassault_systemes.modeler.modelextension.model.modelextension.ModelExtensionObject, Namespace, org.eclipse.emf.common.notify.Notifier, OccurrenceUsage, Step, Type, Usage
All Known Subinterfaces:
AnalysisCaseUsage, IncludeUseCaseUsage, UseCaseUsage, VerificationCaseUsage

@OpenApiAll public interface CaseUsage extends CalculationUsage

A CaseUsage is a Usage of a CaseDefinition.

objectiveRequirement = let objectives: OrderedSet(RequirementUsage) = featureMembership-> selectByKind(ObjectiveMembership). ownedRequirement in if objectives->isEmpty() then null else objectives->first().ownedObjectiveRequirement endif featureMembership-> selectByKind(ObjectiveMembership)-> size() <= 1 featureMembership-> selectByKind(SubjectMembership)-> size() <= 1 actorParameter = featureMembership-> selectByKind(ActorMembership). ownedActorParameter subjectParameter = let subjects : OrderedSet(SubjectMembership) = featureMembership->selectByKind(SubjectMembership) in if subjects->isEmpty() then null else subjects->first().ownedSubjectParameter endif input->notEmpty() and input->first() = subjectParameter specializesFromLibrary('Cases::cases') isComposite and owningType <> null and (owningType.oclIsKindOf(CaseDefinition) or owningType.oclIsKindOf(CaseUsage)) implies specializesFromLibrary('Cases::Case::subcases')
  • Method Details

    • getObjectiveRequirement

      @CheckForNull RequirementUsage getObjectiveRequirement()

      The RequirementUsage representing the objective of this CaseUsage.

      Returns:
      the objectiveRequirement value
      Model:
      derived="true" transient="true" oppositeRoleName="objectiveOwningCase" subsets=Usage.getUsage()
    • getCaseDefinition

      @CheckForNull CaseDefinition getCaseDefinition()

      The CaseDefinition that is the type of this CaseUsage.

      Returns:
      the caseDefinition value
      Model:
      derived="true" transient="true" oppositeRoleName="definedCase" redefines=CalculationUsage.getCalculationDefinition()
    • getSubjectParameter

      @CheckForNull Usage getSubjectParameter()

      The parameter of this CaseUsage that represents its subject.

      Returns:
      the subjectParameter value
      Model:
      derived="true" transient="true" oppositeRoleName="subjectOwningCase" subsets=Usage.getUsage()
    • getActorParameter

      List<PartUsage> getActorParameter()

      The parameters of this CaseUsage that represent actors involved in the case.

      Returns:
      the actorParameter value
      Model:
      derived="true" transient="true" oppositeRoleName="actorOwningCase" subsets=Usage.getUsage()