Sau khi đã tìm được use case, tác nhân cần xây
dựng bảng theo mẫu sau
Mô tả sơ lược ca sử dụng
Ø Mô tả mô hình ca sử dụng tổng thể
|
Sau khi đã mô tả xong chúng ta đã sơ lược có thể tạo được giao diện người dùng, tuy
nhiên sẽ được nghiên cứu sâu hơn sau.
Giao diện người dùng |
Là biểu đồ thể hiện sự
tương tác, mối quan hệ giữa các Use case và actor trong hệ thống.
Mỗi hệ thống thường có
một biểu đồ Use case chính thể hiện phạm vi của hệ thống và các chức năng chính
của hệ thống. Số lượng các Use case khác được tạo ra sẽ tùy thuộc vào yêu cầu.
Có thể là:
* Một biểu đồ thể hiện tất cả các Use case liên quan đến một actor nào đó
* Một biểu đồ thể hiện tất cả các Use case được cài đặt trong một giai đoạn phát triển.
* Một biểu đồ thể hiện một Use case và tất cả các mối quan hệ của nó.
Tuy nhiên nên cân nhắc để các biểu đồ thể hiện đủ các thông tin cần thiết, nếu quá nhiều biểu đồ sẽ gây ra sự nhầm lẫn và mất đi lợi ích của việc đơn giản hóa. Tập hợp các Use case giúp cho khách hàng dễ dàng xem xét ở mức tổng quát hệ thống mà ta sẽ xây dựng. Một hệ thống thông thường có từ 20 đến 50 Use case.
* Một biểu đồ thể hiện tất cả các Use case liên quan đến một actor nào đó
* Một biểu đồ thể hiện tất cả các Use case được cài đặt trong một giai đoạn phát triển.
* Một biểu đồ thể hiện một Use case và tất cả các mối quan hệ của nó.
Tuy nhiên nên cân nhắc để các biểu đồ thể hiện đủ các thông tin cần thiết, nếu quá nhiều biểu đồ sẽ gây ra sự nhầm lẫn và mất đi lợi ích của việc đơn giản hóa. Tập hợp các Use case giúp cho khách hàng dễ dàng xem xét ở mức tổng quát hệ thống mà ta sẽ xây dựng. Một hệ thống thông thường có từ 20 đến 50 Use case.
Biểu đồ là các hình vẽ bao gồm các ký hiệu phần tử mô hình hóa
được sắp xếp để minh họa một thành phần cụ thể hay một khía cạnh cụ thể của hệ
thống. Một mô hình hệ thống thường có nhiều loại biểu đồ, mỗi loại có nhiều biểu
đồ khác nhau. Một biểu đồ là một thành phần của một hướng nhìn cụ thể; và khi
được vẽ ra, nó thường thường cũng được xếp vào một hướng nhìn. Mặt khác, một số
loại biểu đồ có thể là thành phần của nhiều hướng nhìn khác nhau, tùy thuộc vào
nội dung của biểu đồ.
Quan hệ
giữa Use case và Actor:
Thường gọi là quan hệ tương tác vì nó thể hiện sự tương tác giữa một actor và một Use case. Mối quan hệ này có thể là hai chiều (từ Actor đến Use case và ngược lại), nó cũng có thể chỉ là một chiều, lúc đó chiều của quan hệ sẽ chỉ ra rằng ai là người khởi tạo liên lạc (communicate). Quan hệ này thể hiện bởi một đường thẳng nối giữa actor và Use case (quan hệ hai chiều) hay một mũi tên (quan hệ một chiều).
Thường gọi là quan hệ tương tác vì nó thể hiện sự tương tác giữa một actor và một Use case. Mối quan hệ này có thể là hai chiều (từ Actor đến Use case và ngược lại), nó cũng có thể chỉ là một chiều, lúc đó chiều của quan hệ sẽ chỉ ra rằng ai là người khởi tạo liên lạc (communicate). Quan hệ này thể hiện bởi một đường thẳng nối giữa actor và Use case (quan hệ hai chiều) hay một mũi tên (quan hệ một chiều).
Quan hệ giữa Use case với Use case:
Có ba
loại quan hệ Use Case: Quan hệ mở rộng, quan hệ sử dụng và quan hệ tạo nhóm.
Quan hệ mở rộng và quan hệ sử dụng là hai dạng khác nhau của tính thừa kế. Quan
hệ tạo nhóm là một phương cách để đặt nhiều Use Case chung với nhau vào trong một
gói.
Quan
hệ Uses (sử dụng):
Có thể có nhiều Use case
có chung một số chức năng nhỏ. Khi đó nên tách chức năng đó thành một Use case
riêng hơn là mô tả nó trong tất cả các Use case mà cần chức năng đó. Khi đó có
một quan hệ Uses giữa các Use case trên và Use case vừa tạo ra.
Ví dụ: trong hệ thống quản lý thư viện, mọi Use case đều bắt đầu bằng việc kiểm tra định danh của người dùng. Chức năng này có thể mô tả trong một Use case tên là “Đăng nhập hệ thống”, sau đó các Use case khác sẽ sử dụng Use case này khi cần thiết.
Ví dụ: trong hệ thống quản lý thư viện, mọi Use case đều bắt đầu bằng việc kiểm tra định danh của người dùng. Chức năng này có thể mô tả trong một Use case tên là “Đăng nhập hệ thống”, sau đó các Use case khác sẽ sử dụng Use case này khi cần thiết.
Quan hệ mở rộng
Nhiều khi trong quá trình
phát triển Use Case, người ta thấy một số Use Case đã tồn tại cung cấp một phần
những chức năng cần thiết cho một Use Case mới. Trong một trường hợp như vậy,
có thể định nghĩa một Use Case mới là Use Case cũ cộng thêm một phần mới. Một Use Case như vậy được gọi là một Use Case
mở rộng (Extended Use Case ). Trong quan hệ mở rộng, Use Case gốc (Base Use
Case ) được dùng để mở rộng phải là một Use Case hoàn thiện. Use Case mở rộng
không nhất thiết phải sử dụng toàn bộ hành vi của Use Case gốc.
Biểu đồ
sau chỉ ra Use Case “Ký hợp đồng mua ô tô” là Use Case mở rộng của "Ký hợp
đồng bảo hiểm”.
Quan hệ
mở rộng giữa các Use Case được biểu thị bằng đoạn thẳng với hình tam giác rỗng
trỏ về phía Use Case được dùng để mở rộng, đi kèm với stereotype
<<extends>>.
Không giống như quan hệ Uses trong đó nói rằng
khi một Use case A sử dụng Use case B có nghĩa là trong khi thực hiện Use case
A phải thực hiện Use case B, quan hệ Extends dùng để chỉ:* Các hành vi tùy chọn: có thể thực hiện hoặc không.
Ví dụ: khi gửi email có thể thực hiện các thao tác bảo mật nội dung thư hoặc là không. Ta có Use case “Bảo mật” có quan hệ extends với Use case “Gửi email”.
* Các hành vi mà chỉ thực hiện trong một số điều kiện nhất định.
Ví dụ như: Khi thêm sách mới trong thư viện thì phải nhập các từ khóa cho nó, nếu từ khóa chưa có phải thực hiện thêm từ khóa rồi mới tiếp tục thực hiện thêm các thông tin về sách. Ta có Use case “Thêm từ khóa” có quan hệ extends Use case “Thêm sách”.
* Một số hành vi khác sẽ được thực hiện phụ thuộc vào sự lựa chọn của người dùng.
Ví dụ như: người dùng của hệ thống rút tiền tự động có thể chọn Rút tiền nhanh hoặc Rút tiền theo cách bình thường. Ta có Use case “Rút tiền nhanh” có quan hệ extends với Use case “Rút tiền”.
Quan hệ sử dụng
Khi một
nhóm các Use Case cùng chung một hành vi nào đó thì hành vi này có thể được
tách riêng ra thành một Use Case riêng biệt và nó có thể được sử dụng bởi các
Use Case kia, một mối quan hệ như vậy được gọi là quan hệ sử dụng.
Trong
quan hệ sử dụng, phải sử dụng toàn bộ Use Case khái quát hóa, nói một cách
khác, ta có một Use Case này sử dụng toàn bộ một Use Case khác. Các hành động
trong Use Case khái quát hóa không cần phải được sử dụng trong cùng một tiến
trình. Chúng có thể được trộn lẫn với các hành động xảy ra trong Use Case
chuyên biệt hóa.
Quan hệ
sử dụng giữa các Use Case được biểu thị bằng đoạn thẳng với hình tam giác rỗng
trỏ về phía Use Case được sử dụng, đi kèm với stereotype <<uses>>.
- Quan
hệ chung nhóm
Khi một
số các Use Case cùng xử lý các chức năng tương tự hoặc có thể liên quan đến
nhau theo một phương thức nào đó, người ta thường nhóm chúng lại với nhau.
Nhóm
các Use Case được thực hiện bằng khái niệm "Gói" (Package) của UML.
Gói không cung cấp giá trị gia tăng cho thiết kế.
Ví dụ:
tất cả các Use Case có liên quan đến sự tương tác giữa khách hàng và nhân viên
thu ngân sẽ được nhóm thành "Package Khách hàng- N/v thu ngân"
Tóm tắt
về Use Case với máy ATM trong ngân hàng lẻ:
Cho tới
nay chúng ta đã xác định được một vài Use Case, phân tích dòng hành động chính
cũng như các dòng hành động thay thế, cũng như rút ra các mối quan hệ giữa
chúng. Biểu đồ sau tổng hợp những thông tin đã thu thập được về nhóm các Use
Case căn bản của một hệ thống ATM.
System
Boundary (khung hệ thống)
Các Use Case thường được bao trong một khung chữ nhật biểu thị hệ thống (System Boundary). Khi đó Uses Case đặt bên trong hệ thống và Actor đặt bên ngoài hệ thống. Ví dụ: Use Case Withdraw là một chức năng của hệ thống con («subsystem») ATM.
Các Use Case thường được bao trong một khung chữ nhật biểu thị hệ thống (System Boundary). Khi đó Uses Case đặt bên trong hệ thống và Actor đặt bên ngoài hệ thống. Ví dụ: Use Case Withdraw là một chức năng của hệ thống con («subsystem») ATM.
Tags
System Information