BMAD METHOD使用教學

BMAD-METHOD 使用教學手冊 文件版本:3.0 最後更新:2026 年 3 月 適用版本:BMAD METHOD v6.0.4(穩定版) 適用對象:新進軟體工程師、系統分析師、專案成員 前置知識:基本軟體開發概念、版本控制基礎 Created by:Eric Cheng 目錄 前言 第一章:BMAD-METHOD 是什麼 1.1 方法論背景與設計目的 1.2 BMAD 與傳統開發流程的差異 1.3 為什麼 BMAD 特別適合 AI 協作開發 第二章:BMAD-METHOD 的核心概念 2.1 四大核心階段概覽 2.2 Analysis(分析)階段 2.3 Planning(規劃)階段 2.4 Solutioning(方案設計)階段 2.5 Implementation(實作)階段 2.6 各階段的目標、輸入與輸出 2.7 安裝與設定指南 2.8 官方模組總覽 2.9 Skills 架構深入解說 2.10 專案上下文管理(Project Context) 2.11 官方模組深入解說 2.12 Quick Flow 完整實戰指南 2.13 Dev Loop 自動化開發循環 2.14 新增工作流程參考 第三章:BMAD-METHOD 整體流程說明 3.1 從需求發想到交付的完整流程 3.2 每個階段與 AI 的互動方式 3.3 建議的文件與產出物 第四章:各階段詳細教學 4.1 Analysis 階段詳細教學 4.2 Planning 階段詳細教學 4.3 Solutioning 階段詳細教學 4.4 Implementation 階段詳細教學 第五章:AI Prompt 實戰範例 5.1 Analysis 階段 Prompt 範例 5.2 Planning 階段 Prompt 範例 5.3 Solutioning 階段 Prompt 範例 5.4 Implementation 階段 Prompt 範例 5.5 銀行與大型系統專用 Prompt 實戰對話 5.6 BMAD v6 Skills 實戰 Prompt 範例 第六章:BMAD-METHOD 與其他方法論比較 6.1 與 Scrum / SAFe 的差異 6.2 與 SDD / Spec-Kit 的差異 6.3 適用與不適用情境 第七章:新進同仁快速上手指南 7.1 第一週可以怎麼用 BMAD 7.2 建議學習順序 7.3 團隊內導入建議 第八章:常見問題(FAQ) Q1:BMAD 是否會取代 SA / PG? Q2:BMAD 是否一定要用 AI? Q3:如何在既有(Brownfield)系統中導入? Q4:BMAD 產出的文件品質如何? Q5:如何處理 AI 產出的錯誤? Q6:BMAD 適合什麼規模的團隊? Q7:如何評估 BMAD 導入效果? Q8:Skills 和舊版 Slash Commands 有什麼差別? Q9:如何選擇適當的 IDE? Q10:project-context.md 需要手動維護嗎? Q11:如何處理多個 AI 代理之間的上下文切換? Q12:BMAD 如何與 CI/CD 整合? Q13:如何在離線環境中使用 BMAD? 疑難排解(Troubleshooting) 常見問題排除 效能最佳化建議 進階主題:BMAD 客製化與擴展 進階 1:使用 BMB 建立客製化代理 進階 2:建立組織專屬的工作流程範本 進階 3:多模組整合架構 進階 4:llms-full.txt 與 AI 自助學習 進階 5:Brownfield 專案遷移策略 附錄:檢查清單(Checklist) A. BMAD 專案啟動檢查清單 B. 各階段完成檢查清單 C. AI 協作品質檢查清單 D. 新進同仁學習進度檢查清單 術語表(Glossary) 代理角色快速對照 常用 Skill ID 快速對照 參考資源 版本紀錄 前言 為什麼需要這份手冊? 在人工智慧快速發展的時代,軟體開發方式正經歷革命性變化。傳統的開發流程往往無法充分發揮 AI 助手的潛力,導致: ...

December 31, 2025 · 55 min · 11600 words · Eric Cheng

BDD行為驅動開發使用教學手冊

BDD 行為驅動開發使用教學手冊 📘 手冊說明 本手冊專為系統分析師(SA)、業務分析師(BA)、開發人員與測試人員設計,旨在協助團隊成員: 理解 BDD 的核心概念與價值 掌握 Gherkin 語法與規格撰寫 學會將業務需求轉換為可執行的行為規格 建立 BDD 協作開發流程 實踐 BDD 自動化測試 適用對象: 新進系統分析師 想導入 BDD 的開發團隊 需要強化需求溝通的專案經理 負責驗收測試的 QA 人員 使用方式: 循序閱讀各章節,建立完整概念 參考實務案例,模擬實際場景 使用附錄的模板與檢查清單 在專案中逐步導入與實踐 📑 目錄 第一章 認識 BDD:行為驅動開發的核心理念 1.1 什麼是 BDD 1.2 BDD 與 TDD、ATDD 的差異 1.3 為什麼要導入 BDD 1.4 BDD 的價值與應用場景 1.5 BDD 在軟體開發生命週期(SDLC)中的位置 第二章 BDD 的三大支柱 2.1 Discovery(需求探索) 2.2 Formulation(範例定義) 2.3 Automation(自動化驗證) 第三章 BDD 的核心語法:Gherkin 3.1 Gherkin 語法結構與規則 3.2 Feature、Scenario、Scenario Outline 進階應用 3.3 範例:從需求敘述轉為 Gherkin 規格 3.4 常見錯誤與最佳實務 第四章 BDD 與系統分析的整合應用 4.1 如何將業務需求轉化為可執行行為 4.2 與利害關係人共創範例(Example Mapping) 4.3 User Story 與 BDD 的結合方式 4.4 Acceptance Criteria(驗收準則)的撰寫指引 4.5 從 BDD 到 Use Case 的對應關係 第五章 BDD 開發流程與角色分工 5.1 BDD 工作流(Workflow)全貌 5.2 三方會談(Three Amigos:BA/SA、Dev、QA) 5.3 SA 在 BDD 流程中的責任與產出 5.4 實務文件產出範例 5.5 維護與版本控管實務 第六章 BDD 自動化測試實作 6.1 常見 BDD 工具比較 6.2 環境安裝與專案結構 6.3 Feature 與 Step Definitions 的關聯 6.4 CI/CD 整合實務 6.5 測試報告與追蹤機制 第七章 BDD 實戰案例 7.1 案例一:Web 登入驗證流程 7.2 案例二:銀行轉帳業務流程 7.3 案例三:批次系統業務規則驗證 7.4 案例四:API 行為測試 7.5 案例回顧與行為重構 第八章 導入策略與組織落地 8.1 組織 BDD 成熟度評估 8.2 BDD 導入計畫範本 8.3 克服導入 BDD 的常見障礙 8.4 建立 BDD 協作文化 8.5 成功導入的關鍵因素 第九章 高階應用與延伸 9.1 AI 輔助 BDD 實踐 9.2 BDD 與 Specification by Example (SBE) 整合 9.3 微服務架構下的 BDD 挑戰 9.4 BDD 的未來趨勢 第十章 附錄 10.1 Gherkin 語法速查表 10.2 BDD 文件模板 10.3 常見 BDD 工具與插件 10.4 推薦學習資源 10.5 BDD 完整檢查清單 第一章 認識 BDD:行為驅動開發的核心理念 1.1 什麼是 BDD BDD (Behavior-Driven Development,行為驅動開發) 是一種軟體開發方法論,強調: ...

November 7, 2025 · 88 min · 18620 words · Eric Cheng

TDD(Test-Driven Development)測試驅動開發教學手冊

TDD(Test-Driven Development)測試驅動開發使用教學手冊 📚 目錄 一、前言 1.1 教學目的 1.2 適用對象 1.3 預期學習成果 1.4 教學手冊架構說明 二、TDD 概念與原則 2.1 什麼是 TDD(Test-Driven Development) 2.2 TDD 的核心循環:Red → Green → Refactor 2.3 TDD 與傳統開發流程的差異 2.4 為什麼使用 TDD:好處與挑戰 2.5 單元測試 vs. 集成測試 vs. 系統測試 三、TDD 實踐步驟 3.1 Step 1:撰寫失敗的測試(Red) 3.2 Step 2:撰寫最簡單的實作通過測試(Green) 3.3 Step 3:重構程式碼(Refactor) 3.4 Step 4:重複循環與迭代開發 3.5 驗收標準(Definition of Done)與測試覆蓋率要求 四、TDD 開發環境與工具 4.1 測試框架介紹 4.2 IDE 與工具設定 4.3 持續整合(CI)與自動化測試 4.4 測試覆蓋率工具 4.5 測試資料與 Mock 工具 ...

November 7, 2025 · 58 min · 12199 words · Eric Cheng

架構轉換專案計畫範本

📝 專案計畫書範本(草稿) 1. 專案簡介 專案名稱:應用系統架構轉型計畫 專案目標: Phase 1:單體 → 容器化 → 上雲,達成 Lift & Shift Phase 2:單體 → 微服務 → 容器化 → 上雲,完成業務導向解耦 範圍: 涉及核心應用(XX 系統)、資料庫(DB2 / Oracle)、應用伺服器(Liberty)、批次處理(Spring Batch) 預期效益: 部署時間縮短 70% MTTR 減少 50% 系統彈性與可擴展性提升 2. 專案里程碑 (Milestones) 里程碑 說明 產出物 時間 負責角色 M1 現況盤點與架構審視 系統盤點報告、風險清單 W1–W2 架構師、系統分析師 M2 容器化樣板建立 Dockerfile、Helm Chart、CI/CD Pipeline W3–W4 DevOps 工程師 M3 雲網路與基礎建設就緒 Terraform 模組、網路拓樸、資安控管表 W5–W6 雲平台工程師 M4 容器化驗證 SIT 測試報告、壓測報告、回退計畫 W7–W8 測試團隊、SRE M5 首批系統上線 上線計畫、Runbook、SLA/SLO 報告 W9–W10 PM、應用團隊 M6 微服務設計完成 業務域切分、API 契約、事件流設計 P2 W1–W2 架構師、業務分析師 M7 第一波微服務上線 新服務、契約測試、金絲雀報告 P2 W5–W8 Dev 團隊、SRE M8 單體功能替換完成 Strangler 完成報告、單體下線 P2 W12+ 架構師、PM 3. RACI 表(責任分配矩陣) 活動 PM 架構師 Dev DevOps/SRE 測試 業務單位 現況盤點 A R C C C I 容器化設計 C A/R R C I I CI/CD Pipeline I C R A I I 雲網路與 IaC I C I A/R I I SIT/UAT 測試 C C R C A I 上線與回退 A R R R C I 微服務切分 C A/R R C I C API/事件治理 I A R C C C 營運/Runbook A C I R I I (A=Accountable 負責決策 / R=Responsible 執行 / C=Consulted 諮詢 / I=Informed 知會) ...

October 31, 2025 · 2 min · 243 words · Eric Cheng

12-Factor App 說明與對應解決方案

Codebase(單一程式碼庫,多個部署環境) 原則:一個應用程式應有單一程式碼庫,透過不同的部署(deploy)對應不同環境(dev/test/prod)。 解決方案: 使用 GitLab repository 管理專案。 每個環境使用不同 branch 或 tag(如 develop, release, main)。 CI/CD pipeline 進行自動化部署,避免分散程式碼庫。 Dependencies(明確宣告與隔離依賴) 原則:應用程式必須明確管理相依性,避免依賴系統環境。 解決方案: 後端:使用 Maven pom.xml 宣告所有 dependencies,不依賴本地安裝的 jar。 前端:使用 package.json 鎖定依賴版本。 建議使用 Docker 建立一致的 build/runtime 環境。 Config(將設定與程式碼分離) 原則:設定(如 DB 密碼、API key)不應寫死在程式碼中。 解決方案: Spring Boot 使用 application.yml + 外部設定檔 或 環境變數。 GitLab CI/CD 提供 Environment Variables 管理不同環境的設定。 建議搭配 Vault / AWS Secrets Manager / Kubernetes Secrets。 Backing Services(後端服務當作附加資源) 原則:資料庫、快取、MQ、外部 API 都應視為「可替換的資源」。 解決方案: DB(MySQL/DB2/PostgreSQL)、Redis、RabbitMQ 等連線資訊放在設定檔,不耦合程式。 測試環境可用輕量替代(如 testcontainers 啟動 DB/Redis)。 Build, Release, Run(明確分離建置、發佈、執行) 原則:建置(build)、發佈(release)、執行(run)必須分開,避免環境污染。 解決方案: ...

October 31, 2025 · 2 min · 292 words · Eric Cheng

Angular 前端framework教學

Angular 前端Framework教學手冊 目錄 1. 前言 為什麼要學習 Angular? 專案背景 學習目標 2. 基礎篇 1. Angular 架構概念 1.1 核心概念 1.2 應用程式架構圖 2. 環境建置 2.1 必要軟體安裝 2.2 建立新專案 2.3 專案結構 3. 組件 (Components) 3.1 組件基本概念 3.2 建立組件 3.3 組件範例 4. 資料繫結 (Data Binding) 4.1 插值繫結 (Interpolation) 4.2 屬性繫結 (Property Binding) 4.3 事件繫結 (Event Binding) 4.4 雙向資料繫結 (Two-way Binding) 3. 進階篇 5. 模組 (Modules) 5.1 模組基本概念 5.2 根模組範例 5.3 功能模組建立 5.4 共用模組 6. 服務與相依性注入 (Services & Dependency Injection) 6.1 建立服務 6.2 基本服務範例 6.3 在組件中使用服務 6.4 服務注入層級 7. 路由 (Routing) 7.1 基本路由設定 7.2 子路由設定 7.3 路由導航 7.4 路由參數處理 7.5 路由守衛 4. 專案實務篇 8. 表單處理 8.1 範本驅動表單 (Template-driven Forms) 8.2 反應式表單 (Reactive Forms) 8.3 表單驗證最佳實務 9. HTTP 客戶端與 API 整合 9.1 HTTP 攔截器 9.2 API 服務封裝 10. RxJS 最佳實務 10.1 常用操作符 10.2 記憶體管理 11. 測試 (Testing) 11.1 單元測試範例 11.2 整合測試範例 11.3 指令測試範例 11.4 管道測試範例 11.5 路由測試範例 11.6 測試工具與最佳實務 5. 認證準備篇 12. Angular 官方認證考試重點 12.1 考試概要 12.2 重點知識領域 12.3 模擬考試題目 12.4 考前準備清單 13. 實戰模擬測驗 13.1 綜合練習題 13.2 進階練習題 6. 附錄 14. 常見問題 (FAQ) 14.1 開發環境問題 14.2 開發常見問題 14.3 效能問題 15. 有用的資源連結 15.1 官方資源 15.2 學習資源 15.3 工具與庫 15.4 社群資源 16. 快速參考檢查清單 16.1 新專案設置檢查清單 16.2 開發檢查清單 16.3 部署前檢查清單 16.4 程式碼審查檢查清單 17. 團隊開發規範 17.1 Git 工作流程 17.2 程式碼規範 17.3 程式碼審查標準 前言 為什麼要學習 Angular? Angular 是由 Google 開發維護的前端框架,具有以下優勢: ...

October 31, 2025 · 40 min · 8393 words · Eric Cheng

Apache JMeter 使用教學手冊

版本:v1.1(已完成第 1-16 章與附錄 A-E;持續維護優化) 最後更新:2026-02-12(對應 JMeter 5.6.3 版本) 適用對象:完全未接觸過效能測試 / JMeter 的新進開發與測試人員 文件目標:協助 1~2 天內快速具備撰寫並執行基本壓力測試腳本的能力,並建立後續進階自學基礎。 快速導讀 若你是第一次接觸 JMeter,建議依序閱讀: Part 1(必讀):了解 JMeter 是什麼、安裝、基礎 GUI 操作。 Part 2:學會設計一個可維護的測試計畫(參數化、控制器、Assertion)。 Part 3:掌握報表分析與常見最佳實務(非 GUI、分散式、效能瓶頸初步診斷)。 Part 4:實戰情境(API / Web / DB / 企業案例)。 Part 5:若需考 JMeter 認證或建置團隊基準能力。 附錄:錯誤排除、報告範本、學習資源、Checklist。 目錄(Table of Contents) Part 1. 基礎入門(Ch.1-3) 1. JMeter 簡介 1.1 JMeter 的定位與用途 1.2 常見測試類型 1.3 與其他工具比較 1.4 概念流程圖 1.5 本章實務案例 1.6 注意事項(初學者常犯) 2. 安裝與環境設定 ...

October 31, 2025 · 37 min · 7809 words · Eric Cheng

API設計範本

API 設計範本 Prompt 目標 指導 AI 進行RESTful API設計,產生完整的API規格文檔和設計指南。 角色設定 你是一位資深API架構師,具備豐富的API設計經驗,熟悉RESTful設計原則、OpenAPI規範和API最佳實務。 任務描述 請協助我完成 {專案名稱} 的API設計工作。 API 背景資訊 專案名稱: {填入專案名稱} API 類型: {填入API類型,如:RESTful、GraphQL、gRPC} 主要功能領域: {填入主要業務領域} 預期使用者: {填入API使用者類型,如:前端應用、第三方系統、移動應用} 安全等級: {填入安全要求等級} API 設計要求 請按照以下結構進行API設計: 1. API 概覽設計 API 目標和範圍定義 資源模型設計 URL 結構規劃 HTTP 方法對應 2. 資料模型設計 實體關係模型 JSON Schema 定義 資料驗證規則 錯誤回應格式 3. 端點詳細設計 CRUD 操作設計 查詢和篩選設計 分頁機制設計 排序機制設計 4. 安全性設計 身份驗證機制 授權控制設計 API 金鑰管理 速率限制設計 5. 版本控制策略 版本控制方法 向後相容性規劃 廢棄策略設計 遷移指南規劃 6. 文檔和測試 OpenAPI 規格撰寫 使用範例提供 測試案例設計 錯誤處理指南 輸出格式 # {專案名稱} API 設計規格 ## 1. API 概覽 ### 1.1 API 目標 **主要目標:** [API 的主要用途和目標] **次要目標:** [輔助功能和延伸應用] **成功標準:** [API 品質和使用量指標] ### 1.2 API 設計原則 - **RESTful 設計**: 遵循 REST 架構風格 - **一致性**: 統一的命名和回應格式 - **可預測性**: 直觀的 URL 結構和行為 - **可擴展性**: 支援未來功能擴展 - **安全性**: 內建安全機制 ### 1.3 基礎 URL 結構 **Base URL:** `https://api.{domain}.com/v1` **URL 模式:** `/{resource}/{id}/{sub-resource}` ### 1.4 HTTP 方法對應 | HTTP 方法 | 用途 | 冪等性 | 安全性 | |-----------|------|--------|--------| | GET | 查詢資源 | 是 | 是 | | POST | 建立資源 | 否 | 否 | | PUT | 更新/替換資源 | 是 | 否 | | PATCH | 部分更新資源 | 否 | 否 | | DELETE | 刪除資源 | 是 | 否 | ## 2. 資料模型設計 ### 2.1 核心實體模型 #### 實體: User (使用者) ```json { "id": "string (UUID)", "username": "string (3-50字元)", "email": "string (email格式)", "firstName": "string (1-50字元)", "lastName": "string (1-50字元)", "role": "string (enum: admin, user, guest)", "status": "string (enum: active, inactive, suspended)", "createdAt": "string (ISO 8601 datetime)", "updatedAt": "string (ISO 8601 datetime)" } 實體: Product (產品) { "id": "string (UUID)", "name": "string (1-200字元)", "description": "string (可選,最多1000字元)", "price": "number (正數,最多2位小數)", "category": "string", "sku": "string (產品編號)", "inventory": { "quantity": "integer (非負整數)", "reserved": "integer (非負整數)" }, "images": ["string (URL陣列)"], "attributes": { "color": "string", "size": "string", "weight": "number" }, "isActive": "boolean", "createdAt": "string (ISO 8601 datetime)", "updatedAt": "string (ISO 8601 datetime)" } 2.2 標準回應格式 成功回應格式 { "success": true, "data": { // 實際資料內容 }, "meta": { "timestamp": "ISO 8601 datetime", "requestId": "UUID", "pagination": { // 僅分頁查詢時包含 "page": 1, "limit": 20, "total": 100, "totalPages": 5 } } } 錯誤回應格式 { "success": false, "error": { "code": "ERROR_CODE", "message": "錯誤訊息", "details": "詳細錯誤說明", "field": "發生錯誤的欄位 (驗證錯誤時)" }, "meta": { "timestamp": "ISO 8601 datetime", "requestId": "UUID" } } 3. API 端點設計 3.1 使用者管理 API 取得使用者清單 端點: GET /users 描述: 取得使用者清單,支援分頁和篩選 ...

October 31, 2025 · 5 min · 961 words · Eric Cheng

Bash使用教學

Bash 使用教學手冊 📚 手冊說明 本手冊專為團隊新進開發同仁設計,旨在提供完整的 Bash 學習指引,讓同仁能夠: 掌握 Bash 基礎與進階技能 在專案開發中正確使用 Bash 腳本 具備考取 Linux 相關認證的能力 遵循團隊 Bash 開發規範 📋 完整目錄結構 目錄 第 1 部分:基礎入門 1.1 認識 Bash 與 Shell 1.2 Bash 與 Linux/Unix 的關係 1.3 Bash 環境與版本檢查 1.4 常見開發環境介紹 1.5 基本命令列操作 1.6 編輯器使用 第 2 部分:Bash 核心語法 2.1 變數與資料型態 2.2 參數與引數 2.3 運算子與算術計算 2.4 條件判斷 2.5 迴圈結構 2.6 函式 2.7 輸入與輸出 2.8 管線與重新導向 第 3 部分:進階主題 3.1 陣列與字串處理 3.2 正則表達式與文字處理 3.3 檔案與目錄操作自動化 3.4 使用 cron 與排程任務 3.5 Bash 腳本除錯 3.6 錯誤處理 3.7 最佳實務 第 4 部分:專案應用實戰 4.1 自動化專案建置腳本 4.2 系統環境初始化 4.3 日誌分析與檔案過濾 4.4 檔案批次處理 4.5 自動化檔案傳輸 4.6 CI/CD 腳本整合 第 5 部分:考試準備 5.1 Bash 認證考試介紹 5.2 常見考試範疇與題型解析 5.3 範例考題與練習題 5.4 模擬測驗與解答解析 5.5 考試技巧與時間管理 第 6 部分:附錄 6.1 常用 Bash 指令速查表 6.2 Shell 腳本錯誤排查清單 6.3 Bash 相關學習資源 6.4 專案內部 Bash 腳本規範 第 1 部分:基礎入門 1.1 認識 Bash 與 Shell 📖 簡介 Bash(Bourne Again Shell)是一個命令列介面程式,也是一種腳本語言。它是 Linux 和 macOS 系統的預設 Shell,用於執行命令、自動化任務和系統管理。 ...

October 31, 2025 · 80 min · 16963 words · Eric Cheng

C#程式語言教學

C# 程式語言教學手冊 目錄 基礎入門 1.1 C# 與 .NET 基本概念 1.2 開發環境設定 1.3 基本語法 1.3.1 變數與資料型別 1.3.2 流程控制 1.3.3 函式 (方法) 1.3.4 例外處理 物件導向程式設計 (OOP) 2.1 類別與物件基礎 2.1.1 類別定義 2.1.2 存取修飾詞 2.2 繼承 (Inheritance) 2.2.1 基本繼承 2.3 多型 (Polymorphism) 2.3.1 虛擬方法與覆寫 2.4 介面 (Interface) 2.4.1 介面定義與實作 2.5 抽象類別 進階語法與實務 3.1 泛型 (Generics) 3.1.1 泛型基礎概念 3.1.2 泛型約束 3.2 委派與事件 (Delegates & Events) 3.2.1 委派基礎 3.2.2 內建委派型別 (Func, Action, Predicate) 3.3 LINQ 語法與集合操作 3.3.1 LINQ 基礎查詢 3.3.2 進階 LINQ 操作與實務應用 3.4 非同步程式設計 (async/await) 3.4.1 非同步基礎概念 3.4.2 非同步最佳實務與進階應用 專案實務應用 4.1 Web API 開發 (ASP.NET Core) 4.1.1 建立基本 Web API 4.2 資料庫存取 (Entity Framework Core) 4.2.1 Entity Framework 設定 4.3 單元測試 (xUnit) 4.3.1 基本單元測試 4.4 錯誤處理與日誌紀錄 4.4.1 全域錯誤處理 認證考試對應 ...

October 31, 2025 · 59 min · 12367 words · Eric Cheng