Use case
là kỹ thuật được dùng trong kỹ thuật phần mềm và hệ thống nhằm nắm bắt những yêu cầu chức năng của hệ thống. Use
casemô tả sự tương tác đặc trưng giữa người
dùng bên ngoài (actor) và hệ thống. Use
case cũng mô tả các yêu cầu đối với hệ thống.
Mỗi Use case sẽ mô
tả cách thức người dùng bên ngoài tương tác với hệ thống để đạt được mục tiêu
nào đó. Một hoặc nhiều kịch bản (scenario) có thể được tạo ra từ mỗi use case,
tương ứng với chi tiết về mỗi cách thức đạt được mục tiêu nào đó. Khi mô tả Use
case, người ta thường tránh dùng thuật ngữ kỹ thuật, thay vào đó họ sử dụng
ngôn ngữ của người dùng cuối hoặc chuyên gia về lĩnh vực đó. Để tạo ra use
case, cần phải có sự hợp tác chặt chẽ giữa người phân tích hệ thống và người
dùng cuối. Một trong những cách biểu diễn trực quan phổ biến hiện nay là lược đồ
use case của UML.
Use case thường được
đặt tên giống động
từ hoặc động
từ + cụm danh từ. Đặc điểm của
tên Use case là ngắn gọn, cụ thể và miêu tả đầy đủ nghĩa của đối tượng người dùng.
Những động từ như do, perform, các danh từ như data, information nên
tránh nếu có thể.
Người dùng sử dụng Use case để đại diện cho các nghiệp vụ trong
hệ thống.
Các
thành phần của use case
Actor:
để chỉ người sử dụng hoặc một đối tượng nào đó bên ngoài tương tác với hệ thống.
Use case: là chức năng mà các Actor sẽ sử dụng.
Các
quan hệ trong Use case:
- Use case «include»: Một Use case (gọi là base Use case) có thể chứa («include») chức năng của một Use case khác (gọi là inclusion
Use case) như một phần xử lý của nó. Nói chung, nó giả sử rằng mọi Use case
«include» sẽ được gọi mỗi khi tuyến Use case chính chạy. Quan hệ này còn gọi là
quan hệ sử dụng «uses». Ví dụ, việc thực thi Use case Card Identification (Xác
nhận thẻ) là một phần của Use case Withdraw (Rút tiền). Khi thực thi Use case
Withdraw, Use case Card Identification sẽ được gọi.
- Use case «extend»: Một Use case mở rộng (gọi là
extension Use case) có thể được mở rộng («extend») hành vi từ một Use case khác
(gọi là base Use case); điều này thường dùng cho các trường hợp tùy chọn, ngoại
lệ, chèn thêm vào Ví dụ, nếu trước khi thay đổi một kiểu đặt hàng cụ thể
(Modify Order), người dùng có thể phải nhận được sự chấp thuận (Get Approval) từ
cấp phân quyền cao hơn, thì Use case Get Approval có thể tùy chọn mở rộng
(«extend») Use case Modify Order thông thường.
- Use case Generalizations: Một quan hệ generalization có giữa một Use case
cụ thể hơn (specifilized) đến với một Use case tổng quát hơn (generalized). Một
generalized có thể cụ thể hóa thành nhiều specifilized, một specifilized cũng
có thể được cụ thể hóa từ nhiều generalized. Một quan hệ generalization giữa
các Use case trình bày thành một đường đặc từ specifilized đến generalized, với
đầu mũi tên là một tam giác rỗng chỉ generalized. Tránh nhằm lẫn với quan hệ phụ
thuộc «extend».
Mô hình hóa Use case
Một mô hình Use case được thể hiện chủ yếu là các Actors, Use case và Connectors
Khái niệm: Một mô hình
Use case là một loại của ngôn ngữ mô hình hóa thống nhất(UML) được định nghĩa bởi
Object Management Group(OMG). Mô hình Use case cung cấp cái nhìn trực quan đồ họa
về nghiệp vụ của hệ thống(đại diện là Use case), người dùng hệ thống.
Mục đích: Mô hình hóa nhằm tạo ra một tài liệu mô tả tổng thể về hệ thống bằng
cách xác định mục đích của người dùng.
Các Use case trong
mô hình Use case có thể được tổ chức, sắp xếp theo logic nghiệp vụ trong hệ thống
và mức độ trìu tượng, ảnh hưởng đến người dùng. Chúng có thể được kết nối để hiển
thị những tác động, những quan hệ phụ thuộc và mở rộng.
Mục đích chính của
việc mô hình hóa Use case là để tạo ra một tài liệu mô tả tổng thể về hệ thống
bằng cách xác định mục đích người dùng.