Biểu đồ ca sử dụng chỉ ra mối quan hệ giữa các tác nhân và các ca sử dụng trong
hệ thống.
Mỗi ca sử dụng cần phải biểu diễn trọn vẹn một giao dịch giữa NSD và hệ thống.
Mối quan hệ giữa các ca sử dụng
Giữa các ca sử dụng cĩ ba quan hệ chính: quan hệ “mở rộng”, quan hệ “sử dụng” và quan hệ theo nhĩm hay theo “gĩi”.
1. Quan hệ mở rộng
Trong khi xây dựng những ca sử dụng, ta nhận thấy cĩ những ca sử dụng lại được sử dụng như là một phần của chức năng khác. Trong những trường hợp như thế ta nên xây dựng một ca sử dụng mới mở rộng một hay nhiều ca sử dụng đã xác định trước. Ca sử dụng mới được gọi là ca sử dụng mở rộng của những ca sử dụng cũ. Mối quan hệ mở rộng giữa các ca sử dụng được mơ tả và ký hiệu giống như quan hệ tổng quát hố với nhãn của quan hệ là <<extends>>. Ví dụ,
Rút tiền
<<extends>>
Hình 3-6 Mối quan hệ mở rộng giữa các ca sử dụng
Khách hàng cĩ thể rút tiền theo nhiều cách khác nhau, trong đĩ cách rút nhanh. Ca sử dụng B mở rộng <<extends>> A nếu: B là biến thể của A và nĩ chứa thêm một số sự kiện cho những điều kiện nào đĩ.
2. Quan hệ sử dụng
Khi một số ca sử dụng cĩ một hành vi chung thì hành vi này cĩ thể xây dựng thành một ca sử dụng để cĩ thể được sử dụng trong những ca sử dụng khác. Mối quan hệ như thế được gọi là mối quan hệ sử dụng. Nĩi cách khác, trong mối quan hệ sử dụng, cĩ một ca sử dụng dùng một ca sử dụng, là một dạng chuyên biệt hố ca sử dụng cơ sở.
Giống như mối quan hệ mở rộng, mối quan hệ sử dụng cũng sử dụng ký hiệu tổng quát hố để thể hiện với nhãn <<uses>>. Ví dụ:
Hình 3-7 Quan hệ sử dụng giữa các ca sử dụng
Để thực hiện được ca sử dụng Thanh tốn thì phải gọi tới ca sử dụng Thanh tốn
tiền mặt khi khách hàng chọn phương thức trả bằng tiền mặt.
Trong UML 1.3, quan hệ sử dụng <<uses>> được gọi là quan hệ gộp vào <<includes>>.
3. Mối quan hệ gộp nhĩm
Khi cĩ một số ca sử dụng cùng xử lý những chức năng giống nhau hoặc cĩ quan hệ với ca sử dụng khác theo cùng một cách thì tốt nhất là nhĩm chúng lại thành từng
gĩi chức năng. Ví dụ: hệ thống HBH cĩ thể chia các ca sử dụng thành các gĩi Bán hàng, gĩi Thanh tốn và gĩi Quản lý hệ thống, v.v.
Lưu ý, trong UML (thể hiện trong Rose) khái niệm mẫu rập khuơn (stereotype)
được mơ tả bằng một xâu và được đặt trong cặp << … >>, được sử dụng để phân nhĩm các thành phần của mơ hình hệ thống. Ví dụ, đối với hai ca sử dụng UC A, UC B, ta cĩ thể tạo ra hai mẫu rập khuơn tương ứng <<UC A>>, <<UC B>>. Stereotype khơng được sử dụng thường xuyên cho các ca sử dụng, nĩ thường sử dụng cho lớp hay cho các mối quan hệ. Ví dụ, <<Actor>> là một mẫu rập khuơn trong UML và khi một lớp được chỉ ra trong biểu tượng stereotype: <<Actor>> cĩ dạng:
Thu tốn Thanh tốn tiền mặt <<uses>> <<Actor>> Tên Tác nhân
thì nĩ được xem là lớp cĩ kiểu Actor.
Sau khi đã xác định xong các ca sử dụng cho hệ thống thì phải kiểm tra lại xem chúng đã được phát hiện hết chưa. Cơng việc này được thực hiện bằng cách trả lời cho các câu hỏi sau:
Mỗi yêu cầu chức năng của hệ thống đã cĩ trong ít nhất một ca sử dụng chưa? Những chức năng khơng được được mơ tả trong các ca sử dụng sẽ khơng được cài đặt sau này.
Các mối tương tác giữa các tác nhân và hệ thống đã xác định hết chưa? Tác nhân cung cấp những gì cho hệ thống?
Tác nhân nhận được những gì từ hệ thống?
Đã nhận biết được tất cả các hệ thống bên ngồi cĩ tương tác với hệ thống chưa? Những thơng tin nào mà hệ thống ngồi gửi tới hoặc nhận được từ hệ thống? Một lần nữa cần duyệt lại xem đã xác định đầy đủ, chính xác các tác nhân, ca sử dụng và mối quan hệ của chúng.
Xây dựng biểu đồ ca sử dụng cho hệ HBH
Trước khi xây dựng biểu đồ ca sử dụng chúng ta cần lưu ý:
Mỗi ca sử dụng luơn được ít nhất một tác nhân kích hoạt một cách trực tiếp hay gián tiếp, nghĩa là giữa tác nhân và ca sử dụng thường cĩ mối quan hệ giao tiếp (kết hợp).
Ca sử dụng cung cấp các thơng tin cần thiết cho tác nhân và ngược lại, tác nhân cung cấp dữ liệu đầu vào cho ca sử dụng thực hiện.
Từ những kết quả phân tích ở trên, đến đây chúng ta cĩ thể xây dựng biểu đồ ca sử dụng cho HBH như sau:
Bộ phận kiểm duyệt thẻ Thanh tốn bằng séc Bán hàng Đăng nhập hệ thống Thanh tốn Người bán hàng Bộ phận kiểm duyệt séc Khách hàng Thanh tốn bằng thẻ Thanh tốn tiền mặt Khởi động hệ thống <<uses>> <<uses>> <<uses>>
Hình 3-8 Biểu đồ ca sử dụng của hệ thống HBH Một số điểm cần chú ý khi xây dựng biểu đồ ca sử dụng:
Giữa các tác nhân với nhau khơng cĩ quan hệ trực tiếp với nhau. Tác nhân nằm ngồi hệ thống, do vậy giao tiếp giữa các tác nhân cũng nằm ngồi hệ thống cần xây dựng.
Giữa các ca sử dụng khơng cĩ quan hệ trực tiếp, trừ mối quan hệ mở rộng
<<extends>> hoặc <<uses>> như đã nĩi ở trên.
Mỗi ca sử dụng phải được một tác nhân khởi động hoặc phục vụ cho một tác nhân, ngoại trừ trường hợp những ca sử dụng mở rộng hay ca sử dụng theo quan hệ sử dụng.
Mỗi phần tử của biểu đồ ca sử dụng (ca sử dụng và tác nhân) khi cần thiết cĩ thể mơ tả chi tiết trong phần đặc tả (Documentation của Rose) hay mơ tả trong một tệp riêng sau đĩ gán tương ứng cho phần tử đĩ trong mơ hinh ca sử dụng.
Khi hệ thống lớn, phức tạp thì nên chia các ca sử dụng thành các gĩi, trong đĩ nhĩm những ca sử dụng và các tác nhân cĩ quan hệ với nhau để tạo ra một hệ thống con.