Mô hình Các trường hợp sử dụng
Phân tích thiết kế hệ thống
07/12/14 PTTKHT - MHCTHSD
2/36
Phần cơ bản
Nội dung
–
Mô tả Trường hợp sử dụng (THSD)
–
Vẽ mô hình các trường hợp sử dụng (MHCTHSD)
–
Giải thích sự cần thiết của việc sử dụng THSD
–
Các câu hỏi khi phát triển MHCTHSD.
07/12/14 PTTKHT - MHCTHSD
3/36
Xác định vấn đề
Định nghĩa vấn đề
–
Chỉ rõ vấn đề cần giải quyết
Xác định biên giới của vấn đề
–
Có thể bắt đầu từ “trừu tượng khoá” (key abstraction) –
một/một_số từ/cụm_từ chỉ ra cốt lõi của vấn đề cần giải quyết
những gì thuộc trong lĩnh vực của trừu tượng khoá thì nằm trong
phạm vi của vấn đề
Xác định các ràng buộc của vấn đề
Hiểu các thuật ngữ liên quan đến lĩnh vực của vấn đề.
07/12/14 PTTKHT - MHCTHSD
4/36
Giới thiệu về THSD (Use Case)
Mọi hệ thống được cài đặt đều có một số NSD, mỗi
người sử dụng hệ thống với mục đích khác nhau,
trong những tình huống khác nhau
Đối với NSD, tính năng của hệ thống được đánh giá
qua việc họ sử dụng được hệ thống trong những tình
huống nào
Tập hợp của tất cả các trường hợp sử dụng = tất cả
các tình huống mà NSD tương tác với hệ thống = tất
cả những tính năng của hệ thống (theo quan điểm
của NSD)
Nắm bắt các trường hợp NSD sử dụng hệ thống
giúp nắm bắt yêu cầu của hệ thống trên quan điểm
của NSD
07/12/14 PTTKHT - MHCTHSD
5/36
Các khái niệm
Tác nhân (Actor)
–
Một đối tượng:
Chủ động
Có tương tác với hệ thống
Tác nhân chính:
–
Tác nhân kích hoạt THSD
–
Thường là một đối tượng bên ngoài tổ chức
Tác nhân phụ (hỗ trợ)
–
Hỗ trợ tác nhân chính để thực hiện THSD
–
Thường là một đối tượng trong tổ chức (nhân viên)
Ví dụ:
–
Một NSD, Một cái máy, Một hệ thống khác có tương tác
với hệ thống đang xét.
07/12/14 PTTKHT - MHCTHSD
6/36
Các khái niệm (2)
Trường hợp sử dụng (Use Case)
–
Một tình huống Tác nhân
Sử dụng (tương tác) hệ thống
Kích hoạt một chuỗi hoạt động nào đó do
hệ thống cung cấp.
Phải tương ứng với một/một_chuỗi hoạt động
Có những tình huống (quan hệ mở rộng, sử dụng),
có thể là một hoạt động được tự động hoặc được
kéo theo trong hệ thống.
Tên THSD
Tên THSD
07/12/14 PTTKHT - MHCTHSD
7/36
Các khái niệm (3)
Xét với hệ thống quản lý tài khoản
Tác nhân
–
Khách hàng
–
Nhân viên giao dịch
–
Nhân viên quản lý
–
Tài khoản (?)
Các trường hợp sử dụng
–
Mở một tài khoản mới
–
Đưa một bảng lãi suất mới vào hệ thống
–
Một giao tác được yêu cầu thực hiện
–
Thông tin tài khoản (?)
07/12/14 PTTKHT - MHCTHSD
8/36
Các khái niệm (4)
Kết nối
–
Dùng để thiết lập quan hệ giữa
Tác nhân và THSD
Các THSD
Biên giới của hệ thống:
–
Phạm vi của hệ thống (tin học)
–
Không bao chứa các tác nhân
(chính/phụ)
–
Trong một số trường hợp, có thể
không cần vẽ ra.
<<extends>>
<<uses>>
Tên hệ thống
07/12/14 PTTKHT - MHCTHSD
9/36
Ví dụ
Rút tiền
Nạp tiền
Chuyển
khoản
Nhân viên giao dịch
Khách hàng
Hệ thống gửi tiền tiết kiệm
07/12/14 PTTKHT - MHCTHSD
10/36
Công dụng của MHCTHSD
Giúp
Tập trung lên các NSD của hệ thống
Xác định các vai trò mà NSD nắm giữ khi tương tác với hệ thống
Xác định các dịch vụ chủ yếu (THSD) được yêu cầu đối với hệ
thống, cho từng NSD, với các vai trò khác nhau
Xác định tương tác giữa NSD với các dịch vụ được yêu cầu trên
hệ thống.
07/12/14 PTTKHT - MHCTHSD
11/36
Vai trò của MHCTHSD
Các THSD trình bày yêu cầu theo kiểu một chuỗi các tương tác giữa hệ
thống và một hoặc một số tác nhân
Các tương tác giúp mô tả các chức năng được yêu cầu lên hệ thống
cho NSD
Với các hệ thống phức tạp, THSD cung cấp điểm khởi đầu để phân tích
theo hướng là cái gì cần xây dựng
THSD xác định các dịch vụ được cung cấp bởi hệ thống
giúp xác
định các lớp, các phương thức mà hệ thống cần cài đặt.
07/12/14 PTTKHT - MHCTHSD
12/36
Ví dụ
Hệ thống Ngân hàng Sinh viên cung cấp các dịch vụ sau:
–
Mở tài khoản
–
Đóng tài khoản
–
Sửa đổi thông tin tài khoản
–
Rút tiền
–
Gửi tiền
–
Chuyển khoản
–
Kiểm tra số dư tài khoản
–
In thông tin tài khoản.
07/12/14 PTTKHT - MHCTHSD
13/36
Ví dụ (2)
Ngân hàng Sinh viên
Xác định các tác nhân
–
Ai sẽ sử dụng các chức năng chính của hệ thống
–
Ai cần sự hỗ trợ của hệ thống để thực hiện các công việc hàng
ngày?
–
Ai quản trị, bảo dưỡng để đảm bảo cho hệ thống hoạt động
thường xuyên?
–
Hệ thống quản lý, sử dụng những thiết bị nào?
–
Hệ thống cần tương tác với những bộ phận, hệ thống nào khác?
–
Ai hay cái gì quan tâm đến các kết quả xử lý của hệ thống?
Các câu hỏi khi phát triển MHCTHSD
Xác định các use case:
–
Nhiệm vụ chính của các tác nhân là gì?
–
Tác nhân cần phải truy cập/sửa đổi thông tin hệ thống hay không?
–
Những thay đổi bên ngoài hệ thống thì tác nhân có cần phải thông
báo cho hệ thống hay không?
–
Những tác nhân nào cần được thông báo về những thay đổi của
hệ thống?
–
Hệ thống cần có những đầu vào/ra nào, đầu vào đến từ đâu và
đầu ra chuyển đến đâu?
Các câu hỏi khi phát triển MHCTHSD (2)
07/12/14 PTTKHT - MHCTHSD
16/36
Các câu hỏi khi phát triển MHCTHSD (3)
Câu hỏi kiểm chứng
–
Có tồn tại tình huống nào mà NSD tương tác với hệ thống mà
chưa có THSD tương ứng?
–
Có tồn tại THSD nào không bao giờ được kích hoạt (không thể đủ
điều kiện để xảy ra)?.
07/12/14 PTTKHT - MHCTHSD
17/36
Phát triển Mô hình Các trường hợp sử dụng
Nội dung
–
Quan hệ giữa các THSD
–
Phân cấp biểu đồ các THSD
–
Các biến thể của THSD
–
Bản mô tả THSD.
07/12/14 PTTKHT - MHCTHSD
18/36
Quan hệ giữa các THSD
Các THSD có thể có quan hệ với nhau theo các dạng
–
Mở rộng (Extends)
–
Sử dụng (Uses)
–
Gộp nhóm (Grouping).
07/12/14 PTTKHT - MHCTHSD
19/36
Quan hệ mở rộng (extends relationship)
Tồn tại tình huống một THSD, trong một điều
kiện nào đó, có thành phần là một THSD khác
(đã tồn tại)
Trong hệ thống quản lý ngân hàng
–
THSD In thông tin tài khoản đã tồn tại
–
Các THSD Mở tài khoản, Cập nhật thông tin tài khoản, Đóng
tài khoản sau khi thực hiện xong công việc chính, có thể thực
hiện việc in thông tin tài khoản nếu được yêu cầu
In thông tin tài khoản là trường hợp mở rộng
của các trường hợp cơ sở Mở tài khoản, Cập
nhật thông tin tài khoản, Đóng tài khoản.
07/12/14 PTTKHT - MHCTHSD
20/36
Quan hệ mở rộng (2)
07/12/14 PTTKHT - MHCTHSD
21/36
Quan hệ mở rộng (3)
07/12/14 PTTKHT - MHCTHSD
22/36
Quan hệ mở rộng (4)
In TT Tai khoan
<<extends>>
Mo tai khoan
•
In TT Tai khoan là trường hợp mở rộng của Mo
tai khoan
•
Không nhất thiết mỗi khi THSD Mở tài khoản xảy
ra thi THSD In TT tài khoản xảy ra
Có thể không cần ghi stereotype <<extends>>
Chiều mũi tên
Trường
hợp cơ sở
Trường
hợp mở
rộng
07/12/14 PTTKHT - MHCTHSD
23/36
Quan hệ Sử dụng (Uses Relationship)
Một số THSD:
–
Có một mảnh thành phần giống nhau
–
Phần này tương đối độc lập
Tách riêng phần giống nhau thành một THSD
Đặt quan hệ sử dụng (use) giữa các THSD ban đầu và THSD mới
được tách ra.
07/12/14 PTTKHT - MHCTHSD
24/36
Quan hệ Sử dụng (2)
Trong hệ thống quản lý ngân hàng
–
Các THSD Rút tiền, Gửi tiền, Chuyển khoản đều có phần In biên
lai (giống nhau)
Tách phần In biên lai thành một THSD
Đặt các quan hệ sử dụng giữa
•
Rút tiền
•
Gửi tiền
•
Chuyển khoản
với In biên lai.
07/12/14 PTTKHT - MHCTHSD
25/36
Quan hệ Sử dụng (3)
Mỗi khi THSD cơ sở xảy ra thì chắc chắn kéo
theo THSD sử dụng xảy ra.
Rut tien
Chuyen khoan
Nap tien
In bien lai
<<uses>>
<<uses>>
<<uses>>
THSD
cơ sở
THSD
sử dụng