Full Flow(完整工作流程)
Full Flow 是 Superpowers 中最嚴謹的工作流程,專為重要功能開發和核心系統重構設計。
流程圖
1
Brainstorming
探索解決方案
2
Writing Plans
制定實作計畫
3
Test-Driven Development
TDD 方式實作
4
Systematic Debugging
系統化除錯(如需)
5
Verification
完成前驗證
6
Requesting Code Review
請求程式碼審查
何時使用 Full Flow
適用情境:
- ✅ 核心功能開發
- ✅ 架架調整或重構
- ✅ 安全性相關的功能
- ✅ 需要高品質保證的任務
- ✅ 團隊協作的重要功能
不適用情境:
- ❌ 簡單的功能增強
- ❌ 低風險的修改
- ❌ 緊急的 hotfix(使用 Quick Flow)
- ❌ 文案或配置更新
流程步驟
第 1 步:Brainstorming(30 分鐘)
目標:探索多種可能的解決方案
觸發:
使用 brainstorming skill 探索...的多種實作方式
輸出:
- 2-4 種不同的解決方案
- 每種方案的優缺點分析
- 推薦方案及理由
第 2 步:Writing Plans(1 小時)
目標:制定詳細的實作計畫
觸發:
使用 writing-plans skill 制定...的實作計畫
輸出:
- 詳細的實作步驟
- 明確的驗收標準
- 技術風險評估
- 時間估算
第 3 步:Test-Driven Development(2-3 小時)
目標:使用 TDD 方式實作功能
觸發:
使用 test-driven-development skill 開發測試驅動實作...
輸出:
- 完整的測試套件
- 通過測試的實作程式碼
- 測試覆蓋率報告
第 4 步:Systematic Debugging(如需要)(30-60 分鐘)
目標:系統化地解決遇到的問題
觸發:
使用 systematic-debugging skill 診斷...的問題
輸出:
- 問題根因分析
- 解決方案建議
- 修正後的驗證
第 5 步:Verification Before Completion(15 分鐘)
目標:驗證實作結果符合所有需求
觸發:
使用 verification-before-completion skill 驗證...的實作
輸出:
- 功能性驗證
- 完整性驗證
- 品質驗證
- 效能驗證
- 安全性驗證
第 6 步:Requesting Code Review(30 分鐘)
目標:請求團隊成員審查程式碼
觸發:
使用 requesting-code-review skill 準備...的程式碼審查
輸出:
- PR 描述文件
- 自我審查清單
- 審查項目清單
時間成本
最快:4 小時(跳過某些步驟) 最慢:6 小時(完整執行所有步驟) 平均:5 小時
實際應用範例
範例 1:核心功能開發
任務:實作完整的訂單管理系統
Full Flow 執行:
[1/6] Brainstorming
探索訂單狀態機設計
→ 考慮:單一狀態 vs 複雜狀態機
→ 選擇:Redux Toolkit 方案
[2/6] Writing Plans
制定詳細實作計畫
→ 包含 8 個主要步驟
→ 預估:4 小時
[3/6] Test-Driven Development
建立完整測試套件
→ 測試覆蓋率 > 80%
→ 使用 TDD 方式實作功能
[4/6] Systematic Debugging
解決支付整合的問題
→ API 回應格式不一致
→ 加入錯誤處理
[5/6] Verification Before Completion
功能、完整性、品質、效能全部驗證通過
[6/6] Requesting Code Review
提交 PR 並請求團隊審查
總時間:5.5 小時
範例 2:架構重構
任務:重構為微服務架構
Full Flow 執行:
[1/6] Brainstorming
探索微服務拆分策略
→ 考慮:按功能領域拆分
→ 選擇:4 個核心服務
[2/6] Writing Plans
制定重構計畫
→ 包含漸進式遷移策略
→ 考慮:相容性維持
[3/6] Test-Driven Development
為每個服務建立測試
→ 確保遷移過程功能不變
→ 使用 TDD 方式實作
[4/6] Systematic Debugging
解決服務間通訊問題
→ 加入 retry 機制
→ 實作斷路器模式
[5/6] Verification Before Completion
功能對等性驗證
→ 效能基準測試
→ 負載測試
[6/6] Requesting Code Review
架構審查重點
→ 安全性檢查
→ 效能評估
總時間:6 小時
Full Flow 的優勢
1. 品質保證
六個步驟確保:
- ✅ 需求被充分理解
- ✅ 計劃經過深思熟慮
- ✅ 程式碼有測試保護
- ✅ 問題被系統化解決
- ✅ 結果被全面驗證
- ✅ 程式碼經過同行審查
2. 風險控制
每個步驟都有風險控制:
- Brainstorming:避免遺漏好的方案
- Writing Plans:識別潛在風險
- TDD:測試保證品質
- Debugging:系統化處理問題
- Verification:確保無遺漏
- Code Review:團隊檢查
3. 可追蹤性
整個流程有清晰的追蹤:
- 每個步驟都有輸出和結果
- 可以追溯決策的依據
- 便於團隊協作和審查
與 Quick Flow 的比較
| 特點 | Quick Flow | Full Flow |
|---|---|---|
| 時間成本 | 15-45 分鐘 | 4-6 小時 |
| 適用任務 | 小型、低風險 | 核心、高風險 |
| 驗證程度 | 基本 | 完整 |
| 程式碼品質 | 良好 | 優秀 |
| 團隊協作 | 個人即可 | 需要審查流程 |
最佳實踐
1. 靈活調整
可以根據實際情況調整流程:
簡化版 Full Flow:
brainstorming → writing-plans → executing-plans → verification
2. 並行處理
某些步驟可以並行進行:
第 1 步:建立模型測試
第 2 步:建立控制器測試
第 3 步:建立整合測試
3. 迭代優化
多輪 Full Flow 達進改進:
第一輪:基本實作 + 驗證
第二輪:效能優化 + 重構
第三輪:安全加固 + 測試補強
注意事項
1. 時間投資
Full Flow 需要較長時間,但能大幅提升品質:
- 不建議用於所有任務
- 只在重要功能上使用
- 時間投資會有長期回報
2. 團隊配合
Full Flow 特別適合團隊環境:
- 確保有足夠的審查人力
- 建立程式碼審查文化
- 保持開放的溝通氛圍
3. 文件記錄
完整記錄 Full Flow 的過程:
- 討劃文件
- 技術決策記錄
- 測試結果文件
- 審查意見記錄
Full Flow 是確保重要開發品質和安全性的完整工作流程!