比 氛圍開發(Vibe Coding)更好的 敏捷AI驅動開發(BMad-Method)如何打造高效可靠軟體?

更新 發佈閱讀 8 分鐘

由 NotebookLM 生成摘要

原始影片網址:https://youtu.be/JbhiLUY_V2U

一位美國資深軟體工程師 Brian 在 YouTube 頻道「BMad Code」的一支影片「Better Than Vibe Coding: Agile AI Driven Development for Complex Apps」,提到只依賴單一的 AI 工具如 Cursor,隨著功能越開發越複雜,造成最終產品與預期相差甚遠,反覆修改資源消耗量大。講述一種名為 Agile-AI Driven Development 的開發方法,又稱為 BMad-Method、BMAD方法(Breakthrough Method of Agile AI-Driven Development)。

氛圍開發(Vibe Coding)的問題:

當需要開發可擴展且能真正交付成果的複雜應用程式時,氛圍開發(Vibe Coding)程式碼品質和結構可能越開發越混亂,最終可能只是一個巨大的 HTML 檔案塞滿了 JavaScript 和各種函式庫,缺乏應用程式結構考量。這種開發方式容易失控,導致修復一個問題卻又破壞另一個的無限循環,使得專案難以維護和迭代。此外,又快速消耗 AI 額度,例如 Cursor 的使用額度可能在一天或兩天內用完。由於缺乏工作流程和穩定性,Vibe Coding 不適合建立複雜應用程式,也難以在其基礎上持續添加新功能。


由 NotebookLM 生成資料 / Mermaid 生成圖片

由 NotebookLM 生成資料 / Mermaid 生成圖片


敏捷 AI 驅動開發(BMad-Method)步驟:

第一步:業務分析師 (Business Analyst, BA)

先別急著一開始就請 AI 寫程式,使用 GPT-4 或 Claude 的深度思考模式,從與 AI 對話中釐清腦中的想法,讓想做的事更具體、深挖重要各項細節。之後每一步驟要建立專案資料夾存成 Markdown格式 讓 AI 彼此溝通協作。

    • 任務:使用 AI 的「深度思考模式」,透過與用戶來回對話,引導出所有專案細節。
    • 成果:一個經過良好提煉、準備交付給專案經理的詳細構想。

第二步:專案經理 (Project Manager, PM)

將 BA處理好的資料給,PM角色的 AI 去研究市場上類似的競爭產品、搜尋一些設計參考、找出最佳實踐方案,規劃 MVP (最小可行產品),將上述撰寫成一份完整的產品需求文件 (PRD)。

    • 任務:使用 AI 的「深度研究模式」(如 OpenAI 或 Gemini 的深度研究)進行廣泛研究。這包括分析您的想法、搜尋網路、尋找類似應用程式、風格和技術。
    • 成果:一份產品需求文件 (PRD),詳細說明了要建立的應用程式以及 MVP (最小可行產品) 的目標。這確保了從一開始就擁有清晰的產品路線圖,能夠增量式地開發,避免大規模變更。

第三步:系統架構師 (System Architect, SA)

架構師根據上述步驟的文件,來規劃架構文件。選用什麼程式語言和框架來開發、釐清會需要哪些函式庫、資料庫設計、資料模型。並基於安全性考量,規劃基礎設施和部署的策略。

    • 任務:結合 BA 和 PM 的輸出,設計詳細的技術架構文件。該文件會明確指出技術選擇(語言、函式庫)、應用程式頁面、轉換邏輯、安全性、基礎設施、部署、資料庫架構和資料模型等所有代理所需的細節。
    • 成果:一份詳細的技術路線圖,為整個專案的開發提供明確指引。

第四步:產品負責人 (Product Owner, PO)

把架構師的技術規劃,轉換成可執行的任務清單。將大功能拆解成一個各的小任務,並依照邏輯順序排列任務,確保每個任務都具體與詳細。讓任務難度即便是初級開發人員也能逐步執行。

    • 任務:根據架構師和專案經理的輸出,利用「高級思考模式」制定一份細粒度且按邏輯順序排列的任務清單。這些任務必須足夠清晰,即使是初級開發人員也能逐一實施,從頭到尾建立起應用程式功能,不遺漏任何手動步驟或設置。
    • 成果:一份詳盡且可執行的任務清單。

第五步:敏捷教練 (Scrum Master, SM)

把所有資訊、PRD、架構文件和任務清單整合,然後將其轉化為一系列的 Epic (功能群組) 和 Story (使用者故事) 準備交付給開發代理。

    • Epic (功能群組):邏輯相關的功能集合。
    • Story (使用者故事):是更小的、細粒度的工作單元,其內容包含所有開發代理在新聊天執行緒中完成該任務所需的上下文和細節(例如資料模型、檔案位置、專案結構、PRD 相關脈絡以及先前 Story 的完成情況)。每個 Story 都保持獨立和完整,有助於保持脈絡的乾淨,節省 AI token 成本。

第六步:寫程式開發階段 (Developer Agent with Cursor)

文件準備:把所有文件轉換成 Markdown 格式,放在專案的 AAI 資料夾中。每個 Story (使用者故事) 都是獨立檔案,並且按順序編號,如 001-setup-project.md、002-database-config.md...。

Story 實施流程:

1. Story 檔案排序與選取:在 Cursor 中,所有 Story 檔案都是有序排列的。AI 開發代理會一次專注於一個 Story 進行處理。

2. 開啟全新的聊天對話框:以確保前後脈絡乾淨,避免混亂並節省 token 成本。分析每個足夠詳細的 Story ,包含新聊天對話框中完成該任務所需的所有脈絡和細節。需的所有脈絡和細節。

3. 逐步實作程式開發:逐步實作功能,邊寫程式邊和 AI 解釋。

4. 執行自動化測試確保功能正常:開發代理會對當前的 Story 進行測試。如果測試通過,程式碼會被推送到版本控制。如果測試不通過,開發代理會持續進行修正,直到 Story 完成並通過測試為止。完成後,將持續推送更新。

5. 持續測試與迭代:每個 Story 完成時都會建立對應的測試,目標是達到 80-90% 的測試覆蓋率。這確保了在新增功能時,不會破壞現有的程式碼,保證了應用程式的穩定性和可靠性。

    • 單元測試:確保個別函式正常運作
    • 整合測試:確保不同模組能正確協作
    • 端到端測試:確保完整使用者流程沒問題

( 以上由 NotebookLM 總結資料後,我再並作補充與調整更口語化的句子 )

小結:

Brian 在影片中最後提到無論是簡單的待辦事項,或是非常複雜的 SaaS 應用程式,都能透過「敏捷 AI 驅動開發方法」,在開發流程前期,先釐清完整清晰的產品目標與嚴謹的規劃文件,讓 AI 代理高效、有條理地逐步打造可擴展、可維護的軟體產品。

相關資料:

由 elmo.Chat 生成影片總結

由 elmo.Chat 生成影片總結




留言
avatar-img
留言分享你的想法!
avatar-img
林位青的沙龍
91會員
56內容數
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
這篇內容,將會講解什麼是方法,以及與方法相關的知識。包括定義Method、Method Variable 方法變數、跨區使用Method、使用函式時要注意括號。
Thumbnail
這篇內容,將會講解什麼是方法,以及與方法相關的知識。包括定義Method、Method Variable 方法變數、跨區使用Method、使用函式時要注意括號。
Thumbnail
程式設計與技術能力 在現代社會中的重要性越來越明顯,尤其是在人工智能(AI)和自動化技術迅速發展的背景下。理解編程語言,如Python、R等,以及熟悉相關技術架構和工具,能夠幫助個人在這樣的環境中更好地工作。這種能力不僅對技術專業人士至關重要,也對非技術領域的人士日益重要,因為基礎的程式設計知識已
Thumbnail
程式設計與技術能力 在現代社會中的重要性越來越明顯,尤其是在人工智能(AI)和自動化技術迅速發展的背景下。理解編程語言,如Python、R等,以及熟悉相關技術架構和工具,能夠幫助個人在這樣的環境中更好地工作。這種能力不僅對技術專業人士至關重要,也對非技術領域的人士日益重要,因為基礎的程式設計知識已
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
因為最近想嘗試編碼風格,於是就選了一套比較"不嚴格"的輔助工具來摸索。 編輯器 VS CODE 框架 VUE3 打包工具 VITE 編碼風格 Standard 環境 version { "nodejs":"v18.18.0", "npm":"9.8.1" }
Thumbnail
因為最近想嘗試編碼風格,於是就選了一套比較"不嚴格"的輔助工具來摸索。 編輯器 VS CODE 框架 VUE3 打包工具 VITE 編碼風格 Standard 環境 version { "nodejs":"v18.18.0", "npm":"9.8.1" }
Thumbnail
這篇文章分享如何透過免費電子郵件課程提供價值,建立信任,並引導訂閱者購買付費產品。透過豐富內容、獨特風格,以及AI的幫助,讓你的需求看起來更具吸引力。
Thumbnail
這篇文章分享如何透過免費電子郵件課程提供價值,建立信任,並引導訂閱者購買付費產品。透過豐富內容、獨特風格,以及AI的幫助,讓你的需求看起來更具吸引力。
Thumbnail
這篇要搭建一個同時生成寫實照片跟動漫風格圖片的工作流,還可以幫線稿上色。
Thumbnail
這篇要搭建一個同時生成寫實照片跟動漫風格圖片的工作流,還可以幫線稿上色。
Thumbnail
這篇文章探討了在軟體開發中的技術債可能來自哪些原因,以及如何自動化偵測與修復技術債。作者透過分享不同情境下的技術債選擇,提供了對於技術債的思考與建議,針對開發人員在需要做出無奈的技術決策時,提供了一些建議。此外,還提供了一些在做出技術決策時的方法,如保留抽象層和避免vendor lock-in。
Thumbnail
這篇文章探討了在軟體開發中的技術債可能來自哪些原因,以及如何自動化偵測與修復技術債。作者透過分享不同情境下的技術債選擇,提供了對於技術債的思考與建議,針對開發人員在需要做出無奈的技術決策時,提供了一些建議。此外,還提供了一些在做出技術決策時的方法,如保留抽象層和避免vendor lock-in。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News