dramaling-vocab-learning/00_starter/old/mvp-roadmap.md

5.5 KiB

LinguaForge MVP 開發路線圖

階段 0: 專案初始化 (第 1 週)

開發環境設置

  • 建立 Git repository 與分支策略
  • 設置開發環境 (Node.js, PostgreSQL, Redis)
  • 初始化 React Native 專案
  • 初始化 NestJS 後端專案
  • 設置 Docker 開發環境
  • 配置 ESLint, Prettier
  • 設置 CI/CD pipeline (GitHub Actions)

基礎架構

  • 設置 PostgreSQL 資料庫
  • 設置 Redis 快取
  • 配置 AWS S3 或 MinIO
  • 設置開發/測試環境變數

階段 1: 核心基礎建設 (第 2-3 週)

後端基礎

  • 實作使用者認證系統 (JWT)
  • 實作使用者註冊/登入 API
  • 實作 Refresh Token 機制
  • 設置 API 錯誤處理中間件
  • 實作請求驗證與資料驗證
  • 設置日誌系統

前端基礎

  • 實作導航架構 (React Navigation)
  • 建立認證流程 UI
  • 實作本地狀態管理 (Redux Toolkit)
  • 設置 API 客戶端與攔截器
  • 實作基礎 UI 元件庫

資料庫

  • 執行資料庫遷移腳本
  • 建立基礎資料表
  • 設置資料庫連線池

階段 2: MVP 核心功能 (第 4-6 週)

功能 1: AI 詞卡生成

優先級: P0

  • 整合 Gemini API
  • 實作詞卡生成 API 端點
  • 實作句子輸入與單字選取 UI
  • 實作詞卡生成請求與顯示
  • 實作詞卡儲存功能
  • 加入生成進度指示器

功能 2: 詞卡管理

優先級: P0

  • 實作詞卡 CRUD API
  • 建立詞卡列表頁面
  • 實作詞卡詳細頁面
  • 實作詞卡搜尋功能
  • 實作詞卡分類/標籤

功能 3: 間隔重複系統

優先級: P0

  • 實作 SM-2 演算法
  • 建立複習排程系統
  • 實作今日複習 API
  • 建立複習介面 UI
  • 實作複習評分功能
  • 更新下次複習時間

階段 3: 進階功能 (第 7-9 週)

功能 4: 語音評估

優先級: P1

  • 整合 Microsoft Speech Service
  • 實作語音錄製功能
  • 實作語音上傳 API
  • 實作評估結果顯示
  • 儲存評估歷史記錄

功能 5: 學習統計

優先級: P1

  • 實作統計資料 API
  • 建立統計儀表板
  • 實作學習連續天數
  • 實作進度圖表
  • 加入成就系統

功能 6: 離線支援

優先級: P2

  • 實作本地資料庫 (SQLite)
  • 實作資料同步機制
  • 實作離線詞卡瀏覽
  • 實作離線複習功能
  • 處理同步衝突

階段 4: 使用者體驗優化 (第 10-11 週)

UI/UX 改進

  • 實作深色模式
  • 優化載入動畫
  • 加入手勢操作
  • 實作鍵盤快捷鍵
  • 優化表單體驗

效能優化

  • 實作圖片懶載入
  • 優化 API 請求批量處理
  • 實作資料分頁
  • 加入快取策略
  • 優化打包大小

推播通知

  • 整合 FCM
  • 實作複習提醒
  • 實作學習報告推播
  • 管理通知偏好設定

階段 5: 測試與部署 (第 12 週)

測試

  • 撰寫單元測試 (>70% 覆蓋率)
  • 撰寫整合測試
  • 執行端對端測試
  • 效能測試與壓力測試
  • 安全性測試

部署準備

  • 設置生產環境
  • 配置 SSL 憑證
  • 設置監控系統 (Sentry)
  • 設置日誌收集
  • 準備部署文檔

發布

  • 提交 App Store
  • 提交 Google Play
  • 部署後端服務
  • 執行煙霧測試
  • 監控系統穩定性

MVP 功能優先級定義

P0 - 必須有 (Must Have)

  1. 使用者註冊/登入
  2. AI 詞卡生成
  3. 詞卡管理 (CRUD)
  4. 間隔重複複習系統
  5. 基本學習進度追蹤

P1 - 應該有 (Should Have)

  1. 語音評估功能
  2. 學習統計儀表板
  3. 推播通知提醒
  4. 詞卡搜尋與篩選
  5. 基本成就系統

P2 - 可以有 (Could Have)

  1. 離線支援
  2. 深色模式
  3. 社群分享功能
  4. 詞卡匯入/匯出
  5. 多語言支援

P3 - 未來版本 (Won't Have Now)

  1. 遊戲化元素
  2. 社群功能
  3. AI 個人化推薦
  4. 團隊/班級功能
  5. 進階分析報告

開發團隊配置建議

最小團隊 (3人)

  • 全端工程師 x1: 負責前後端開發
  • 行動端工程師 x1: 專注 React Native
  • UI/UX 設計師 x1: 兼任產品經理

理想團隊 (5人)

  • 後端工程師 x1: API 與資料庫
  • 前端工程師 x2: React Native 開發
  • UI/UX 設計師 x1: 使用者體驗
  • 產品經理 x1: 需求管理與測試

風險管理

技術風險

風險項目 可能性 影響 緩解措施
AI API 成本超支 設置使用量上限、快取結果
語音識別準確度不足 提供多次嘗試、人工校正
同步衝突處理複雜 MVP 簡化離線功能
App Store 審核被拒 提前研究規範、準備申訴

時程風險

  • 緩衝時間: 每個階段預留 20% 緩衝
  • 並行開發: 前後端同時進行
  • 優先級管理: P2/P3 功能可延後

成功指標 (KPI)

技術指標

  • API 回應時間 < 200ms (P95)
  • App 啟動時間 < 2秒
  • 崩潰率 < 0.1%
  • 程式碼覆蓋率 > 70%

業務指標

  • 註冊轉換率 > 30%
  • 7 日留存率 > 40%
  • 30 日留存率 > 20%
  • 每日活躍使用者複習 > 10 張卡片

後續迭代計劃

V1.1 (MVP+1個月)

  • 優化效能問題
  • 修復使用者反饋 bug
  • 加入 P1 遺漏功能

V1.2 (MVP+2個月)

  • 實作訂閱付費系統
  • 加入更多語言支援
  • 優化 AI 生成品質

V2.0 (MVP+6個月)

  • 社群功能
  • 遊戲化系統
  • 企業版功能