# Tác Vụ Tạo Story Tiếp Theo

## Mục đích
Tạo một development story chi tiết, có thể hành động từ yêu cầu nghiệp vụ hoặc đặc tả kỹ thuật, tuân theo BMAD-METHOD và cung cấp đầy đủ ngữ cảnh cho phát triển do AI thực thi.

## Khi nào dùng tác vụ này
**Dùng khi:**
- Chuyển yêu cầu nghiệp vụ thành story có thể triển khai
- Chia nhỏ kiến trúc kỹ thuật thành tác vụ phát triển
- Tạo story sẽ được AI developer triển khai
- Cần tài liệu story đầy đủ ngữ cảnh nghiệp vụ và kỹ thuật
- Tuân theo mẫu tạo story của BMAD-METHOD

## Điều kiện tiên quyết
**Đầu vào bắt buộc:**
- Yêu cầu nghiệp vụ hoặc đặc tả chức năng
- Kiến trúc/thiết kế kỹ thuật (nếu có)
- Persona người dùng và ngữ cảnh quy trình
- Tiêu chí chấp nhận và chỉ số thành công

**Ngữ cảnh tùy chọn:**
- Tài liệu hệ thống hiện hữu (brownfield)
- Yêu cầu tích hợp và ràng buộc
- Yêu cầu hiệu suất, mở rộng
- Yêu cầu bảo mật và tuân thủ

## Hướng dẫn

### 1. Nền tảng Story
**Metadata**
- **Story ID**: Mã duy nhất (ví dụ: ODO-001)
- **Epic**: Tham chiếu epic (nếu có)
- **Priority**: High/Medium/Low theo giá trị nghiệp vụ
- **Effort**: Story points hoặc ước tính giờ
- **Target Sprint**: Sprint dự kiến

**Câu story người dùng**
```
As a [persona],
I want [khả năng],
So that [giá trị nghiệp vụ].
```

### 2. Ngữ cảnh Story (CỰC KỲ QUAN TRỌNG)
**Ngữ cảnh nghiệp vụ**
- Bối cảnh & lý do tồn tại
- Hiện trạng thực hiện
- Trạng thái mong muốn
- Quy tắc nghiệp vụ
- Chỉ số thành công

**Ngữ cảnh kỹ thuật**
- Tích hợp hệ thống liên quan
- Tech stack liên quan
- Căn chỉnh kiến trúc/pattern
- Yêu cầu dữ liệu (DB, flow, tích hợp)
- Yêu cầu hiệu suất (tốc độ, mở rộng)

### 3. Tiêu chí chấp nhận chi tiết
**Chức năng (Given/When/Then)**
```
GIVEN [bối cảnh]
WHEN [hành động]
THEN [kết quả kỳ vọng]
AND [hành vi bổ sung nếu có]
```

**Phi chức năng**
- Hiệu suất (thời gian đáp ứng, throughput)
- Bảo mật (authn, authz, bảo vệ dữ liệu)
- Usability/Accessibility
- Tương thích (trình duyệt/thiết bị/phiên bản)

**Tích hợp**
- Hợp đồng API, định dạng dữ liệu
- Dependencies hệ thống ngoài
- Xử lý lỗi và edge cases
- Validation dữ liệu và quy tắc nghiệp vụ

### 4. Hướng dẫn triển khai
**Cách tiếp cận kỹ thuật**
- Kiến trúc khuyến nghị
- Thành phần chính cần tạo/sửa
- Điểm tích hợp (API/DB/service)
- Design patterns cần tuân thủ

**Breakdown tác vụ**
1) DB/Models  
   - [ ] Schema/model/quan hệ  
   - [ ] Validation/constraints  
2) Business Logic  
   - [ ] Logic cốt lõi & rule  
   - [ ] Edge cases & lỗi  
3) UI/UX  
   - [ ] View/interaction/workflow  
   - [ ] Responsive & accessibility  
4) Integration  
   - [ ] Endpoint/kết nối  
   - [ ] Transform/validation/auth  
5) Testing  
   - [ ] Unit tests  
   - [ ] Integration/UAT scenarios  

### 5. Quality Assurance
**Chiến lược kiểm thử**
- Unit: logic & component
- Integration: flow & data
- UAT: kịch bản nghiệp vụ
- Performance: thời gian/nguồn lực

**Checklist xác nhận**
- [ ] Yêu cầu chức năng đạt
- [ ] Phi chức năng đạt
- [ ] Tích hợp hoạt động đúng
- [ ] Xử lý lỗi đầy đủ
- [ ] Bảo mật đáp ứng
- [ ] Hiệu suất đạt yêu cầu
- [ ] UX được kiểm tra
- [ ] Tài liệu được cập nhật

### 6. Definition of Done
**Dev**
- [ ] Hoàn tất tiêu chí chấp nhận
- [ ] Chuẩn code/pattern tuân thủ
- [ ] Unit/Integration tests pass
- [ ] Code review approved

**QA**
- [ ] UAT pass
- [ ] Hiệu suất & bảo mật đạt
- [ ] Xử lý lỗi đã kiểm tra
- [ ] Tương thích đa trình duyệt/thiết bị

**Tài liệu & Triển khai**
- [ ] Cập nhật tech/user docs
- [ ] Quy trình deploy & rollback rõ ràng
- [ ] Sẵn sàng deploy

### 7. Rủi ro & Giảm thiểu
- Complexity / Integration / Performance / Compatibility
- Nêu rõ rủi ro → cách giảm thiểu → fallback

### 8. Thẩm định Story
**Độ đầy đủ**
- [ ] Ngữ cảnh đủ cho dev độc lập
- [ ] Dependencies/tích hợp đã nêu
- [ ] Tiêu chí chấp nhận rõ, testable
- [ ] Hướng dẫn kỹ thuật khả thi

**Khả thi & Giá trị**
- [ ] Đủ nguồn lực & thời gian
- [ ] Cách tiếp cận kỹ thuật vững
- [ ] Giá trị nghiệp vụ rõ, ưu tiên hợp lý
- [ ] Đã có phê duyệt stakeholder

## Template đầu ra
```yaml
story_id: [STORY-ID]
title: "[Story Title]"
epic: "[Epic Reference]"
priority: "[High/Medium/Low]"
effort_estimate: "[Story Points/Hours]"
target_sprint: "[Sprint]"

user_story: |
  As a [user],
  I want [capability],
  So that [business value].

business_context: |
  [Bối cảnh nghiệp vụ]

technical_context: |
  [Kiến trúc, tích hợp, dữ liệu, hiệu suất]

acceptance_criteria:
  functional:
    - criteria: |
        GIVEN [context]
        WHEN [action]
        THEN [expected result]
  non_functional:
    - performance: "[Perf requirements]"
    - security: "[Security requirements]"
    - usability: "[Usability requirements]"

implementation_guidance:
  approach: "[Technical approach]"
  components: "[Key components]"
  patterns: "[Design patterns]"

tasks:
  - category: "Database/Models"
    items:
      - task: "[DB task]"
        completed: false
  - category: "Business Logic"
    items:
      - task: "[Logic task]"
        completed: false

testing_strategy:
  unit_tests: "[Unit testing requirements]"
  integration_tests: "[Integration testing requirements]"
  acceptance_tests: "[UAT scenarios]"

definition_of_done:
  - "[Completion criterion 1]"
  - "[Completion criterion 2]"

risks:
  - risk: "[Risk description]"
    mitigation: "[Mitigation strategy]"

dependencies:
  - dependency: "[Dependency]"
    status: "[Status/Timeline]"
```

## Tiêu chí thành công
1. Ngữ cảnh đầy đủ cho AI dev độc lập  
2. Tiêu chí chấp nhận cụ thể, đo kiểm được  
3. Hướng dẫn kỹ thuật rõ, không mơ hồ  
4. Giá trị nghiệp vụ được nêu rõ và ưu tiên đúng  
5. Khả thi trong effort ước tính với nguồn lực sẵn có  
6. QA cover đầy đủ, giảm rủi ro lỗi  
7. Rủi ro được nhận diện và có phương án giảm thiểu

## Lưu ý quan trọng
- **Ngữ cảnh là tối quan trọng**: tránh phải tra cứu ngoài  
- **Cụ thể hóa**: tránh mô tả mơ hồ  
- **Giá trị nghiệp vụ trước**: mọi story phải đo được giá trị  
- **Khả thi kỹ thuật**: trong giới hạn thời gian/nguồn lực  
- **Chất lượng ngay từ đầu**: gắn QA vào story  
- **Chủ động rủi ro**: luôn có phương án giảm thiểu

Nhớ rằng: Story được soạn tốt sẽ loại bỏ nhu cầu nghiên cứu bổ sung và cung cấp đủ mọi thứ để AI phát triển thành công.