8/30/2017
1
Chương 3.
hình Use Case
GV: Lê Thị Minh Nguyện
Email: nguyenltm@huflit.edu.vn
Phân tích thiết kế hướng đối tượng 1
Nội dung
1. Giới thiệu Use case
2. Các khái niệm hình hóa UC
3. Luồng sự kiện trong UC
Phân tích thiết kế hướng đối tượng 2
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 3
MUA
SODA
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 4
Đưa tiền
Lựa sản phẩm
Lấy sản phẩm
8/30/2017
2
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 5
Đưa tiền
Lựa sản phẩm
Không có SP
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 6
Giả sử tôi quyết định mua một chiếc máy fax mới
Loại máy o sẽ được chọn đây?
Tôi tự hỏi thật chính xác mình muốn làm với chiếc y fax sẽ mua?
Tôi muốn những tính năng nào?
Tôi muốn dùng bằng giấy thường hay giấy thermal?
Tôi muốn copy bằng cái y đó?
Tôi muốn nối với máy tính của mình?
Tôi muốn dùng vừa làm máy fax vừa làm scanner?
Tôi cần phải gởi fax thật nhanh đến mức độ cần một chức năng chọn số tăng tốc?
Liệu tôi muốn sử dụng máy fax y để phân biệt giữa một điện thoại gọi tới một
bản fax gởi tới ?.
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 7
Giả sử tôi quyết định mua một chiếc máy fax mới
Loại máy o sẽ được chọn đây?
Tôi tự hỏi thật chính xác mình muốn làm với chiếc y fax sẽ mua?
Tôi muốn những tính năng nào?
Tôi muốn dùng bằng giấy thường hay giấy thermal?
Tôi muốn copy bằng cái y đó?
Tôi muốn nối với máy tính của mình?
Tôi muốn dùng vừa làm máy fax vừa làm scanner?
Tôi cần phải gởi fax thật nhanh đến mức độ cần một chức năng chọn số ng tốc?
Liệu tôi muốn sử dụng máy fax này để phân biệt giữa một điện thoại gọi tới một
bản fax gởi tới ?.
2. Các khái niệm hình hóa UC
2.1. Tác nhân (Actor)
2.2. Use case-UC
2.3. dụ xác định Actor Use case
2.4. Quan hệ (Relationship)
2.5. Biểu đồ Use Case (Use case Diagram)
Phân tích thiết kế hướng đối tượng 8
8/30/2017
3
2.1. Actor
Tác nhân (actor) biểu diễn bất cứ thứ ơng tác
với hệ thống.
đối tượng bên ngoài tương tác với hệ thống theo 3
hình thức:
Tương tác trao đổi thông tin với hệ thống hoặc sử dụng
chức năng.
Cung cấp đầu vào hoặc nhận thông tin đầu ra từ hệ thống.
Không điều khiển hoạt động của hệ thống.
thể người, y móc hoặc hệ thống khác
chúng ta không phải xây dựng
dụ như các thiết bị ngoại vi, thậm c database
9
Actor
KhachHang
2.1. Actor
Đặt các câu hỏi sau để tìm ra tác nhân:
Nhóm người nào yêu cầu hệ thống làm việc giúp họ?
Nhóm người nào kích hoạt chức năng của hệ thống?
Nhóm người nào sẽ duy trì quản trị hệ thống hoạt động?
Hệ thống tương tác với các thiết bị ngoại vi hay phần mềm
nào khác không?
Hệ thống đang xây dựng tương tác với hệ thống khác nào?
Thông tin về tác nhân:
Tên tác nhân phải tả vai trò của tác nhân đó một cách ràng
Tên nên danh từ
Cần tả khái quát khả ng của tác nhân đó
10
Tìm kiếm tác nhân của hệ thống
2.2. Use Case (UC)
Use case (Chức năng): tả chức năng hệ thống
Mỗi Use-Case biểu diễn cho một chức năng của hệ thống
Use-Case một chuỗi bao gồm nhiều hành động
Mỗi Use-Case thể mở rộng (extext) thành nhiều Use-Case
khác
Mỗi Use-Case thể bao hàm (include) nhiều Use-Case khác
Use-Case được đặt bên trong phạm vi hệ thống
hiệu: hình elip + tên Use-Case (động từ)
Phân tích thiết kế hướng đối tượng 11
Mượn sách
Use Case
2.2. Use Case (UC)
Xem các yêu cầu chức năng để tìm ra các UC
Đối với mỗi tác nhân tìm được, đặt các câu hỏi sau để ra c Use
case hệ thống.
Các tác nhân yêu cầu hệ thống thực hiện chức năng nào
Các công việc chính(đọc, ghi, tạo lập, bãi bỏ, sửa đổi) tác nhân đó muốn
HT thực thi?
Tác nhân đó tạo ra hay thay đổi dữ liệu của HT?
Tác nhân đó phải thông báo cho HT?
Tác nhân đó cần thông tin thông báo từ HT?
Thông tin về use case:
Tên của UC nên chỉ kết quả của quá trình tương tác với tác nhân
Tên nên động từ
tả ngắn gọn về mục đích của UC
Phân tích thiết kế hướng đối tượng 12
Tìm kiếm Use Case của hệ thống
8/30/2017
4
Những điều nên tránh khi tạo Use Case
Tạo ra các UC quá nhỏ
Hành động quá đơn giản chỉ cần tả bởi vài dòng
Tạo ra quá nhiều Use case (hàng chục)
Nhóm các Use case liên quan thành một Use case tổng quát
(mức 1)
tả các Use Case tổng quát một đồ khác (mức 2)
dụ: “Quản sáchbao gồm “Nhập sách, “Xuất sách, “
Sử dụng các Use-case quá cụ thể, hoặc làm việc với dữ liệu quá cụ
thể. dụ:
Tìm sách theo tên” (nên Tìm sách”)
“Nhập Pin vào máy ATM” (nên “Nhập PIN”)
Thêm sách” (nên “Quản sách” bao gồm Thêm sách”)
Phân tích thiết kế hướng đối tượng 13
Ranh giới giữa hệ hệ thống thế giới thực
Phân tích thiết kế hướng đối tượng 14
Subject/System boundary:
Chỉ ra ranh giới (boundary) giữa system thế giới thực.
Actor thường nằm bên ngoài system, use cases thường
nằm trong system
dụ: Xác định tác nhân Use Case
Xét hệ thống website các chức năng sau:
Khách hàng đăng tài khoản mua sản phẩm
Chủ cửa hàng duyệt các đơn ng đăng sản phẩm
Hệ thống website chức năng xuất báo cáo ra tập tin excel sử dụng phần
mềm MS Excel
Hệ thống hỗ trợ khách hàng trực tuyến bằng cách trao đổi trực tiếp bằng âm
thanh của micro
Hệ thống khả năng giao tiếp với thiết bị đọc vạch để phục vụ cho việc
nhập thông tin sản phẩm
Hệ thống hỗ trợ thanh toán trực tuyến thông qua việc kết nối với Hệ thống
thanh toán Paypal
Phân tích thiết kế hướng đối tượng 15
dụ: Xác định tác nhân Use Case
Phân tích thiết kế hướng đối tượng 16
8/30/2017
5
dụ: Xác định tác nhân Use Case
Phân tích thiết kế hướng đối tượng 17
Phân loại Actor
Xác định Use Case
Phân tích thiết kế hướng đối tượng 18
Xét hệ thống website các chức năng sau:
Khách hàng đăng tài khoản mua sản phẩm
Chủ cửa hàng duyệt các đơn ng đăng sản phẩm
Hệ thống website chức năng xuất báo cáo ra tập tin excel sử dụng phần
mềm MS Excel
Hệ thống hỗ trợ khách hàng trực tuyến bằng cách trao đổi trực tiếp bằng âm
thanh của micro
Hệ thống khả năng giao tiếp với thiết bị đọc vạch để phục vụ cho việc
nhập thông tin sản phẩm
Hệ thống hỗ trợ thanh toán trực tuyến thông qua việc kết nối với Hệ thống
thanh toán Paypal
Xác định Use Case
Phân tích thiết kế hướng đối tượng 19
2.3. Quan hệ (Relationship)
Association
Include
Extend
Generalization/Specializtion
Phân tích thiết kế hướng đối tượng 20