Escolar Documentos
Profissional Documentos
Cultura Documentos
DIAGRAMS AND
PACKAGES
Dr. Hoang Huu Hanh, OST – Hue University
hanh-at-hueuni.edu.vn
Hue University
ue University
Agenda
What is a Class Diagram?
Essential Elements of a UML Class
Diagram
Packages and Class Diagrams
Analysis Classes Approach
Tips
Object and Class Constructing
ue University
ue University
Role name
Association name
S ta ffM e m instructor
S tu d e n t
ber 1..* instructs *
Role
Navigable
Multiplicity ( uni - directional ) association
* pre -
requisites
Courses
0..3
Reflexive association
ue University
Exactly one 1
W h o le Pa rt
ue University
3..* Point
ue University Polygon
ue University
Constraint Note
ue University
TrafficReport Offender
TrafficPoliceman 1 issues * id : long 1..* 1 name : String
description : String id : long
occuredAt : Date
reports of
1..*
Policeman
id : long Violation
name : String id : long
rank : int description : String
<<abstract>>
ue University
ue University
E D B
ue University
b.a.F b.b
b.a.G
a.C
ue University
ue University
ue University
ue University
ue University
Objectives
Provide guidelines on how to
determine the classes/objects in
the system
Define class/object structuring
criteria
ue University
Categorization of Application
Classes
ue University
External Classes and Interface
Classes
External classes are classes that
are external to the system and
that interface to the system.
Interface (boundary) classes are
classes internal to the system
that interface to the external
classes.
ue University
Categorization of External
Classes
ue University
Identifying Interface
Classes
Each of the external classes interfaces
to an interface class in the system.
◦
◦ An external user class interfaces to a user
interface class
◦ An external system class interfaces to a
system interface class
◦ An external input device class interfaces
to an input device interface class
◦ An external output device class interfaces
to an output device interface class
◦ An external I/O device class interfaces to
an I/O device interface class
◦ An external timer class interfaces to an
ue University
internal timer class
◦
Banking System: External Classes
and Interface Classes
ue University
Entity Classes
Store information
Often mapped to relational
database during design
ue University
Control Classes
A control class provides the overall
coordination for execution of a use
case.
Timer class
ue University ◦ Activated periodically
Example: Coordinator
Object
ue University
Example: State Dependent
Control Object
ue University
Example: Timer Object
ue University
Application Logic Classes
Business logic class
◦ Defines business-specific
application logic (rules) for
processing a client request
◦ Usually accesses more that one
entity object
Algorithm class
◦ Encapsulates algorithm used in
ue University problem domain
◦ More usual in scientific,
Example: Business Logic
Object
ue University
Example: Algorithm Object
ue University
Tips
Don’t try to use all the various
notations.
Don’t draw models for everything,
concentrate on the key areas.
Draw implementation models
only when illustrating a
particular implementation
technique.
ue University