Use case diagram là gì

      44

Nhìn vào hình ảnh sau đây ắt hẳn các bạn có thể thấy một phần chính mình trong đó. Những thứ ngớ ngẩn ấy tưởng chừng không thể xảy ra nhưng nó vẫn chực chờ xuất hiện trong những hiểu lầm của team dev và khách hàng. Vì thế Usecase Diagram sinh ra để phần nào giải quyết vấn đề ấy.

Bạn đang xem: Use case diagram là gì

*

Trong bài viết này, chúng ta cũng tìm hiểu về Usecase Diagram và sử dụng Star UML để demo thử một vài chức năng của một "Cforum" do mình tạo ra nhé.

Usecase Diagram là gì?

Usecase Diagram được hiểu là sơ đồ tính năng của sản phẩm cung cấp cho người dùng. Bản vẽ này sẽ cho người dùng hiểu được sản phẩm này cung cấp những tính năng gì cho người dùng, hoặc người dùng có thể làm được gì với nó.

Trong đời sống chúng ta có thể nhìn thấy rất nhiều thứ tương tự, có thể đó là bảng điều khiển trong cabin oto, tàu, máy bay, dàn nút máy ATM,.... trong bài viết này mình sẽ ví dụ xoay quanh cái remote điều hòa ảnh dưới nhé.

*

Actor

*

Actor trong UML được thể hiện bởi một stickman. Để chỉ một người nào đó tương tác với phần mềm (lấy ví dụ bạn là người ấn vào các nút trên remote, bạn là một actor).

Actorlà một thực thể yêu cầu phần mềm thực hiện chức năng để giúp hoàn thành công việc của họ.

Một Usecase Diagram có thể có nhiều Actor.

Một người dùng cũng có thể thực hiện được nhiều chức năng của các Actor khác nhau.Thường là danh từ

Lưu ý:Actor không phải là một thành phần của phần mềm.

Usecase

*

Usecase là các chức năng của phần mềm được actor sử dụng (giống như các nút bấm trên remote điều hòa)

Quan hệ

Association

*

Thường dùng để chỉ mối quan hệ giữa Actorvới Use Case hoặc giữa cácUse Casevới nhau.

Generalization

*

Là quan hệ kế thừa, chỉ quan hệ giữa đối tượng con với đối tượng cha (thường dùng cho Actor)

"Con to hơn cha (về khả năng) vì thế con làm đc tất cả cha làm và hơn thế nữa"Ví dụ: Trong trang ttmn.mobi Contributor cũng là một User, có thể làm các việc như đăng nhập, học tập, codewar,... ngoài ra còn có thể đăng bài luyện tập, đăng blog,...

Include

*

Thường dùng giữa các Use Case.Nó mô tả việc một Use Case lớn được chia ra thành các Use Case nhỏ để dễ cài đặt (module hóa) hoặc thể hiện sự dùng lại.

Xem thêm: Cách Chơi Forex La Gì Cách Chơi Forex Hiệu Quả, Hướng Dẫn Chơi Forex Ở Việt Nam

Trong Include, hành động ở đuôi mũi tên (verify captcha)phải được hoàn thành trước khi thực hiện hành động ở đầu mũi tên (login)

Extend

*

Extend dùng để mô tả quan hệ giữa 2 Use Case. Quan hệ Extend được sử dụng khi có một Use Case được tạo ra để bổ sung chức năng cho một Use Case có sẵn và được sử dụng trong một điều kiện nhất định nào đó.

Trong Extend, hành động có thể có hoặc có thể không thực hiện cũng được.

Extension point: dùng để ghi chú khi nào hành động trong quan hệ Extend được thực hiện.

System Boundary

*

Được hiểu đơn giản là đường biên, được sử dụng để xác định phạm vi của thiết kế. Các đối tượng nằm ngoài phạm vi này có tương tác với phần mềm có thể được xem là Actor.

Quay lại ví dụ về cái remote cho dễ hiểu, bạn chỉ có thể bấm vào các nút nằm trong remote thôi. Nếu bạn bấm vào tường rồi yêu cầu điều hòa thực hiện một chức năng thì điều đó thật vô lý.

Ứng dụng

Thiết kế hệ thống.

Làm cơ sở cho việc phát triển, kiểm tra các bản vẽ như Class Diagram, Activity Diagram, Sequence Diagram, Component Diagram.

Làm cơ sở để giao tiếp với khách hàng.

Hỗ trợ việc kiểm thử tính năng, chất lượng,….

Tạm kết

Trong bài viết này, mình chỉ gói gọn nội dung ở phần lý thuyết. Bài viết sau mình sẽ nói về cách vẽ một Use Case Diagram với CForum do mình tự bịa racũng như những lỗi các bạn thường gặp phải nhé.