Page 104 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 104
Object Oriented Analysis and Design
Notes relationship from use case A to use case B indicates that an instance of the use case will also
include the behavior as specified by B. An include relationship is depicted with a directed arrow
having a dotted shaft. The tip of arrowhead points to the child use case and the parent use case
connected at base of the arrow. The stereotype “<include>” identifies the relationship as an
include relationship.
Example: The following figure illustrates an e-commerce application that provides
customers with the option of checking the status of their orders. 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. 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.
Figure 8.3: An Example of an include Relationship
Source:http://publib.boulder.ibm.com/infocenter/rsdvhelp/v6r0m1/index.jsp?topic=%2Fcom.ibm.
xtools.modeler.doc%2Ftopics%2Fcinclude.html
The system boundary is potentially the entire system as defined in the requirements document.
For large and complex systems, each module may be the system boundary.
Example: For an ERP system for an organization, each of the modules such as personal,
payroll, accounting, etc. can form a system boundary for use cases specific to each of these
business functions. The entire system can span all of these modules depicting the overall system
boundary.
Notes In other words, in an include relationship; a use case includes the functionality
described in the other use case as a part of its business process flow.
8.1.4 Generalization
A generalization relationship is also a parent-child relationship between use cases. The child use
case in the generalization relationship has the underlying business process meaning, but is an
enhancement of the parent use case. In a use case diagram, generalization is shown as a directed
arrow with a triangle arrowhead. The child use case is connected at the base of the arrow. The tip
of the arrow is connected to the parent use case.
On the face of it, both generalization and extends appear to be more or less similar. But there is
a subtle difference between a generalization and an extend relationship. When a generalization
relationship is established between use cases, this implies that the parent use case can be replaced
by the child use case without breaking the business flow. On the other hand, an extend relationship
between use cases implies that the child use case enhances the functionality of the parent use case
into a specialized functionality.
98 LOVELY PROFESSIONAL UNIVERSITY