Professional Documents
Culture Documents
01 UseCaseDiagram Slides 2015
01 UseCaseDiagram Slides 2015
© BIG / TU Wien 3
Introduction
© BIG / TU Wien 3
Example: Student Administration System
System
(what is being described?)
Student administration system <Hệ thống quản lý sinh viên>
Use cases
(what can the actors do?)
Query student data <Truy vấn dữ liệu sinh viên>
Issue certificate <Cấp giấy chứng nhận>
Announce exam <Thông báo kỳ thi>
© BIG / TU Wien 4
Use Case
© BIG / TU Wien 5
Actor (1/3)
6
Actor (2/3)
Thông thường dữ liệu người dùng cũng được quản lý trong hệ thống.
Dữ liệu này được mô hình hóa trong hệ thống dưới dạng các đối tượng
và lớp
Ví dụ: Tác nhân Assistant
Tác nhân Trợ lý (Assistant) tương tác với Laboratory Assignment
(phân công Phòng thí nghiệm) của hệ thống bằng cách sử dụng
nó.
Lớp Assistant mô tả các đối tượng đại diện cho dữ liệu người dùng
(Tên,…)
© BIG / TU Wien 7
Actor (3/3)
Human
E.g., Student, Professor
Non-human
E.g., E-Mail Server
Primary: có lợi ích chính của việc thực hiện trường hợp sử dụng
Secondary: không nhận được lợi ích trực tiếp
Active: Tham gia trực tiếp thực hiện ca sử dụng
Passive: Cung cấp chức năng cho ca sử dụng được thực hiện
Ví dụ:
Human Human
Primary Primary
Active Active
Non- Human
human Secondary
Secondary Active
Passive 8
Mối quan hệ giữa Ca sử dụng và Tác nhân
Các tác nhân được kết nối với các ca sử dụng thông qua các đường
liền nét (liên kết).
Mỗi tác nhân phải giao tiếp với ít nhất một ca sử dụng.
8
9
Mối quan hệ giữa Ca sử dụng và Tác nhân
Hành vi của một trường hợp sử dụng B (included use case) được tích
hợp trong hành vi của trường hợp sử dụng khác A (base use case)
Base use case: Ca sử dụng cơ sở
Ví dụ
© BIG / TU Wien 10
Mối quan hệ giữa Ca sử dụng và Tác nhân
Hành vi của một trường hợp sử dụng (Extending use case) có thể được
tích hợp trong hành vi của một trường hợp sử dụng khác (Base use
case)
Cả hai trường hợp sử dụng cũng có thể được thực hiện độc lập với
nhau. Base use case
© BIG / TU Wien 11
Mối quan hệ giữa Ca sử dụng và Tác nhân
Extension points (các điểm mở rộng) có thể được viết trực tiếp trong
casử dụng.
Ví dụ :
© BIG / TU Wien 12
Mối quan hệ giữa Ca sử dụng và Tác nhân
Generalization of Use Cases: Khái quát hóa các ca sử dụng
© BIG / TU Wien 13
Mối quan hệ giữa các Tác nhân
Generalization of Actors: Khái quát hóa các tác nhân
Tác nhân A kế thừa từ tác nhân B.
Super-
A có thể giao tiếp với cả hai ca sử dụng X and Y.
actor
B chỉ có thể giao tiếp với ca sử dụng Y. Sub-actor
Cho phép sử dụng nhiều kế thừa
Tác nhân trừu tượng là có thể (Abstract)
Ví dụ :
© BIG / TU Wien
14
Description of Use Cases: Mô tả các ca sử dụng
© BIG / TU Wien 15
Description of Use Cases - Example
Name: Khu giảng đường
Short description: Một nhân viên đặt một giảng đường tại trường đại học cho một sự kiện.
Precondition: Nhân viên được phép đặt trước giảng đường.
Postcondition: Một giảng đường được đặt trước.
Error situations: Không có giảng đường miễn phí.
System state in the event of an error: Nhân viên chưa đặt chỗ giảng đường.
Actors: Nhân viên
Trigger: Nhân viên yêu cầu một giảng đường.
Standard process:
(1) Nhân viên đăng nhập vào hệ thống.
(2) Nhân viên chọn giảng đường.
(3) Nhân viên chọn ngày.
(4) Hệ thống xác nhận giảng đường trống.
(5) Nhân viên xác nhận đặt chỗ.
Alternative processes:
(4’) Giảng đường không miễn phí.
(5’) Hệ thống đề xuất một giảng đường thay thế.
(6’) Nhân viên chọn giảng đường thay thế và xác nhận đặt chỗ.
© BIG / TU Wien 16
Best Practices
«include»
© BIG / TU Wien 17
Best Practices
Identifying Actors: Xác định các tác nhân
Who uses the main use cases? : Ai quan tâm đến các các ca sử dụng chính?
Who needs support for their daily work? : Ai cần hỗ trợ cho công việc hàng
ngày của họ?
Who is responsible for system administration? : Ai chịu trách nhiệm quản trị
hệ thống?
What are the external devices/(software) systems with which the system must
communicate? : Hệ thống thiết bị/(phần mềm) bên ngoài mà hệ thống phải
giao tiếp là gì?
Who is interested in the results of the system? : Ai quan tâm đến kết quả của
hệ thống?
© BIG / TU Wien 19
Best Practices
Identifying Use Cases: Xác định các ca sử dụng
Các nhiệm vụ chính mà một tác nhân phải thực hiện là gì?
Tác nhân có muốn truy vấn hoặc thậm chí sửa đổi thông tin có trong hệ
thống không?
Một tác nhân có muốn thông báo cho hệ thống về những thay đổi trong
các hệ thống khác không?
Một tác nhân có nên được thông báo về các sự kiện bất ngờ trong hệ
thống không?
© BIG / TU Wien 20
Best Practices
Typical Errors To Avoid (1/5)
Các tác nhân không phải là một phần của hệ thống, do đó, chúng được đặt
bên ngoài ranh giới hệ thống!
© BIG / TU Wien 21
Best Practices
Typical Errors To Avoid (3/5)
Nhiều ca sử dụng nhỏ có cùng mục tiêu có thể được nhóm lại để tạo thành một
ca sử dụng lớn hơn
© BIG / TU Wien
23
Best Practices
Typical Errors To Avoid (5/5)
Các bước khác nhau là một phần trong các ca sử dụng, không phải là
các trường hợp sử dụng riêng biệt. Do đó KHÔNG phân rã chức năng
© BIG / TU Wien 25
Ký hiệu (1/2)
© BIG / TU Wien 40
Ký hiệu (2/2)
© BIG / TU Wien 41