Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams & Sequence Diagrams
SE3A04 – Tutorial
Andrew LeClair
Department of Computing and Software
Faculty of Engineering
McMaster University
Hamilton, Ontario, Canada
Modified from slides by Jason Jaskolka
[email protected] February 10/11, 2016
Andrew LeClair Use Case Diagrams & Sequence Diagrams 1 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Outline
1 Use Case Diagrams
2 Sequence Diagrams
3 Questions
Andrew LeClair Use Case Diagrams & Sequence Diagrams 2 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Definition (Use Case Diagram)
Use case diagrams model the functionality of system using actors
and use cases.
Andrew LeClair Use Case Diagrams & Sequence Diagrams 3 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
System
Draw your system’s boundaries using a rectangle that contains
use cases
Place actors outside the system’s boundaries
Andrew LeClair Use Case Diagrams & Sequence Diagrams 4 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Use Cases
Draw use cases using ovals
Label with ovals with verbs that represent the system’s
functions
Andrew LeClair Use Case Diagrams & Sequence Diagrams 5 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Actors
Actors are the users of a system
When one system is the actor of another system, label the
actor system with the «actor» stereotype
Andrew LeClair Use Case Diagrams & Sequence Diagrams 6 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Relationships
Illustrate relationships between an actor and a use case with a
simple line
For relationships among use cases, use arrows labeled either
«uses» (or «includes») or «extends»
A «uses» relationship indicates that one use case is needed
by another in order to perform a task
An «extends» relationship indicates alternative options under
a certain use case
Andrew LeClair Use Case Diagrams & Sequence Diagrams 7 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Relationships
Andrew LeClair Use Case Diagrams & Sequence Diagrams 8 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Example
Example
Draw a use case diagram to represent the following system.
Over the summer holiday, university students can book college
hall accommodation online. They must specify their name,
student number, course, year, and identify three college
residences as their preferences.
The system makes an allocation of students to rooms before
the start of the term, trying, where possible, to allocate
students to a room in one of their preferred halls.
Andrew LeClair Use Case Diagrams & Sequence Diagrams 9 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Use Case Diagrams
Example
Andrew LeClair Use Case Diagrams & Sequence Diagrams 10 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Definition (Sequence Diagram)
Sequence diagrams describe interactions among classes in terms
of an exchange of messages over time.
Andrew LeClair Use Case Diagrams & Sequence Diagrams 11 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Class Roles
Class roles describe the way an object will behave in context
Use the UML object symbol to illustrate class roles, but don’t
list object attributes
Andrew LeClair Use Case Diagrams & Sequence Diagrams 12 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Activation
Activation boxes represent the time an object needs to
complete a task
Andrew LeClair Use Case Diagrams & Sequence Diagrams 13 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Messages
Messages are arrows that represent communication between
objects
Use half-arrowed lines to represent asynchronous messages
Asynchronous messages are sent from an object that will
not wait for a response from the receiver before continuing its
tasks
Andrew LeClair Use Case Diagrams & Sequence Diagrams 14 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Lifelines
Lifelines are vertical dashed lines that indicate the object’s
presence over time
Andrew LeClair Use Case Diagrams & Sequence Diagrams 15 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Destroying Objects
Objects can be terminated early using an arrow labeled
«destroy» that points to an ×
Andrew LeClair Use Case Diagrams & Sequence Diagrams 16 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Loops
A repetition or loop within a sequence diagram is depicted as
a rectangle
Place the condition for exiting the loop at the bottom left
corner in square brackets [ ]
Andrew LeClair Use Case Diagrams & Sequence Diagrams 17 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Example
Example
Draw a sequence diagram representing the process of making a
phone call from a cell phone.
Hint*: The objects involved include the caller, the phone network,
the receiver of the phone call, and the cell phone accounting
department.
Andrew LeClair Use Case Diagrams & Sequence Diagrams 18 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Sequence Diagrams
Example
Andrew LeClair Use Case Diagrams & Sequence Diagrams 19 / 20
Outline
Use Case Diagrams
Sequence Diagrams
Questions
Questions
Questions?
Andrew LeClair Use Case Diagrams & Sequence Diagrams 20 / 20