Modeling Diagram
Designing with Use Cases
Modeling
What is UML?
Components of UML
Introduction
A
What is an Actor?
Include all user roles that interact with the system
Include system components only if they
responsible for
initiating/triggering a use case.
For example, a timer that triggers sending
of an e-mail reminder
primary - a user whose goals are fulfilled by
the system
importance: define user goals
supporting - provides a service (e.g., info) to
the system
e.g. payment authorization service
As a <type of user>,
I want <some behavior from the
system> so that <some value
is achieved>
Example Use-Case
Diagram
Nam
e
1
3
1
4
(one UC must
<<extend>>
(one UC calls
1. Generalization
The child use case
inherits the behavior
and meaning of the
parent use case.
The child may add to or
override the behavior of
its parent.
parent
child
18
More about
Generalization
registration
non-graduate
registration
graduate
registration
19
Generalization
Example
The actor Order
Registry Clerk can
instantiate the
general use case
Place Order.
Place Order can
also be
specialized by the
use cases Phone
Order or Internet
Order.
Generalization Example
Task 1
Establish
Generalize Relationship
Task 1 Solution
2. Include
base
<<include>>
included
<<include>>
verifying
student
id
output
generating
<<include>>
23
Include relationship
Include relationship a standard case linked to a
mandatory use case.
Example: to Authorize Car Loan (standard use case),
a clerk must run Check Clients Credit History (include
use case).
The standard UC includes the mandatory UC
Standard use case can NOT execute without the include
case tight coupling .
3. Extend
base
<<extend>>
extending
27
<<extend>>
Exam-grade
appeal
28
Extend relationship
Extend relationship linking an optional use
case to a standard use case.
Example: Register Course (standard use case)
may have Register for Special Class (extend use
case) class for non-standard students, in
unusual time, with special topics, requiring extra
fees).
Task 2
Establish
<<Include>>
Relationships
and
<<Extend>>
Task 2 Solution
Extend Example
Example
cellular
network
user
place
phone call
<<extend>>
receive
phone call
<<extend>>
place
conference
call
receive
additional
call
use
scheduler
Cellular Telephone
34
Example
Draw a use case diagram for a ticket distributor
for a train system. The system includes two
actors: a traveler, who purchases different types
of tickets, and a central computer system, which
maintains a reference database for the tariff. Use
cases should include: BuyOneWayTicket,
BuyWeeklyCard, BuyMonthlyCard, UpdateTariff.
Also include the following exceptional cases:
Time-Out (i.e., traveler took too long to insert
the right amount), TransactionAborted (i.e.,
traveler selected the cancel button without
completing the transaction),
DistributorOutOfChange, and
DistributorOutOfPaper.
and unambiguous
41
42
43