TTechSpecs

Writing Plans Skill

Writing Plans 是 Superpowers 中最重要的規劃型 skills 之一,專注於將複雜的開發任務分解為詳細、可執行的實作計畫。

何時使用

在以下情況中使用 Writing Plans skill:

需要使用的情境

  • 開始新功能開發前
  • 需要明確實作步驟時
  • 任務複雜需要系統化規劃時
  • 團隊協作需要溝通計畫時
  • 不確定如何開始實作時

不適合的情境

  • 任務非常簡單明確
  • 只是執行既定指令
  • 快速修復 trivial bug

如何使用

觸發詞

使用以下詞彙來觸發 Writing Plans skill:

  • 「使用 writing-plans skill 制定…的實作計畫」
  • 「幫我 writing-plans 關於…的實作步驟」
  • 「規劃一下…的開發方案」

工作流程

  1. 理解需求:清楚定義要實作的功能或任務
  2. 分解步驟:將任務分解為小的、可執行的步驟
  3. 定義驗收標準:明確每個步驟的完成條件
  4. 識別風險:指出可能遇到的技術難點
  5. 建立時間估算:預估每個步驟所需的時間

實際範例

範例 1:新功能實作計畫

使用者輸入

使用 writing-plans skill 制定使用者註冊功能的實作計畫

AI 回應

讓我們制定使用者註冊功能的實作計畫:

## 功能分解

### 第 1 步:設計資料庫 schema
- 建立 User 資料表(id, email, password_hash, created_at)
- 設計索引(email 唯一索引)
- 預估時間:30 分鐘

### 第 2 步:實作後端 API
- POST /api/register 註冊端點
- 密碼雜湊處理
- Email 驗證邏輯
- 錯誤處理和驗證
- 預估時間:2 小時

### 第 3 步:建立前端表單
- 註冊表單 UI(email、password、confirm password)
- 表單驗證
- 錯誤提示訊息
- 預估時間:1.5 小時

### 第 4 步:整合測試
- 測試註冊流程
- 驗證 email 重複處理
- 測試錯誤情況
- 預估時間:1 小時

## 驗收標準
- [ ] 使用者可以成功註冊帳號
- [ ] Email 重複時顯示適當錯誤訊息
- [ ] 密碼符合複雜度要求
- [ ] 註冊後自動登入

## 技術風險
- 密碼安全:需要使用 bcrypt 或 Argon2
- Email 傳送:可能需要第三方服務
- 表單安全:需要防範 CSRF 攻擊

## 總時間估算
5 小時

範例 2:重構計畫

使用者輸入

使用 writing-plans skill 規劃使用者服務模組的重構

AI 回應

讓我們制定使用者服務模組的重構計畫:

## 重構目標
將單一的大型 User 服務分解為多個小型服務

## 重構步驟

### 階段 1:提取認證服務(2 天)
- 提取使用者認證相關程式碼
- 建立 AuthService 模組
- 建立統一的認證介面
- 驗收:現有功能正常,認證邏輯正確

### 階段 2:提取使用者資料服務(1.5 天)
- 提取使用者 profile 管理程式碼
- 建立 UserService 模組
- 建立資料存取介面
- 驗收:profile 讀寫正常,資料一致性

### 階段 3:提取通知服務(1 天)
- 提取通知發送程式碼
- 建立 NotificationService 模組
- 支援多種通知管道
- 驗收:通知正常發送,追蹤正確

### 階段 4:整合測試(1 天)
- 測試服務間通訊
- 驗證資料一致性
- 效能測試
- 驗收:所有功能正常,效能符合預期

## 風險評估
- 服務間通訊延遲
- 資料一致性挑戰
- 向後相容性

## 總時間估算
5.5 天

Writing Plans 的特色

1. 系統化分解

將複雜任務系統化地分解為小的、可管理的步驟:

複雜任務:實作完整的電商結帳功能
↓ 分解為
多個小步驟:購物車 → 訂單管理 → 支付整合 → 訂單確認

2. 明確的驗收標準

為每個步驟定義清楚的完成條件:

步驟:建立購物車功能
驗收標準:
- [ ] 使用者可以新增商品到購物車
- [ ] 購物車資料持久化儲存
- [ ] 數量可以調整
- [ ] 商品可以從購物車移除

3. 風險識別

提前識別潛在的技術難點和風險:

技術風險:
- 第三方 API 整合複雜度
- 效能瓶預期
- 安全性考量

4. 時間估算

為每個步驟提供合理的時間估算:

樂觀估算:1 小時
現實估算:2 小時
保守估算:3 小時

與其他 Skills 組合

推薦組合

Brainstorming + Writing Plans

brainstorming → writing-plans

先探索各種方案,再制定詳細計畫

Writing Plans + Executing Plans

writing-plans → executing-plans

先制定計畫,再依計畫執行

Writing Plans + Test-Driven Development

writing-plans → test-driven-development

在計畫中包含測試策略,然後用 TDD 方式實作

進階技巧

1. 迭代式計畫

將大型計畫分解為多輪迭代:

第一輪計畫:核心功能 MVP
第二輪計畫:次要功能
第三輪計畫:優化和改進

2. 風險導向計畫

在計畫中重點考慮風險緩解:

風險 1:資料一致性
→ 計畫包含事務處理和驗證機制

風險 2:效能問題
→ 計畫包含效能測試和優化策略

3. 團隊協作計畫

制定適合團隊協作的計畫:

任務分配:
- 前端:甲工程師(2 天)
- 後端:乙工程師(3 天)
- 測試:丙工程師(1 天)

小技巧

  • 先求詳再求快:花時間制定好計畫,後續執行更順暢
  • 保持彈性:計畫是動態的,可以根據實際情況調整
  • 記錄學習:將每次計畫執行的經驗記錄下來
  • 團隊對齊:確保團隊成員對計畫有共識

Writing Plans 是確保開發工作有序進行的關鍵 skill,善用它來提升您的開發效率!