AI 沒有淘汰設計,只是讓糟糕的設計變貴了
前言:我們正站在一個關鍵的分岔路口
2026 年的軟體產業,幾乎所有對話都圍繞著同一個命題:當 coding agents 變得足以承擔大部分開發工作,人類在軟體生命週期中的角色究竟是什麼?更尖銳的問法是:當 AI 能自己寫程式、自己測試、自己部署,良好的軟體設計還重要嗎?
市場上出現了兩種極端聲音。一邊主張把 agents 牢牢控制,逐行審查;另一邊則鼓吹將開發全權委派給 agents,人類只需撰寫規格(specs),程式碼終將淪為一個「短暫存在的實作細節」。
我們對這兩種立場都有根本性的保留。原因不在於對 AI 能力的懷疑——恰恰相反,我們已在生產環境中深度整合 agents,並親眼見證其巨大的加速效應。正是因為我們用得夠深、看得夠遠,才更加確信:放任 agents 自主運作,是企業在數位資產上最危險的賭注之一。
這份備忘錄的目的,是為我們的客戶建立一個清晰的決策框架:在 AI 時代,什麼樣的工程紀律能讓軟體投資持續增值,而非快速折舊。
Agents 學的是我們最好的那一面
今天的 coding agents,是在人類數十年累積的程式碼上訓練出來的。
這不是一個技術花絮,而是一個關乎商業結果的核心變數。agents 學習的對象,不是隨機拼湊、恰好能跑出正確輸出的混亂程式碼,而是那些經過深思熟慮的抽象、具備清晰邊界的模組、命名一致且意圖明確的函式與類別。換句話說,人類在軟體工程上累積的所有設計智慧,正是 agents 做出可靠判斷的基礎。
這意味著什麼?
當一個系統的內部品質開始劣化——模組高度耦合、商業邏輯重複散落、命名失去一致性——agents 的行為也會隨之劣化。更多錯誤假設。更多 context 消耗。更多不必要的除錯路徑。更高的錯誤率。更多人工介入。
劣質設計的成本,不會因為消費者從人類變成 AI 就消失;它只是換了一張帳單。 過去,技術債是抽象的、難以量化的;現在,它可以精確地反映在團隊每月的 AI 服務費用與重工工時上。這是軟體史上第一次,我們可以為「糟糕的設計」貼上明確的價格標籤。
對企業而言,這是一個策略信號:維護高品質的程式碼庫,不再只是工程師的職業尊嚴問題,而是一項可量化、可追蹤、能直接影響損益表的商業決策。
完全自主路線的三個結構性風險
我們不主張對 agents 進行微觀管理,但經過大量實務觀察,我們識別出三項純 agentic 工作流程無法自我修正的深層問題。我們在這裡替它們命名,因為叫不出名字的東西就管不了。這些不是暫時的技術限制,而是架構在非確定性系統之上的結構性風險。
熵的曲線變陡了
軟體熵(software entropy)——系統隨著時間推移逐漸劣化的趨勢——不是新概念。但 agents 把這個過程加速到前所未見的程度。
人類工程師在一定程度上會遵循隱性的品質直覺:看到重複的邏輯會想抽離、發現命名不當會順手修正、注意到架構偏離原始意圖時會停下來重新評估。agents 沒有這種直覺。它們的目標函數是「讓功能通過測試」,而不是「讓系統在六個月後仍然易於修改」。它們會找到一切可能的捷徑來達成綠燈建置,而不考慮這些捷徑對長期可維護性的影響。同一條商業規則被寫成第三份時,agent 不會皺一下眉——它沒有眉頭可皺。
更關鍵的是,agents 引入變更的速度遠高於人類。 一個人類團隊可能需要三週才能累積的設計偏差,agents 可以在三天內完成。當技術債以數量級加速複利增長時,等到問題顯著影響業務速度(velocity)時,修復成本早已遠超初期節省的時間。
這是我們為客戶把關的第一道防線:在 AI 快速產出的同時,建立系統性的設計審查節奏,在熵的曲線陡升之前介入。
規格的陷阱
對第一個風險的直覺性解法是:制定極度詳細的設計規格,要求 agents 嚴格遵守——架構約束、模組邊界、錯誤處理策略、命名慣例、效能基準,無一遺漏。
這個思路的終點會在哪裡?
當一份規格精確到足以消除自然語言的固有含糊性時,它就開始與程式碼本身難以區分。你只是換了一種語法在寫程式——而且是一種比專業程式語言更缺乏精確性、驗證能力與工具支援的語言。
自然語言富有表達力,但極不善於精確。過去的軟體開發中,將模糊需求轉化為不含糊的實作,正是工程師的核心價值之一。如果為了追求速度而將程式碼黑盒化,這個「消除含糊」的責任並不會消失,只會被推到規格層,以一種更不可靠的形式存在。
我們的路線是:不把程式碼當成需要隱藏的敵人,而是當成與 agents 協作的共同語言。 在我們的實務中,工程師與 agent 以程式碼作為精確、不含糊的溝通媒介,在配對過程中逐步收斂設計意圖,而不是在規格文件中試圖預見一切邊界條件後,才讓 agents「自由發揮」。
機率機器
過去軟體產業經歷的每一層抽象——從組合語言到高階語言、從實體伺服器到虛擬機器再到容器——都有一個共同前提:它們是確定性的。 相同的輸入,永遠產出相同的輸出。
Coding agents 從根本上打破了這個前提。要求同一個 agent 實作同一個功能五次,你很可能得到五種不同的架構選擇、命名策略和錯誤處理方式。
這不是技術缺陷,這是這類系統的本質。agents 的決策來自於將 context 和假設輸入一個內部機制不透明的模型,其輸出本質上是機率性的。前兩個風險是助燃劑,這一個是燃料本身。這意味著,agent 所做的每一個設計選擇,都需要一個具備判斷力的人在其輸出側進行評估——這個選擇對系統整體是否合理?是否與技術路線一致?在可維護性、效能與開發速度之間的取捨是否恰當?
這項判斷工作不是「程式碼審查」的延伸,它是更高層次的架構治理,無法被自動化,也不應該被外包。
設計活在程式碼裡,不在文件裡
以上分析指向同一個根本結論:良好的軟體設計不是一個可以被一次性指定、然後交由 agents 無限自主執行的屬性。 設計存在於持續的回饋與調整之中,隨著業務需求的演進而不斷被重新協商。
更重要的是,真正的設計判斷必須在程式碼層級進行。耦合在哪裡發生?內聚在哪裡崩解?哪個抽象已經過度泛化?哪兩個概念應該合併?這些問題的答案,不存在於架構圖或設計文件中——它們只存在於程式碼的細節裡。程式碼是檢驗任何設計假設的終極石蕊試紙。
即使 agents 在未來承擔了大部分的程式碼產出,人類仍然需要下降到這個層級來評估系統的健康。這不是微觀管理,而是治理責任。
四項承諾,一個成功的定義
我們將上述洞察轉化為四項具體的承諾。
速度與品質不是取捨,是兩具引擎。 我們不要求客戶在「快速交付」與「長期可靠」之間二選一。agents 負責加速產出與消除重複勞動,我們的工程師負責架構判斷、設計治理與品質門檻。兩者不是競爭關係,而是精心設計的協作體系。
技術債不再是一筆糊塗帳。 我們為每個專案建立可量化的健康指標——context 消耗趨勢、agent 錯誤率、人工介入頻率、開發速度曲線——讓技術債從一個模糊的工程焦慮,變成一份能與財務長討論的清楚報表。
為雙重閱聽對象設計。 未來的軟體,將由人類與 agents 共同維護。這不是預測,而是正在發生的現實。我們設計的每一個系統,都同時考量兩種協作者的認知模式——既能讓人類快速理解,也能讓 agents 有效導航。這不是額外的成本,而是下一代軟體的基礎競爭力。
第二年的表現,才是真正的考驗。 任何團隊都能用 agents 在一個月內從零產出一套可運作的系統。真正的差異,體現在上線一年後、經歷五十次功能迭代之後,系統是否仍然能保持穩定的修改速度與可控的維運成本。我們的工程方法,就是以這個長期的成功定義為出發點。
結語:程式碼不會消失
有一種流行的論調認為,AI 將使程式碼變成一個黑盒子,人類只需要關心輸入(規格)與輸出(可運作的軟體)即可。
我們認為這個論調不只在技術上站不住腳,在商業上也是危險的。程式碼不會消失,它會繼續作為我們檢視、批判、改進與治理的對象——無論變更是由人類手工完成、由 agents 生成,還是兩者協作的產物。
真正的轉變不在於「誰寫程式碼」,而在於我們對「良好設計」的定義必須擴展:從「讓人類容易修改」,升級為「讓人類與 AI 共同容易修改」。這是一門新的學問,也是一個新的競爭維度。我們已經身在其中,也準備好帶領客戶一起穿越這個轉折點。
歡迎與我們的團隊展開對話,探討如何為您的下一個關鍵系統,建立一個真正經得起 AI 時代考驗的技術基礎。