Chươn
g
3
g
Biể đồ
Biể
u
đồ
use case,
v
ấ
n
đề
n
g
hi
ệp
v
ụ
ấ đề g ệp ụ
UML/NN 1
Nội dung
3.1 Biểu đồ use-case (tình huống sử dụng)
3.2 Vấn đề n
g
hiệp vụ (business)
UML/NN 2
3.1 Biểu đồ use case (hệ thống)
Gửi tiền
Rút tiền
Tru
y
vấn thôn
g
tin
Khach hang
y g
tài khoản
Actor
Actor
Use case
UML/NN 3
Association (liên kết)
Biểu đồ use case
Được dùng cho phân tích, thiết kế (nghiệp
(b i ) hệ thố ũ hệ thố ới)
vụ
(b
us
i
ness
)
,
hệ
thố
n
g
c
ũ
,
hệ
thố
n
g
m
ới)
Mỗi use case sẽ thể hiện một tình huống sử
dụn
g
hệ thốn
g
khác nhau của n
g
ười dùn
g
.
Tập
h
ợp
các use case và các tác nhân
(
actor
)
ập ợp()
cùng với quan hệ kết hợp (association) giữa
chún
g
sẽ cho ta 1 biểu đồ use case dùn
g
để
g g
mô tả yêu cầu hệ thống (mô hình nghiệp vụ
trình bà
y
sau
)
UML/NN 4
y)
Mục đích
Cung cấp cái nhìn tổng thể trực quan về
hữ ìhệ thố ẽ là à i ẽ dù ó
n
hữ
n
g
gì
hệ
thố
n
g
s
ẽ
là
m v
à
a
i
s
ẽ
dù
n
g
n
ó
Cơ sở để xác định giao tiếp người và máy
Dùng làm cơ sở cho những thiết kế kiểm thử
h
ệ
thốn
g
ệ g
Biểu đồ use-case là mô hình hệ thống theo
hướng nhìn chứcnăng người dùng cuối
hướng
nhìn
chức
năng
người
dùng
cuối
UML/NN 5
Xây dựng biểu đồ use case
1. Xác đ
ị
nh tác nhân
(
Actor
)
ị ()
2. Xác định Use case
3
Xây dựng biểu đồ Use case
3
.
Xây
dựng
biểu
đồ
Use
case
4. Chia các biểu đồ use case thành các
package
package
UML/NN 6
1. Tác nhân - actor
Một tác nhân là một đối tượng bên ngoài hệ thống
g
iao tiế
p
với h
ệ
thốn
g
theo 1 tron
g
các hình thức
g p ệ gg
sau:
Tương tác, trao đổi thông tin
Cung cấp thông tin đầuvàohoặcnhận thông tin đầura
Cung
cấp
thông
tin
đầu
vào
hoặc
nhận
thông
tin
đầu
ra
Tác nhân không phải là điều khiển hoạt động của
hệ thống
Ký hiệu:
Tên: danh từ
Tác nhân và Vai trò (role)
Kha ch hang
UML/NN 7
Tác
nhân
và
Vai
trò
(role)
Ba loại tác nhân
Người dùng của hệ thống
Nhữn
g
hệ thốn
g
khác tươn
g
tác với hệ thốn
g
đang xét
Thời gian (Time)
UML/NN 8
Tác nhân chính và tác nhân hỗ trợ
Tác nhân chính (primary actor): Ai đang sử
d hệ thố ?Ai ấ thô i h hệ
d
ụn
g
hệ
thố
n
g?
Ai
cun
g
c
ấ
p
thô
n
g
i
n c
h
o
hệ
thống? Hệ thống cung cấp thông tin cho ai?
ỗ
T
ác nhân h
ỗ
trợ (secondary actor): nhữn
g
nhóm đối tượng nào hệ thống cần để thực
hiện hoạt độn
g
của nó (vd: quản trị,
backup,…)
UML/NN 9
Tác nhân – những câu hỏi
Ai sẽ sử dụng những chức năng chính của hệ thống (tác
nhân chính
)
?
)
Ai sẽ cần sự hỗ trợ của hệ thống để thực hiện những tác vụ
hàng ngày của họ?
Ai sẽ cầnbảotrì quảntrị và đảmbảochohệ thống hoạt
Ai
sẽ
cần
bảo
trì
,
quản
trị
và
đảm
bảo
cho
hệ
thống
hoạt
động (tác nhân phụ)?
Hệ thống cần phải tương tác với các hệ thống khác nào?
Hệ thống kích hoạt mối quan hệ với hệ thống chúng ta
Hệ thống mà hệ thống chúng ta sẽ thiết lập quan hệ
Hệ thống máy tính khác
Các ứng dụng khác trong chính chiếc máy tính mà hệ thống này sẽ
hoạt động
Ai ha
y
cái
g
ì
q
uan tâm đến kết
q
uả
(g
iá tr
ị)
mà h
ệ
thốn
g
sẽ
UML/NN 10
ygq q (g ị) ệ g
sản sinh ra?
Quan hệ giữa các tác nhân
Tổng quát hoá (generalization) và chuyên biệt hoá
(
specialization)
(
specialization)
Khach hang
Nhan vien
Khach quen
Thu kho
Nhan vien ban
UML/NN 11
hang
Tác nhân trừu tượng (Abstract actor)
Là actor mà không có
1
thể hiện (instance) nào
Là
actor
mà
không
có
1
thể
hiện
(instance)
nào
Nhan vien
UML/NN 12
NV Chinh thuc
NV t hoi vu
NV thu viec
2. Use case
Use case mô tả một chuỗi các hoạt động mà hệ thống sẽ
thựchiện để đạt đượcmộtkếtquả có ý nghĩa đốivớimột
thực
hiện
để
đạt
được
một
kết
quả
có
ý
nghĩa
đối
với
một
tác nhân. Use case được xem như 1 chức năng của hệ
thống theo quan điểm của người dùng
ỗ ứ ă ể ễ ở ó ể
M
ỗ
i ch
ứ
c n
ă
ng sẽ được bi
ể
u di
ễ
n b
ở
i 1 use case (c
ó
th
ể
phân rã)
Biểudiễn:
Biểu
diễn:
Dth
Tên: động từ + danh từ
D
a
t
h
ang
UML/NN 13
…Use case
Không phụ thuộc vào việc thực thi hệ thống
Tập trung vào What
Không quan tâm How
Mức trừu tượn
g
cao
Dễ xem
Biể diễ ố hợ lý
Biể
u
diễ
n s
ố
use case
hợ
p
lý
Mỗi use case:
Nê biể diễ ộti dị h(t ti )h à hỉ h
Nê
n
biể
u
diễ
n m
ột
g
i
ao
dị
c
h
(t
ransac
ti
on
)
h
o
à
n c
hỉ
n
h
giữa user và hệ thống
Nên đặt tên theo thuậtngữ của user không nên dùng
UML/NN 14
Nên
đặt
tên
theo
thuật
ngữ
của
user
không
nên
dùng
từ ngữ kỹ thuật
Xác định use case
Xác định actor hay use case trước hay sau
khô t Hibướ àóthể tiế
khô
n
g
quan
t
rọn
g
.
H
a
i
bướ
c n
à
y c
ó
thể
tiế
n
hành cùng lúc
ể
Hệ thốn
g
sẽ phải làm
g
ì đ
ể
cun
g
cấp
g
iá trị
cho bên ngoài hệ thống?
Xác định use case thông qua tác nhân
Tìm các nhiệmvụ và chứcnăng mà tác nhân sẽ
Tìm
các
nhiệm
vụ
và
chức
năng
mà
tác
nhân
sẽ
thi hành hoặc hệ thống cần tác nhân để thi hành
và mô hình hoá nó như là use case
UML/NN 15
Use case (ATM)
Gửi tiền
Khởi động hệ
Khách hàng
Rút tiền
Nhân viên
Khởi
động
hệ
thống
Khách
hàng
Truy vấn thông tin
tài khoản
vận hành
Đóng hệ thống
UML/NN 16
Quan hệ giữa các use case
<<extend>>
<<extend>>
<<include>>
Generalization
Dan
g
nha
p
Giai
q
u
y
et tai khoan khon
g
gp
qy g
hop le
<<include>>
Muon sach
<<extend>>
<<extend>>
UML/NN 17
Muon sach tu Thu vien thanh
vien
Tu choi cho muon
Use case trừu tượng (Abstract Use Case)
Là một use case mà không được bắt đầu trực
tiếpbởi1actor
tiếp
bởi
1
actor
.
Là use case chỉ tham gia vào lược đồ chỉ với các
quan hệ include hay extend
quan
hệ
include
hay
extend
Use case trừu tượng được dùng để cung cấp 1 số
chứcnăng phụ để dùng cho các use case khác.
chức
năng
phụ
để
dùng
cho
các
use
case
khác.
ild
Thanh toan
Kiem tra tai khoan
<<
i
nc
l
u
d
e>>
UML/NN 18
Thanh
toan
Ki em
tra
tai
khoan
3. Xây dựng biểu đồ use case
Tạo biểu đồ use case ban đầu
T
inh chế và nân
g
cấp sơ đồ use case
Bổ sung các use case mô tả chức năng đặc trưng
phần mềm
Tách những dòng xử lý đặc biệt Æ use case
<<extend>>
Tổng quát hoá các use case có dòng xử lý chung
Æ
ổ á
Æ
use case t
ổ
n
g
qu
á
t
Phát triển các liên kết <<include>>
UML/NN 19
Bổ sung các use case
Các use case quản trị hệ thống:
Quản trị n
g
ười dùn
g
Quản trị thông số hệ thống
Các use case quản trị dữ liệu
Q
uản tr
ị
danh m
ụ
c dữ li
ệ
u
Q ị ụ ệ
Quản trị an toàn (backup/restore)
…
UML/NN 20
Bổ sung (thư viện)
Xử lý mượn sách
Đăng nhập
Xử lý trả sách
Thủ thư
Quản trị hệ thống
Đăng xuất
Tra cứusách
Đăng ký thành viên
Mua sách
Quản trị
người
dùng
Tra
cứu
sách
Độc giả
dùng
Quản trị nhà
cung cấp
UML/NN 21
Tách những dòng xử lý đặc biệt
Muon sach
<<extend>>
MhThihh
<<extend>>
<<extend>>
M
uon sac
h
tu
Th
u v
i
en t
h
an
h
vien
Tu choi cho muon
UML/NN 22
Tổng quát hoá các use case
Giao dich
Gui tien
Rut tien
Truy van tai kho an
UML/NN 23
Phát triển các liên kết <<include>>
Dang nhap
Kha ch hang
Giao dich
<<include>>
UML/NN 24
Biểu đồ use case (ATM)
<<include>>
In bien nhan
<<extend>>
Dang nhap
Khach hang
Giao dich
<<extend>>
Giti
Giai quyet PIN khong hop le
G
u
i
ti
en
Rut tien
Truy van tai khoan
UML/NN 25