uml - What's is the difference between include and extend in use case diagram? - Stack Overflow
The extend relationship is owned by the extending use case. The extension takes place at one or more extension points defined in the Use Case Include. Extend is used when a use case conditionally adds steps to another first class use case. For example, imagine "Withdraw Cash" is a use case of an ATM. The key to Include and extend use case relationships is to realise that, common with the rest of UML, the dotted arrow between use cases is a dependency.
Reuse in Use-Case Models: >, >, and Inheritance
A large use case could have some behaviors which might be detached into distinct smaller use cases to be included back into the base use case using the UML include relationship. The purpose of this action is modularization of behaviors, making them more manageable. Use case B is extracted from larger use case A into a separate use case.
Use cases B and C are extracted from larger use case A into separate use cases. When two or more use cases have some common behaviorthis common part could be extracted into a separate use case to be included back by the use cases with the UML include relationship.
Execution of the included use case is analogous to a subroutine call or macro command in programming. All of the behavior of the included use case is executed at a single location in the including use case before execution of the including use case is resumed.
Note, while UML 2. Including use case depends on the addition of the included use case, which is required and not optional.
It means that including use case is not complete by itself, and so it would make sense to refer to the including use cases as abstract use cases. On the other side, modelling a whole system with a class diagram may be completely nonsense.Include relationship in use case diagram(In hindi ) by Hightech
Modelling the whole system will lead to a lot of work that nobody will ever look at and which will soon again be out of date. So I'm currently creating an UML Use case diagram to describe the basic features of my application I'm planning to develop and it always happens again to me that I come to the point where I have to search the web about the details regarding the "extend" and "include" relationships. Just out of the head it seems to be clear: But still there are these doubts This behavior is modeled with a base use case called CheckOrderStatus that has an inclusion use case called LogIn.
The LogIn use case is a separate inclusion use case because it contains behaviors that several other use cases in the system use.
UML Use Case Include
An include relationship points from the CheckOrderStatus use case to the LogIn use case to indicate that the CheckOrderStatus use case always includes the behaviors in the LogIn use case. The "extend" relationship is explained as follows: You are developing an e-commerce system in which you have a base use case called Place Online Order that has an extending use case called Specify Shipping Instructions.
An extend relationship points from the Specify Shipping Instructions use case to the Place Online Order use case to indicate that the behaviors in the Specify Shipping Instructions use case are optional and only occur in certain circumstances. So the key point in the extends relationship is "optional"!