Biểu đồ trường hợp sử dụng là gì?
UMLbiểu đồ trường hợp sử dụnglà hình thức chính của các yêu cầu hệ thống/phần mềm cho các chương trình phần mềm mới đang được phát triển. Mục đích của một biểu đồ trường hợp sử dụng là để hình dung những gì hệ thống nên làm (cái gì); ở giai đoạn này, nó không xem xét cách (như thế nào) để thực hiện điều đó.
Khi một trường hợp sử dụng được xác định, nó có thể được đại diện bằng một biểu diễn văn bản và hình ảnh (tức là, một biểu đồ trường hợp). Một khái niệm chính của mô hình hóa trường hợp sử dụng là nó giúp chúng ta thiết kế hệ thống từ góc độ của người dùng cuối. Đây là một kỹ thuật hiệu quả để giao tiếp hành vi của hệ thống bằng các thuật ngữ của người dùng bằng cách xác định tất cả các hành vi của hệ thống có thể nhìn thấy từ bên ngoài.
Nói cách khác, việc sử dụng hệ thống phải được nhìn từ bên ngoài, tức là hệ thống không nên được nhìn từ bên trong, mà từ một cấp độ cao hơn để xác định chức năng mà hệ thống nên cung cấp cho các tác nhân bên ngoài.
Mục đích của các biểu đồ trường hợp sử dụng
Các biểu đồ trường hợp sử dụngthường được phát triển trong giai đoạn đầu của quá trình phát triển, và mọi người thường sử dụng mô hình hóa trường hợp sử dụng cho các mục đích sau.
- Xác định bối cảnh của một hệ thống
- Nắm bắt các yêu cầu của một hệ thống
- Xác thực kiến trúc của một hệ thống
- Thúc đẩy việc triển khai và tạo ra các trường hợp kiểm tra
- Phát triển bởi các nhà phân tích, chuyên gia trong lĩnh vực và người dùng cuối mục tiêu cùng nhau
Một hình thức tiêu chuẩn của biểu đồ trường hợp sử dụng được định nghĩa trong Ngôn ngữ Mô hình Hợp nhất, như được thể hiện trong ví dụ về biểu đồ trường hợp sử dụng dưới đây.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Các yếu tố của Biểu đồ Trường hợp Sử dụng
Tác nhân
Mỗi trường hợp sử dụng sẽ có ít nhất một tác nhân, có thể hiểu là ít nhất một người tham gia (vai trò), không nhất thiết phải là một người, mà có thể là một hệ thống hoặc thiết bị khác. Một tác nhân có thể tương tác với nhiều trường hợp sử dụng, và một trường hợp sử dụng có thể tương tác với nhiều tác nhân.
Tác nhân không nhất thiết phải là con người, tức là người dùng, nhưng thực tế có thể là những thứ không phải con người, tức là hệ thống hoặc thời gian.
Thường thì, người dùng là con người, những người tham gia vào biểu đồ trường hợp sử dụng, chẳng hạn như khách hàng, nhân viên, giám sát viên, v.v.
Tác nhân Con người vs Không Con người
Từ thời gian này đến thời gian khác, hệ thống bị ảnh hưởng bởi nhiều sự kiện khác nhau để thực hiện một số chức năng trong một tình huống nhất định. Ví dụ, khi một cuộc kiểm toán được thông qua, hệ thống chủ động gửi một bức thư để thông báo cho mọi người; vậy việc gửi bức thư có được thực hiện tự động bởi hệ thống không? Trường hợp sử dụng này thực tế được kích hoạt bởi thời gian, sau đó tác nhân là Bộ đếm thời gian; ví dụ, trường hợp sử dụng này có thể được coi là “tự động gửi một bức thư vào lúc 5:00 mỗi ngày”, sau đó tác nhân kích hoạt sự kiện này – gửi một bức thư – không phải là hệ thống, mà thực sự là Tác nhân Bộ đếm thời gian.
Tác nhân Chính vs Tác nhân Phụ
Một tác nhân chính là một tác nhân sử dụng hệ thống để đạt được một mục tiêu. Các trường hợp sử dụng ghi lại các tương tác giữa hệ thống và các tác nhân để đạt được các mục tiêu của tác nhân chính. Các tác nhân phụ là những tác nhân mà hệ thống cần hỗ trợ để đạt được các mục tiêu của tác nhân chính.
- Các tác nhân có thể là chính hoặc phụ. Các tác nhân chính khởi xướng các tương tác với hệ thống.
- Các tác nhân phụ thường được hệ thống gọi đến để giúp đỡ và một tác nhân phụ không bao giờ khởi xướng trường hợp sử dụng.
Lưu ý rằng: Biểu tượng cho một tác nhân không phân biệt giữa tác nhân chính và tác nhân phụ; sự khác biệt phải được suy ra từ các mô tả trường hợp sử dụng (còn được gọi là các câu chuyện trường hợp sử dụng).
Ví dụ:
Một nhân viên cho vay ngân hàng muốn xem xét đơn xin vay của khách hàng, và một phần của quy trình liên quan đến việc kiểm tra xếp hạng tín dụng theo thời gian thực.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
- Tên Trường hợp Sử dụng. Xem xét đơn xin vay
- Tác nhân Chính. Nhân viên cho vay
- Tác nhân Phụ. Hệ thống xếp hạng tín dụng
Làm thế nào để tôi xác định các tác nhân?
Vì một tác nhân không nhất thiết phải là một người, mà có thể là một hệ thống bên ngoài, thiết bị hoặc bộ đếm thời gian, chúng ta tìm một tác nhân cụ thể hơn bằng cách đặt ra các câu hỏi sau
- Ai sẽ sử dụng hệ thống khi nó đã được phát triển?
- Từ ai hoặc hệ thống nào khác mà hệ thống cần lấy dữ liệu?
- Ai hoặc hệ thống nào khác mà hệ thống sẽ cung cấp dữ liệu?
- Hệ thống nào khác mà hệ thống sẽ liên kết?
- Ai sẽ duy trì và quản lý hệ thống?
Những câu hỏi này giúp chúng ta trừu tượng hóa các tác nhân của hệ thống. Sử dụng máy ATM làm ví dụ, việc trả lời những câu hỏi này cho phép chúng ta tìm thêm các tác nhân, tức là.
- Ngườivận hànhchịu trách nhiệm duy trì và quản lý hệ thống ATM
- Máy ATM cũng cần giao tiếp vớicác máy chủ phía sauđể lấy thông tin về tài khoản người dùng.
Trường hợp sử dụng
Một trường hợp sử dụng đại diện cho một chức năng (thường là một yêu cầu) mà hệ thống dự kiến sẽ được triển khai. Các chi tiết của một trường hợp sử dụng, ngoài tên duy nhất của nó, không được thể hiện trực quan trong biểu đồ; những chi tiết này được đưa ra trong câu chuyện (mô tả văn bản) của trường hợp sử dụng.
Một trường hợp sử dụng là một danh sách các hành động hoặc bước sự kiện thường định nghĩa các tương tác giữa các vai trò của tác nhân và hệ thống để đạt được một mục tiêu. Các trường hợp sử dụng là một kỹ thuật hữu ích để xác định, làm rõ và tổ chức các yêu cầu của hệ thống. Một trường hợp sử dụng bao gồm một tập hợp các chuỗi tương tác có thể xảy ra giữa hệ thống và người dùng mà xác định chức năng cần đạt được và các giải pháp cho bất kỳ lỗi nào có thể gặp phải.
Làm thế nào để xác định các trường hợp sử dụng?
Khi chúng ta tìm thấy các tác nhân, chúng ta có thể xác định các trường hợp sử dụng của hệ thống dựa trên các tác nhân, chủ yếu xem xét các dịch vụ mà mỗi tác nhân cần từ hệ thống, hoặc cách mà các tác nhân sử dụng hệ thống. Việc xác định các trường hợp sử dụng có thể bắt đầu với các câu hỏi sau (cho mỗi người tham gia).
- Tại sao các tác nhân sử dụng hệ thống?
- Người tham gia có tạo, sửa đổi, xóa, truy cập và lưu trữ dữ liệu trong hệ thống không? Nếu có, tác nhân thực hiện các thao tác này như thế nào?
- Tác nhân có thông báo cho hệ thống về các sự kiện bên ngoài nhất định không?
- Hệ thống có thông báo cho tác nhân về các sự kiện nội bộ nhất định không?
Kết hợp những điều trên, biểu đồ trường hợp sử dụng của hệ thống ATM có thể được đại diện như sau.
Trường hợp sử dụng được trình bày bằng các hình elip, của một cái gì đó tĩnh hoặc động, hoặc của một nhiệm vụ hoặc một hệ thống.
Ranh giới Hệ thống
Ranh giới hệ thống mô tả hệ thống bằng cách nhóm các trường hợp sử dụng trong các ranh giới hình chữ nhật, và các ranh giới hệ thống trong Visual Paradigm cung cấp hành vi chứa trường hợp sử dụng.
Các tác nhân là các vai trò (tác nhân con người hoặc tác nhân không con người) tương tác với hệ thống đang được phát triển. Do đó, các tác nhân nên được đặt bên ngoài ranh giới hệ thống và tương tác với các trường hợp sử dụng được đặt bên trong ranh giới hệ thống.
Lưu ý rằng:
Một tác nhân được định nghĩa bởi các ranh giới của hệ thống. Nếu ranh giới hệ thống mà chúng ta muốn định nghĩa bị giới hạn trong chính máy ATM, thì máy chủ phía sau là một hệ thống bên ngoài và có thể được trừu tượng hóa như một tác nhân.
Nếu ranh giới hệ thống mà chúng ta muốn định nghĩa mở rộng đến toàn bộ hệ thống ngân hàng, nơi cả máy ATM và máy chủ phía sau đều là một phần của toàn bộ hệ thống ngân hàng, thì máy chủ phía sau không còn được trừu tượng hóa như một tác nhân.
Mối quan hệ
Sau khi tìm hiểu về ba biểu tượng chính này, tiếp tục với kiến thức về Mối quan hệ và vẽ các biểu đồ trường hợp sử dụng. Một mối quan hệ trực tiếp giữa một người tham gia và một trường hợp người dùng được vẽ, và mối quan hệ được sử dụng như một đường thẳng không có mũi tên, chỉ ra một mối quan hệ hai chiều, được gọi là đường liên kết.
Một trường hợp sử dụng có thể được chia thành nhiều trường hợp sử dụng khác nhau được kết nối bởi các mối quan hệ <<bao gồm>>, <<mở rộng>> hoặc <<khái quát>> (được mô tả sau trong bài viết này).
Mối quan hệ Liên kết Giao tiếp
Điều này đại diện cho một giao tiếp hai chiều giữa một tác nhân và một trường hợp sử dụng và do đó là một quan hệ nhị phân.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Mối quan hệ <<Bao gồm>>
Mộtbao gồmmối quan hệ có nghĩa là trường hợp sử dụng sẽ bao gồm các trường hợp sử dụng khác. Mục đích của Mối quan hệ Bao gồm là sử dụng Mối quan hệ Bao gồm để giảm sự lặp lại của việc mô tả cùng một trường hợp sử dụng một lần nữa. Nếu nhiều trường hợp chia sẻ cùng một chức năng phần, thì chức năng có thể được tách ra và các trường hợp sử dụng khác có thể được bao gồm trong trường hợp.
Ví dụ, thủ thư cần đọc mã để ghi lại cuốn sách đã mượn khi cuốn sách được kiểm tra, và cũng cần đọc mã để ghi lại cuốn sách đã trả khi cuốn sách được trả lại, vì việc đọc mã là một phần hành động lặp lại, nó có thể được tạo thành một trường hợp sử dụng riêng biệt, và để cuốn sách đã mượn và cuốn sách đã trả bao gồm trường hợp này.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Nếu một trường hợp sử dụng A bao gồm một trường hợp sử dụng khác B, thì việc thực hiện A yêu cầu việc thực hiện B để hoàn thành nhiệm vụ của nó. Tuy nhiên, B độc lập với chính nó. Tức là, B không cần biết bất cứ điều gì về A. B cũng có thể được bao gồm trong bất kỳ trường hợp sử dụng nào khác.
Mối quan hệ <<Mở rộng>>
Nếu một trường hợp sử dụng B mở rộng một trường hợp sử dụng khác A, thì việc thực hiện A có thể điều kiện bao gồm việc thực hiện B để hoàn thành nhiệm vụ của nó. Tức là, trong một số trường hợp, A có thể hoàn thành nhiệm vụ của mình mà không cần B. Tuy nhiên, tùy thuộc vào các điều kiện được mô tả, A có thể yêu cầu B. Trong trường hợp này, B phụ thuộc vào B. Tuy nhiên, tùy thuộc vào các điều kiện được mô tả, A có thể yêu cầu B. Trong trường hợp này, B phụ thuộc vào A và không thể tồn tại một mình. Vì lý do này, B không thể được mở rộng đến nhiều hơn một trường hợp sử dụng. Câu chuyện trường hợp sử dụng của A sẽ bao gồm các bước thực hiện mà nó yêu cầu từ B; điểm này được gọi là điểm mở rộng.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Hãy xem một ví dụ khác nơi hệ thống tự động đặt hàng khi không còn hàng tồn kho để người quản lý không phải thực hiện đơn hàng trực tiếp. Xem biểu đồ trường hợp sử dụng dưới đây:
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Mối quan hệ Khái quát
Mối quan hệ khái quát tương tự như mối quan hệ khái quát trong ngôn ngữ lập trình hướng đối tượng trong các biểu đồ lớp, và có thể được áp dụng cho việc khái quát các vai trò (tác nhân) và các trường hợp sử dụng.
Ví dụ, trong hệ thống đặt chỗ, có hai loại phương thức đặt chỗ: “đặt vé qua điện thoại” và “đặt vé trực tuyến”, và trường hợp sử dụng cơ bản “đặt vé”, vì vậy bạn có thể sử dụng khái quát để định hình trường hợp, và thêm <<cần thiết>> vào trường hợp sử dụng cha (đặt chỗ) để chỉ ra mối quan hệ khái quát.
Chỉnh sửa ví dụ về Biểu đồ Trường hợp Sử dụng này
Thảo luận về các mối quan hệ trong biểu đồ trường hợp sử dụng
- Trong một biểu đồ trường hợp sử dụng chung, chúng ta chỉ đại diện cho các mối quan hệ giữa các tác nhân và các trường hợp sử dụng, tức là, các liên kết giao tiếp giữa chúng.
- Ngoài ra, chúng ta cũng có thể mô tả sự khái quát giữa các người tham gia và các tác nhân, và các mối quan hệ bao gồm, mở rộng và khái quát giữa các trường hợp sử dụng.
- Chúng tôi sử dụng những mối quan hệ này để điều chỉnh mô hình trường hợp sử dụng hiện có và trích xuất một số thông tin chung để tái sử dụng, làm cho mô hình trường hợp sử dụng dễ duy trì hơn.
- Tuy nhiên, chúng ta phải cẩn thận trong việc chọn các mối quan hệ này trong ứng dụng. Nói chung, các mối quan hệ này làm tăng số lượng các trường hợp sử dụng và các mối quan hệ, do đó làm tăng độ phức tạp của mô hình trường hợp sử dụng.
- Hơn nữa, mô hình trường hợp sử dụng thường được điều chỉnh sau khi hoàn thành, vì vậy không cần phải vội vàng để trừu tượng hóa các mối quan hệ giữa các trường hợp sử dụng trong giai đoạn đầu của mô hình hóa trường hợp sử dụng.
Trường hợp sử dụng – Luồng sự kiện
Biểu đồ trường hợp sử dụng cung cấp cho chúng ta cái nhìn tổng thể về chức năng của hệ thống, chúng ta có thể biết ai sẽ tương tác với hệ thống, và các dịch vụ mà mỗi tác nhân cần nhận từ hệ thống.
Trường hợp sử dụng mô tả cuộc trò chuyện giữa các tác nhân và hệ thống, nhưng các chi tiết của cuộc trò chuyện này không được thể hiện trong biểu đồ trường hợp sử dụng, vì vậy cho mỗi trường hợp sử dụng, chúng ta có thể mô tả các chi tiết của cuộc trò chuyện này dưới dạng một luồng sự kiện.
Các kịch bản trường hợp sử dụng và Luồng sự kiện – Rút tiền ATM
Ví dụ, trường hợp “Rút tiền” trong hệ thống ATM có thể được đại diện bởi một luồng sự kiện như sau:
Kịch bản bình thường – Rút tiền – quy trình cơ bản của các sự kiện:
- Người dùng chèn thẻ tín dụng
- Nhập mã PIN
- Nhập số tiền rút
- Rút tiền mặt
- Thoát khỏi hệ thống và lấy lại thẻ tín dụng
Nhưng điều này chỉ mô tả kịch bản bình thường của trường hợp sử dụng rút tiền. Là một hệ thống ATM thực tế, chúng ta cũng phải xem xét nhiều kịch bản khác có thể xảy ra, chẳng hạn như:
- thẻ tín dụng không hợp lệ,
- mật khẩu sai,
- số dư tiền mặt không đủ trong tài khoản của người dùng, v.v.
Tất cả những tình huống có thể xảy ra này (cả bình thường và bất thường) được gọi là kịch bản của trường hợp sử dụng và các kịch bản cũng được gọi là các trường hợp của trường hợp sử dụng. Các kịch bản cũng được gọi là các trường hợp của các trường hợp sử dụng. Trong số các kịch bản khác nhau của một trường hợp sử dụng, kịch bản phổ biến nhất được mô tả bởi quy trình cơ bản, trong khi các kịch bản khác được mô tả bởi các quy trình thay thế.
Kịch bản thay thế
Đối với trường hợp sử dụng “Rút tiền” trong hệ thống ATM, chúng ta có thể có một số quy trình thay thế như sau.
Rút tiền – quy trình sự kiện thay thế.
- Kịch bản thay thế I: Người dùng có thể từ chối ở bất kỳ bước nào của quy trình cơ bản và đi đến bước 5 của quy trình cơ bản.
- Quy trình thay thế II: Ở bước 1 của quy trình cơ bản, người dùng chèn thẻ tín dụng không hợp lệ, hệ thống hiển thị lỗi và thoát thẻ tín dụng, và trường hợp sử dụng kết thúc.
- Quy trình thay thế III: Ở bước 2 của quy trình cơ bản, người dùng nhập mật khẩu không chính xác, hệ thống hiển thị lỗi và yêu cầu người dùng nhập lại mật khẩu và quay lại bước 2 của quy trình cơ bản; sau ba lần nhập mật khẩu không chính xác, thẻ tín dụng sẽ bị hệ thống tịch thu và trường hợp sử dụng kết thúc.
- …
Bằng cách kết hợp kịch bản cơ bản và các kịch bản thay thế, tất cả các tình huống khác nhau có thể xảy ra trong một trường hợp sử dụng có thể được mô tả rõ ràng. Khi mô tả quy trình sự kiện của một trường hợp sử dụng, chúng ta muốn mô tả tất cả các kịch bản có thể xảy ra càng nhiều càng tốt để đảm bảo tính đầy đủ của các yêu cầu.
Mô hình trường hợp sử dụng so với biểu đồ trường hợp sử dụng
Điều quan trọng là tránh hiểu lầm rằng một biểu đồ trường hợp sử dụngbao gồm các diễn viên và các trường hợp sử dụng là một mô hình trường hợp sử dụng, vì một biểu đồ trường hợp sử dụng chỉ là một đại diện hình ảnh của các dịch vụ mà hệ thống có thể cung cấp, cho chúng ta một ý tưởng tổng quát về chức năng của hệ thống.
Mô hình trường hợp sử dụngbao gồm một biểu đồ trường hợp sử dụng và một mô tả chi tiết về từng trường hợp sử dụng, đặc tả trường hợp sử dụng, được cung cấp dưới dạng mẫu trong RUP.
Mô tả ngắn gọn
Một mô tả ngắn gọn về vai trò và mục đích của trường hợp sử dụng.
Quy trình sự kiện
Quy trình sự kiện nên đại diện cho tất cả các kịch bản, bao gồm cả kịch bản cơ bản và kịch bản thay thế.
Kịch bản trường hợp sử dụng
Bao gồm các kịch bản thành công và kịch bản thất bại, và các kịch bản chủ yếu là sự kết hợp của các quy trình cơ bản và quy trình thay thế.
Yêu cầu đặc biệt
Mô tả các yêu cầu phi chức năng (bao gồm hiệu suất, độ tin cậy, khả năng sẵn có, khả năng mở rộng, v.v.) và các ràng buộc thiết kế (hệ điều hành, công cụ phát triển, v.v.) liên quan đến trường hợp sử dụng.
Điều kiện tiên quyết
Trạng thái mà hệ thống phải ở trước khi trường hợp sử dụng có thể được thực hiện.
Điều kiện hậu
Tập hợp các trạng thái mà hệ thống có thể ở sau khi trường hợp sử dụng được thực hiện.
Một đặc tả trường hợp sử dụng về cơ bản là một đại diện văn bản, với tùy chọn sử dụng biểu đồ trạng thái, biểu đồ hoạt động hoặc biểu đồ tuần tự để giúp mô tả quy trình sự kiện rõ ràng hơn. Bất kỳ đại diện đồ họa nào của giao diện người dùng và quy trình, hoặc đồ họa khác, tức là wireframes, có thể được đính kèm vào trường hợp sử dụng miễn là chúng giúp cải thiện độ rõ ràng của đại diện.
Ví dụ:
- biểu đồ hoạt động hữu ích cho việc mô tả các quy trình quyết định phức tạp,
- biểu đồ chuyển trạng thái hữu ích cho việc mô tả hành vi hệ thống liên quan đến trạng thái, và
- biểu đồ tuần tự phù hợp để mô tả thông điệp dựa trên thời gian.
Công cụ trường hợp sử dụng
Phiên bản trực tuyến
Công cụ vẽ miễn phí Visual Paradigm Online (VP Online) phiên bản miễn phí hỗ trợ UML, ERD và biểu đồ tổ chức. Bạn có thể nhanh chóng vẽ các biểu đồ trường hợp sử dụng với trình chỉnh sửa vẽ UML trực quan. Công cụ UML miễn phí này không có quảng cáo, không có thời gian truy cập hạn chế và không có giới hạn như số lượng biểu đồ, số lượng hình dạng, v.v. Vẽ UML một cách tự do. Vẽ UML một cách tự do. bạn sở hữu các biểu đồ bạn tạo ra cho mục đích cá nhân và phi thương mại.
Phiên bản máy tính để bàn
Mô hình Visual Paradigm Community Edition, có sẵn từ năm 2004, cung cấp phần mềm UML miễn phí chỉ cho mục đích phi thương mại, hỗ trợ người dùng đang thực hiện những bước đầu tiên trong mô hình hóa UML, cũng như những người cần phần mềm mô hình hóa UML miễn phí, đa nền tảng cho mục đích cá nhân, chẳng hạn như áp dụng UML cho các dự án sinh viên.
Tài liệu tham khảo
- Biểu đồ trường hợp sử dụng là gì?
- Các loại diễn viên trong mô hình trường hợp sử dụng
- Xác định yêu cầu người dùng với các biểu đồ trường hợp sử dụng
- Đặc tả trường hợp sử dụng là gì?
- Câu chuyện người dùng so với trường hợp sử dụng cho phát triển phần mềm Agile
- Cách tiếp cận dựa trên trường hợp sử dụng cho phát triển Agile
Tài nguyên UML
This post is also available in Deutsch, English, Español, فارسی, Français, Bahasa Indonesia, 日本語, Polski, Portuguese, Ру́сский, 简体中文 and 繁體中文.
priligy and viagra Continue to take doxycycline even if you feel well