30/09/2018, 23:35
Hỏi về include và extend trong UML
mình mới học uml, mình không hiểu mối quan hệ include và extend ,bạn nào giải thích với,
Bài liên quan
mình mới học uml, mình không hiểu mối quan hệ include và extend ,bạn nào giải thích với,
Giải thích theo cách của mình, câu hỏi của bạn cũng chưa thực sự rõ ràng:
1. Include (required, mang tính bắt buộc)
Ex:
2. Extend (optional, có cũng được, không có cũng chả sao)
Ex:
Bạn có thể đọc thêm tại đây: http://www.uml-diagrams.org
UML có hàng chục cái diagram mà bạn nói chung chung thế thì sao mà support.
Include và Extends là hai khái niệm cơ bản của UserCase Diagram. Theo đó thì:
Extend được sử dụng khi mà có một Usercase được mở rộng từ một Usercase gốc nào đó. Hay nói cách khác, khi Usercase A được thực hiện khi Usercase B hoàn thành thì Usercase A được gọi là Extend của Usercase B.
Ví dụ:
■ Để đổi được password của diễn đàn, ngầm định là không có nút changepassword ở ngoài màn hình sử dụng:
Login > View profile > Change password
Có nhiều cách viết cho bộ ba Usercase kia:
Cách thứ nhất:
・ View profile Extend Login
・ Change password Extend View profile
Cách thứ hai:
・ Login là precondition của View profile
・ Login là precondition của Change password và Change password Extend View profile
Cách viết thứ ba:
・ Login là Usercase dùng để phân role.
・ View profile là Usercase của những người dùng Inherit nhóm User
・ Change password là Usercase của những người dùng Inherit nhóm User và Change password Extend View profile
Cách viết thứ tư:
・ Change password chẳng Extend thằng nào hết, nó đơn giản là liệt kê tuần tự các bước để thay đổi được password thôi.
=> Cách viết thứ nhất thường thấy trong tài liệu Spec.
Cách viết thứ hai thường thấy trong tài liệu Detail design
Cách viết thứ ba thường thấy trong tại liệu hướng dẫn mô tả chi tiết.
Cách viết thứ tư cho thấy ý nghĩa của Extend.
Include thường được sử dụng để mô tả việc phân nhỏ một Usercase thành nhiều bản sao nhỏ. Một Usercase được vẽ là Include thì không thể được hoàn thành khi các Usercase còn của nó chưa được hoàn thành.
Ví dụ:
■ Login bao gồm 4 Usercase nhỏ là Validate data, Authen data, Create session token và Redirect.
Theo đó ta có:
・ Validate data là Include của Login
・ Authen data là Include của Login
・ Create session token là Include của Login
・ Redirect thì chả là cái gì của Login
Nhờ có Include, ta Work break down đầu việc ra nhỏ hơn, dễ plan hơn, dễ đòi tiền khách hàng hơn blad blad…
cảm ơn bạn, mà minhd có đọc một bài là include là use case này sử dụng lại chức năng của use case kia
hình cái extend bạn nêu ví dụ sai thì phải