Skip to content

ĐẶC TẢ CÁC USE CASE - SPRINT MANAGEMENT (AGILE)

Tài liệu này mô tả các use case thuộc nhóm Quản lý Sprint (Sprint Management). TaskPilot hỗ trợ quản lý Agile/Scrum với các Sprint, cho phép tổ chức task theo chu kỳ phát triển.


UC_SPRINT_01: View Sprint List (Xem danh sách Sprint)

Mô tả

Thành viên dự án xem danh sách tất cả Sprint trong dự án. Mỗi Sprint hiển thị: name, status (PLANNING/ACTIVE/COMPLETED), goal, start/end date.

Tác nhân: pm, mem

Điều kiện tiên quyết: Đăng nhập, là thành viên dự án (JWT + membership check)

Điều kiện hậu: Hiển thị danh sách sprint

Luồng sự kiện chính

BướcUserHệ thống
1Truy cập Sprint page
2Extract user_id từ JWT, kiểm tra membership
3Query sprints theo project_id
4Hiển thị danh sách: name, status, goal, dates

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden


UC_SPRINT_02: View Sprint Details (Xem chi tiết Sprint)

Mô tả

Xem chi tiết Sprint bao gồm: name, goal, status, heuristic_mode (ghi đè project), start/end date, và danh sách task thuộc sprint.

Tác nhân: pm, mem

Điều kiện tiên quyết: Đăng nhập, là thành viên dự án

Điều kiện hậu: Hiển thị chi tiết sprint

Luồng sự kiện chính

BướcUserHệ thống
1Click vào sprint
2JWT + membership check
3Query sprint detail
4Hiển thị: name, goal, status, heuristic_mode, dates, tasks

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden 3a. Sprint không tồn tại: → 404 Not found


UC_SPRINT_03: Create New Sprint (Tạo Sprint mới)

Mô tả

Thành viên tạo Sprint mới trong dự án. Sprint được tạo với status mặc định là PLANNING. Có thể đặt heuristic_mode riêng để ghi đè chế độ của project.

Tác nhân: pm, mem

Điều kiện tiên quyết: Đăng nhập, là thành viên dự án, project status = ACTIVE

Điều kiện hậu: Tạo bản ghi sprints mới (status = PLANNING)

Luồng sự kiện chính

BướcUserHệ thống
1Click "Create Sprint"
2JWT + membership check
3Hiển thị form: Name (*), Goal, Start/End Date, Heuristic Mode
4Nhập thông tin và click "Create"
5Validate dữ liệu
6Insert sprint (status = PLANNING)
7Redirect về sprint list

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden 5a. Dữ liệu không hợp lệ: → Hiển thị lỗi

Ràng buộc

  • status mặc định: 'PLANNING'
  • heuristic_mode: Tùy chọn, ghi đè project setting

UC_SPRINT_04: Update Sprint Information (Cập nhật Sprint)

Mô tả

Thành viên cập nhật thông tin Sprint: name, goal, dates, heuristic_mode.

Tác nhân: pm, mem

Điều kiện tiên quyết: Đăng nhập, là thành viên, sprint tồn tại

Điều kiện hậu: Cập nhật bản ghi sprints

Luồng sự kiện chính

BướcUserHệ thống
1Click "Edit Sprint"
2JWT + membership check
3Hiển thị form edit
4Chỉnh sửa và click "Save"
5Validate + cập nhật
6Hiển thị thành công

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden


UC_SPRINT_05: Start / Complete Sprint (Bắt đầu / Hoàn thành Sprint)

Mô tả

Chuyển trạng thái Sprint: PLANNING → ACTIVE (Start) hoặc ACTIVE → COMPLETED (Complete). Chỉ cho phép chuyển trạng thái hợp lệ.

Tác nhân: pm, mem

Điều kiện tiên quyết: JWT + membership, sprint status valid cho transition

Điều kiện hậu: Cập nhật status sprint

Luồng sự kiện chính

BướcUserHệ thống
1Click "Start" hoặc "Complete"
2JWT + membership check
3Kiểm tra current status hợp lệ cho transition
4Cập nhật status
5Hiển thị status badge mới

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden 3a. Transition không hợp lệ: → Hiển thị lỗi "Invalid status transition"


UC_SPRINT_06: Delete Sprint (Xóa Sprint)

Mô tả

Xóa Sprint khỏi dự án. Các task thuộc sprint bị xóa sẽ được chuyển về backlog (sprint_id = NULL theo constraint SET NULL).

Tác nhân: pm, mem

Điều kiện tiên quyết: JWT + membership, sprint tồn tại

Điều kiện hậu: Xóa sprint, các task liên quan chuyển về backlog

Luồng sự kiện chính

BướcUserHệ thống
1Click "Delete" trên sprint
2JWT + membership check
3Hiển thị xác nhận: "Xóa sprint? Task sẽ chuyển về backlog."
4Click "Confirm"
5Chuyển task về backlog (sprint_id = NULL)
6Xóa sprint
7Hiển thị thành công

Luồng phụ

2a. Không phải thành viên: → 403 Forbidden


Tổng kết

Use CaseTênRelated Table
UC_SPRINT_01View Sprint Listsprints
UC_SPRINT_02View Sprint Detailssprints
UC_SPRINT_03Create New Sprintsprints
UC_SPRINT_04Update Sprint Informationsprints
UC_SPRINT_05Start / Complete Sprintsprints
UC_SPRINT_06Delete Sprintsprints, tasks