WAY TO ENTERPRISE
Lesson 18
Use case Specification
Agenda
I. Đặc tả Use case là gì?
II. Các thành phần có trong Use case Specification III. Ví dụ về đặc tả Use case
IV. Viết đặc tả Use case của 1 chức năng trong bài tập lớn
I. Đặc tả Use case là gì?
Use case Diagram là tổng quan các Requirement theo góc nhìn của người dùng. Tuy nhiên, Use case diagram khá chung chung để các stakeholder có cái nhìn trực quan về những Requirement được mô tả.
=> Use case Specification giúp diễn đạt các Use case một cách chi tiết hơn.
II. Các thành phần trong đặc tả Use case
Summary
• Use Case Name: Tên Use Case
• Use Case ID: Mã Use Case
• Use Case Description: Tóm gọn nhanh sự tương tác được thể hiện trong Use Case là gì.
• Actor: Những đối tượng thực hiện sự tương tác trong Use Case.
• Priority: Mức độ ưu tiên của Use Case so với các Use Case còn lại trong dự án.
• Trigger: Điều kiện kích hoạt Use Case xảy ra.
• Pre-Condition: Điều kiện cần để Use Case thực hiện thành công.
• Post-Condition: Những thứ sẽ xuất hiện sau khi Use Case được thực hiện thành công.
II. Các thành phần trong đặc tả Use case
Flow
• Basic Flow: luồng tương tác CHÍNH giữa các Actor và System để Use Case thực hiện thành công.
• Alternative Flow: luồng tương tác THAY THẾ giữa các Actor và System để Use Case thực hiện thành công.
• Exception Flow: luồng tương tác NGOẠI LỆ giữa các Actor và System mà Use Case thực hiện thất bại.
II. Các thành phần trong đặc tả Use case
Additional Information
• Business Rule: các quy định về mặt Business mà hệ thống bắt buộc phải nghe theo, làm theo.
• Non-Functional Requirement: Vì Use Case chỉ dùng để thể hiện Function Requirement, nên phải bổ sung các yêu cầu về Non-Functional Requirement (nếu có)
III. Ví dụ về đặc tả Use case
Viết Use case Specification của Use case “Đăng nhập”
Use case ID UC-1.1
Use case Name (Tên Use case) Đăng nhập
Description (Tóm gọn nhanh sự tương tác được thể hiện trong Use case là gì) Là người dùng, tôi muốn đăng nhập để sử dụng các chức năng của hệ thống.
Actor(s) (Những đối tượng thực hiện sự tương tác trong Use case) Người dùng hệ thống
III. Ví dụ về đặc tả Use case
Priority (Mức độ ưu tiên của Use case so với các Use case còn lại) Must have
Trigger (Điều kiện kích hoạt Use case xảy ra)
Người dùng muốn đăng nhập để sử dụng chức năng hệ thống
Pre-Condition(s) (Điều kiện cần để Use Case thực hiện thành công) Account của người dùng đã được đăng ký trong hệ thống
Thiết bị của người dùng connect internet thành công
Post-Condition(s) (Những thứ sẽ xuất hiện sau khi Use case thực hiện thành công) Đăng nhập thành công
Di chuyển vào trang phù hợp.
III. Ví dụ về đặc tả Use case
Basic Flow (luồng tương tác chính giữa Actor và System để Use case thực hiện thành công)
1. Người dùng truy cập ứng dụng
2. Người dùng vào chức năng Đăng nhập
3. Người dùng nhập tài khoản Username/ Password và click Đăng nhập
4. Hệ thống kiểm tra thông tin đăng nhập thành công và cho phép người dùng truy cập vào ứng dụng
III. Ví dụ về đặc tả Use case
Alternative Flow (luồng tương tác thay thế giữa các Actor và System để Use case thực hiện thành công)
3a. Người dùng chọn đăng nhập bằng Google account
3a1. Hệ thống chuyển sang màn hình đăng nhập của Google 3a2. Người dùng nhập tài khoản Google và Đăng nhập
4a. Google xác thực thông tin đăng nhập thành công
3b. Người dùng chọn đăng nhập bằng Fb account
III. Ví dụ về đặc tả Use case
Exception Flow (luồng tương tác ngoại lệ giữa Actor và System mà Use case thực hiện thất bại)
4b. Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo lỗi ( trường hợp đang login thì mất mạng)
4b1. Người dùng chọn lệnh hủy đăng nhập hoặc đăng nhập lại Username/Password.
4c. Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo lỗi ( trường hợp nhập thiếu Username hoặc pass)
4c1. Người dùng chọn lệnh hủy đăng nhập hoặc đăng nhập lại Username/Password.
4d. Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo lỗi ( trường
IV. Lợi ích khi làm Use case
Lợi ích khi làm Use case (Cả Diagram và Specification)
• Use Case giúp thể hiện được rõ Requirement theo góc nhìn của người dùng cuối (rất quan trọng, vì nó giúp mình hiểu rõ bản chất vấn đề hơn).
• Theo đó, những gì được thể hiện trong Use Case rất tự nhiên, ai đọc vô cũng có thể hiểu.
• Use Case có thể chia nhỏ phạm vi theo nhiều phân hệ, hoặc cụm tính năng. Và nó cũng có thể nhìn dưới góc độ high-level. Do đó, dễ hơn cho mình rất nhiều để cover đủ các yêu cầu trong một dự án lớn.
IV. Lợi ích khi làm Use case
Lợi ích khi làm Use case (Cả Diagram và Specification)
• Use Case là bước đệm tuyệt vời giữa việc mô tả tổng quát và mô tả chi tiết sự tương tác thông qua Sequence Diagram.
• Use Case còn được dùng để tạo các Test Case sau này.
V. Viết đặc tả Use case bài tập lớn
Bài 1: Use Case Specification của chức năng Thêm mới học viên Bài 2: Use Case Specification của chức năng Connect SNS