# 用戶流程規格文件 (User Flow Specification) - 功能導向

## 文件概述

本文件以**功能為導向**，系統性定義 Drama Ling 英語學習應用的完整用戶流程。基於 `system_structure_design.json` 中定義的 19 個功能特性，確保每個功能都有完整且可追溯的用戶體驗路徑。

## 功能架構總覽

- **用戶認證與引導系統 (MD_ENT)**: 基礎用戶管理功能
- **核心學習功能 (MD_CORE)**: 9個核心學習特性 
- **學習任務與活動 (MD_TASK)**: 6個任務和活動特性
- **商業模式功能 (MD_BIZ)**: 7個商業功能特性 (含3個跨模組功能)

---

## 🎯 核心學習功能 (MD_CORE)

### 1. 多場景劇本對話 (FT_ScenarioDialogue)

**功能描述**: 用戶選擇車禍、購物、餐廳等真實場景進行對話練習
**目標**: 提升實際溝通情境下的對話能力

#### 用戶流程
```mermaid
graph TD
    A[UI_Level_Map] --> B[選擇場景關卡]
    B --> C[UI_Dialogue_Main]
    C --> D[開始情境對話]
    D --> E[AI回應與分析]
    E --> F[UI_Task_Display]
    F --> G[查看任務結果]
    G --> H{繼續練習?}
    H -->|是| C
    H -->|否| A
```

#### UI 組件流程
- **入口**: UI_Level_Map
- **主要**: UI_Dialogue_Main  
- **結果**: UI_Task_Display

#### 相關資料
- Lesson, Dialogue, UserProfile

---

### 2. 任務導向對話訓練 (FT_TaskDialogue)

**功能描述**: 用戶完成指定任務如安撫、報警、說明等對話目標
**目標**: 訓練目標導向的溝通技能

#### 用戶流程
```mermaid
graph TD
    A[UI_Level_Selection_Modal] --> B[選擇任務類型]
    B --> C[UI_Dialogue_Main]
    C --> D[執行任務對話]
    D --> E[UI_Dialogue_Analysis]
    E --> F[分析任務完成度]
    F --> G{任務完成?}
    G -->|是| H[獲得獎勵]
    G -->|否| I[提供改進建議]
    H --> J[返回任務選擇]
    I --> C
```

#### UI 組件流程
- **入口**: UI_Level_Selection_Modal
- **主要**: UI_Dialogue_Main
- **分析**: UI_Dialogue_Analysis

#### 相關資料
- Task, TaskReward, Dialogue

---

### 3. 指定詞彙練習 (FT_VocabularyPractice)

**功能描述**: 用戶在對話中練習指定詞彙的使用
**目標**: 強化特定詞彙的實際應用能力

#### 用戶流程
```mermaid
graph TD
    A[UI_Vocab_Introduction] --> B[介紹目標詞彙]
    B --> C[UI_Vocab_Choice_Practice]
    C --> D[詞彙選擇練習]
    D --> E[對話中使用詞彙]
    E --> F[UI_Vocab_Review_Main]
    F --> G[複習和鞏固]
    G --> H{掌握程度}
    H -->|掌握| I[進入下個詞彙]
    H -->|需加強| C
```

#### UI 組件流程
- **介紹**: UI_Vocab_Introduction
- **練習**: UI_Vocab_Choice_Practice
- **複習**: UI_Vocab_Review_Main

#### 相關資料
- Lesson, Dialogue

---

### 4. 限時對話挑戰 (FT_TimedChallenge)

**功能描述**: 用戶在限定時間內完成對話任務
**目標**: 提升反應速度和流暢度

#### 用戶流程
```mermaid
graph TD
    A[UI_Level_Map] --> B[選擇挑戰模式]
    B --> C[UI_Dialogue_Main]
    C --> D[開始倒數計時]
    D --> E[快速對話回應]
    E --> F{時間剩餘?}
    F -->|是| E
    F -->|否| G[UI_Result_Success_A]
    G --> H[查看成績和排名]
    H --> I[更新排行榜]
```

#### UI 組件流程
- **入口**: UI_Level_Map
- **主要**: UI_Dialogue_Main
- **結果**: UI_Result_Success_A

#### 相關資料
- Task, TaskReward, Leaderboard

---

### 5. AI即時分析回饋 (FT_AIFeedback)

**功能描述**: 對用戶對話提供即時的AI分析和改善建議
**目標**: 實時提升對話品質

#### 用戶流程
```mermaid
graph TD
    A[對話輸入完成] --> B[AI即時分析]
    B --> C[UI_Dialogue_Analysis]
    C --> D[顯示分析結果]
    D --> E[UI_Correction_Grammar]
    E --> F[提供改善建議]
    F --> G{接受建議?}
    G -->|是| H[應用修正]
    G -->|否| I[繼續原回應]
```

#### UI 組件流程
- **分析**: UI_Dialogue_Analysis
- **訂正**: UI_Correction_Grammar

#### 分析維度
- **語法準確度**: Grammar Score
- **詞彙選擇**: Vocabulary Usage
- **語調適切性**: Tone Assessment
- **表達流暢度**: Fluency Rating

---

### 6. 三維度評分系統 (FT_ScoreSystem)

**功能描述**: 從語法、詞彙、流暢度三個維度評估對話表現
**目標**: 提供全面的學習成效評估

#### 用戶流程
```mermaid
graph TD
    A[對話完成] --> B[系統評分計算]
    B --> C[UI_Result_Score_Summary_A]
    C --> D[顯示三維度分數]
    D --> E[UI_Result_Dialogue_Analysis]
    E --> F[詳細分析報告]
    F --> G[學習建議]
```

#### UI 組件流程
- **總結**: UI_Result_Score_Summary_A
- **詳細**: UI_Result_Dialogue_Analysis

#### 評分維度
- **語法準確度 (Grammar)**: 0-100分
- **詞彙豐富度 (Vocabulary)**: 0-100分  
- **表達流暢度 (Fluency)**: 0-100分

---

### 7. 對話訂正功能 (FT_DialogueCorrection)

**功能描述**: 用戶可以修正和改善自己的對話內容
**目標**: 通過自主訂正強化學習效果

#### 用戶流程
- **觸發**: 對話完成後
- **功能**: 查看原文、建議修正、重新練習
- **學習**: 比較原文與修正版本的差異

---

### 8. 命條生命系統 (FT_LifeSystem)

**功能描述**: 遊戲化的生命值系統，錯誤會消耗生命值
**目標**: 增加學習的挑戰性和參與度

#### 系統機制
- **初始生命值**: 5條命
- **消耗條件**: 嚴重語法錯誤、任務失敗
- **恢復方式**: 時間恢復、使用道具、觀看廣告

---

### 9. 回覆輔助系統 (FT_ReplyAssistance)

**功能描述**: 為用戶提供對話回覆的輔助和提示
**目標**: 降低學習門檻，提升學習信心

#### 輔助類型
- **詞彙提示**: 關鍵詞建議
- **句型範本**: 常用句型參考
- **語境提醒**: 情境適用性提示

---

## 📋 學習任務與活動 (MD_TASK)

### 10. 排行榜競爭 (FT_Leaderboard)

**功能描述**: 用戶可以查看和比較學習成績排名
**目標**: 激發競爭意識和持續學習動機

#### 排行榜類型
- **每日排行**: 當日活躍度和成績
- **週排行**: 週學習進度
- **總排行**: 累計學習成就

---

### 11. 成就系統 (FT_Achievement)

**功能描述**: 設定各種學習里程碑和成就徽章
**目標**: 提供成就感和學習目標

#### 成就分類
- **學習成就**: 完成課程、練習次數
- **技能成就**: 語法精通、詞彙掌握
- **社交成就**: 朋友互動、分享成績

---

### 12. 每日複習清單 (FT_DailyReview)

**功能描述**: 根據學習進度生成個人化每日複習任務
**目標**: 確保學習內容的鞏固和長期記憶

#### 複習機制
- **智能推薦**: 基於遺忘曲線
- **個人化**: 根據弱項調整
- **進度追蹤**: 完成率和掌握度

---

### 13. 間隔複習演算法 (FT_SpacedRepetition)

**功能描述**: 使用科學的間隔複習算法安排學習內容
**目標**: 優化記憶保持和學習效率

#### 演算法特點
- **遺忘曲線**: 基於艾賓浩斯遺忘曲線
- **難度調整**: 根據掌握程度調整間隔
- **動態排程**: 智能安排複習時機

---

### 14. 300秒限時挑戰系統 (FT_TimedChallenge300)

**功能描述**: 5分鐘快速挑戰模式，測試學習成果
**目標**: 提供快節奏的學習驗證和樂趣

#### 挑戰模式
- **快速問答**: 詞彙、語法快速測試
- **對話搶答**: 限時對話回應
- **排行競爭**: 實時排名更新

---

### 15. 時光卷系統 (FT_TimeWarpCard)

**功能描述**: 道具系統，可以重置學習進度或跳過等待時間
**目標**: 提供靈活的學習節奏控制

#### 道具功能
- **時光倒流**: 重置失敗的挑戰
- **時光加速**: 跳過冷卻時間
- **時光保存**: 儲存當前學習狀態

---

## 💰 商業模式功能 (MD_BIZ)

### 16. 鑽石購買系統 (FT_DiamondPurchase)

**功能描述**: 應用內虛擬貨幣購買系統
**目標**: 提供應用的主要收入來源

#### 購買流程
- **鑽石包**: 不同價格的鑽石組合
- **支付方式**: 整合第三方支付
- **購買記錄**: 交易歷史和收據

---

### 17. 道具商店系統 (FT_ItemShop)

**功能描述**: 用戶使用鑽石購買各種學習道具和輔助工具
**目標**: 提供個性化學習體驗和鑽石消費途徑

#### 道具分類
- **學習道具**: 提示卡、跳過卡
- **生命道具**: 生命值恢復、保護罩
- **時間道具**: 時光卷、加速卡

---

### 18. 簡化訂閱系統 (FT_SimplifiedSubscription)

**功能描述**: 簡化的月費/年費訂閱服務
**目標**: 提供穩定的訂閱收入和VIP體驗

#### 訂閱特權
- **無限生命**: 不受生命值限制
- **VIP內容**: 專屬課程和挑戰
- **優先支援**: 客服優先回應

---

### 19. 獎勵廣告系統 (FT_RewardAds)

**功能描述**: 觀看廣告獲得遊戲內獎勵
**目標**: 提供免費用戶的增值體驗和廣告收入

#### 獎勵類型
- **鑽石獎勵**: 觀看廣告獲得鑽石
- **生命恢復**: 廣告換取生命值
- **道具獎勵**: 免費獲得限時道具

---

## 🔗 跨功能整合流程

### 新用戶完整體驗路徑
1. **註冊引導** → **等級評估** → **首次對話練習**
2. **功能介紹** → **購買引導** → **日常學習循環**

### 日常學習循環
1. **每日複習** → **主要學習** → **限時挑戰** → **成就檢查**

### 付費轉換路徑
1. **免費體驗** → **功能限制** → **購買引導** → **付費體驗**

---

## 📊 功能完整性檢查清單

### 核心學習功能 (9/9)
- [x] 多場景劇本對話
- [x] 任務導向對話訓練  
- [x] 指定詞彙練習
- [x] 限時對話挑戰
- [x] AI即時分析回饋
- [x] 三維度評分系統
- [x] 對話訂正功能
- [x] 命條生命系統
- [x] 回覆輔助系統

### 學習任務與活動 (6/6)
- [x] 排行榜競爭
- [x] 成就系統
- [x] 每日複習清單
- [x] 間隔複習演算法
- [x] 300秒限時挑戰系統
- [x] 時光卷系統

### 商業模式功能 (7/7)
- [x] 鑽石購買系統
- [x] 道具商店系統
- [x] 300秒限時挑戰系統 (跨模組: MD_TASK,MD_BIZ)
- [x] 命條生命系統 (跨模組: MD_CORE,MD_BIZ)
- [x] 回覆輔助系統 (跨模組: MD_CORE,MD_BIZ)
- [x] 簡化訂閱系統
- [x] 獎勵廣告系統

**總計**: 19/19 功能已文檔化

---

## 🔄 維護說明

### 新增功能流程
1. 在 `system_structure_design.json` 中定義功能
2. 在本文檔中添加對應的 user flow
3. 確保 UI 組件和資料綁定的完整性
4. 更新功能完整性檢查清單

### 修改現有功能
1. 同步更新 system design 和 user flow
2. 檢查相關功能的影響
3. 驗證 UI 流程的一致性

---

**最後更新**: 2025-09-08  
**文檔版本**: 2.0 (功能導向重構版)  
**維護者**: Drama Ling 開發團隊