Skip to main content
I would like you to help me make the appropriate associations between my use case and my degree project. I have difficulty making the appropriate associations with extend and includes

 

Hi @De Isaura!

I’m pulling from the IBM documentation of the UML standards. 

 

Include Relationships are where a base use case “includes the functionality of another use case (the inclusion use case).”

Example situations:

  • The base case includes/uses the inclusion use case (like a subprocess?)
  • The behavior of the inclusion use case is common to two or more use cases
  • The result of the behavior that the inclusion use case specifies (not the behavior itself) is important to the base use case

 

Extend Relationships can access and modify the attributes of the base use case; however, the base use case is not aware of the extension use case and, therefore, cannot access or modify the attributes and operations of the extension use case.”

Example situations:

  • A part of the use case that is optional system behavior
  • A subflow that is executed only under certain conditions
  • A set of behavior segments that may be inserted in a base case


I think the key for how I think about the difference, is that the “include” relationship is aware of the subprocess functionality and depends on it to complete its work.The “extend” relationship is doing something separate from or in addition to the base use case.

 

Does that help? Is there something else that would be helpful in trying to explain the nuance here?


Reply