什麼是 SDD?
SDD(規格驅動開發 / Spec-Driven Development)是一種 Vibe Coding/ AI Coding 的實踐,希望能夠在 Vibe Coding 的浪潮中撥亂反正,強調以「規格為核心」來驅動 AI 盡可能做到「高精度」的開發。
為何要實踐 SDD?
SDD 讓你能夠不再需要與 AI 無效率地一來一往地來回下 Prompt 修 Code,而是可以專注於業務邏輯,而不是重複性的 Prompt Engineering 工作。
我們致力於推廣 SDD 方法論,幫助台灣的開發者及企業快速掌握這項未來技術,提升開發效率和程式碼品質。
- 關注點左移:全力寫好規格,功能便能開發到位 → 企業軟體產值百倍
- 減少大量 Human Error → 減少 90% 的錯誤和 bug
- DevOps:自動化測試和部署流程
Feature: 優惠券折扣計算
Scenario: VIP 會員套用多張優惠券
Given 一位 VIP 會員的購物車內有以下商品:
| 商品 | 價格 | 數量 |
| 筆記型電腦 | 30000 | 1 |
| 滑鼠 | 1500 | 1 |
And 該使用者擁有一張 "10% 折扣" 的百分比優惠券
And 該使用者擁有一張 "折抵 500 元" 的固定金額優惠券
When 使用者在訂單上套用這些優惠券
Then 最終總金額應為 27850
可是,SDD 並不單純,你很有可能犯下以下錯誤
如果無法掌握核心精神,導入 SDD 往往會落入以下陷阱,導致效率不增反減:
誤解為「文件驅動」
以為只是「撰寫一堆文件」就叫做「規格驅動開發」,那為何不稱之為「文件驅動開發」就好?幹嘛又要發明一個新名詞 SDD?
規格無限制:對系統分析專業一知半解
對系統分析專業一知半解,無法分清楚業務規格和各種技術規格,把 SDD 變得和一般 Prompt/Context Engineering 沒兩樣。
團隊導入與衡量困難
難以導入團隊,以為寫一堆 PRD、User Story 就叫 SDD,但對於 AI 開發及 AI 與工程師的共識精度卻毫無計算標準。
缺乏工程文化上的信任
工程師不想寫文件,總是讓 AI 產文件,卻怠於判斷文件的精度。長久以往,大家對 SDD 半信半疑,燒一堆 AI Tokens 卻燒不出成效。
方法論的根本:你必須了解「規格的光譜」
要實踐 SDD,你必須先掌握「規格的光譜」。規格是有光譜的,你必須定義清楚「光譜兩端」的規格分別有什麼性質。
DSL-Level 可執行規格
- 由 BDD 定義,為測試程式碼的抽象,隱藏技術細節只保留關鍵語義,門檻低,容易理解。
- 要求句型一致,容易歸納出 DSL,且攜帶資料舉例說明,能夠高度同步人和 AI 的認知,擁有最良好的跨職能協作性質,不同角色都能釐清業務共識。
- 由於是測試的抽象,人類不必自己寫測試,能讓 AI 產出對應測試程式,自行進行測試驅動開發,做到 80% 自動化開發。
- 人類仍需仔細 Code Review AI 寫的測試,若 AI 測試寫錯,那也是徒勞。
Scenario: 成功建立訂單
Given 客戶在購物車中放了 "汽水 x 2"、"衣服 x 1"
And "汽水" 每項 30 元
And "衣服" 每項 120 元
When 客戶 checkout 購物車
Then 訂單應該建立成功
And 訂單的總價為 180 元
SDD.TW 致力於構建軟體開發的未來
SDD.TW 相信,未來 Vibe Coding / SDD 的趨勢,一定是「DSL-Level 可執行規格」+「ISA-Level 可執行規格」的組合實踐和技術。
想像一下,未來產品開發的流程長這樣
產品開發產值百倍:全員 SDD 協作
- 在產品開發生命週期中,透過《Spec by example 工作坊》讓 PM、QA、設計師、工程師等角色共同協作來制定各項 User Story 的「DSL-Level可執行規格」。
- 透過技術,直接走查 User Story 每一項 Example 是否符合全體共識及認知,如果沒有,立即同步共識。
- 同時,從中收攏業務專用的 DSL,統一團隊在每一份用詞定義及測試意圖的理解,同時凝聚企業及產品願景。
- 願意花大量時間溝通和釐清共識,因為一但會議結束,剩下只要部署規格,透過 SDD.OS AI 技術 就可以做到全自動化開發。
工程師不會被取代,而是轉型
- 工程師在會議中,透過 SDD.OS 技術,把每一句 DSL-Level 的 Spec 翻譯成「技術實現」,立即讓全體角色看見其實踐上的 AI 成本和技術意義。
- 會議後,工程師仍是骨幹,透過「DSL 定義語言」將會後產出的「DSL-Level 可執行規格」瞬間直譯成可被技術實現的「ISA-Level 可執行規格」。
- SDD.OS 提供 dry-run 模式,協助工程師分析開發成本 (e.g., Tokens),讓工程師持續優化 ISA(指令集架構)。
規格寫好,交給 SDD.OS AI
- SDD.OS AI 會根據規格,產生測試意圖 100% 正確的測試程式。
- 測試的程式架構遵循「會尖叫的架構」原則(來自 Clean Architecutre),實現超高測試程式碼的拓展性。
- 既然測試 100% 意圖正確,AI 會持續開發直到通過所有測試,因而實作 100% 功能正確的程式。
- 在測試保護下,工程師可輕鬆指導 AI 持續重構架構,重構後可持續回歸測試。
SDD.OS 的技術
水球軟體學院所推廣的技術原理,能在「功能性需求」上能做到 100% 正確全自動化開發,而我們認為這種「高精度」的規格實踐,才是 SDD 的未來。
請看看我們的技術實踐介紹,目前這項技術只開源給研究組織的社群成員(任何人都可以加入),直到技術成熟後,我們才會開放原始碼給所有的企業/個人無償商業使用。