軟體工程缺失的角色:為什麼我們需要"代碼監理"

馬工 ·

原文发布于 mp.weixin.qq.com

Lovable 估值數十億,被稱為”歐洲增長最快的公司”。結果安全研究者用了 47 分鐘,從它的應用裡挖出了用戶的債務金額、家庭地址、API 密鑰。

如果一棟樓有 10% 的房間隨時可能塌,沒人敢叫它”成功”。但軟體行業可以。

軟體工程有產品經理、架構師、開發、測試、運維。看起來什麼都有了。但有一個角色,土木工程有,軟體工程沒有——一個獨立的、有否決權的、按規範驗收的人。

土木叫它”監理”。

這是我和李雪涛昨天在線討論的一個觀點。

什麼是監理?

監理是獨立於設計方和施工方的第三方。他不屬於任何一個執行團隊,只按規範驗收每道工序。不簽字,下一階段不能開始。

李工講了一個案例:基坑設計 8 米深,施工隊少挖了 0.5 米。監理拿尺子量,死活不給過。最後又挖了 0.5 米才放行。

為什麼監理敢這麼硬?因為他簽字要負法律責任。少 5% 也許能公關掉,少 50% 他不敢簽——簽了要坐牢。

土木行業有 1100 多項 ISO 標準,連安全帽顏色都有國標。監理驗收,有據可依。

軟體為什麼沒有監理?

表面上看,軟體也有類似角色:QA、Code Review、安全審計。但對照一下就知道不一樣。

QA 屬於同一個項目組,和開發利益綁定。項目趕進度的時候,QA 說”必須改完才能上線”——他會被壓著放行。

Code Review 是建議性的,不是流程強制的否決權。

安全審計往往是事後抽查,不是每道工序都驗收。

更根本的問題:軟體行業沒有法律約束。

這是委託-代理問題的經典體現:當執行者和決策者利益不一致時,沒有獨立監督,品質就無法保證。土木用監理解決了這個問題。軟體沒有。

2023 年 11 月,滴滴 K8s 升級出問題,系統崩了 10 個小時。日均 3130 萬單的平台完全癱瘓,損失超過 4 億交易額。法律後果?零。

工地腳手架倒了,監理、施工方、設計院都可能被追責。軟體崩了?輿論譴責幾天就過去了。

沒有監理的代價

Veracode 2025 年的報告顯示,45% 的 AI 生成程式碼存在安全漏洞。Java 程式碼失敗率高達 72%。

Lovable 的 1645 個應用裡,170 個可以讓任何人訪問用戶隱私。它的內置安全掃描只能抓住 66% 的問題。

軟體行業呢?前些年還有公司把密碼明文存資料庫,沒人管。

AI 時代的機會

以前不做嚴格驗收,有一個現實原因:太貴。每道工序都評審,進度受不了。專門設一個獨立驗收團隊,人力成本扛不住。而且人類 QA 可以被忽悠——不懂技術只能做形式檢查,懂技術又容易和開發站在一起。

AI 改變了這個等式。

李工說了一句話讓我印象很深:“AI 的遵從性比人強。讓 AI 多執行幾次,讓五個 AI 互相 review,落地程度很高。”

執行規範的成本幾乎為零,多跑幾輪只是多花點 token。AI 不會被老闆催著放行。

規範也在復興——GitHub 開源了 Spec Kit,推”先規範後編碼”。這本質上就是土木”圖紙+圖例”的軟體版。

代碼監理應該長什麼樣?

如果借鑑土木,幾個要素少不了。

首先得獨立。不能屬於開發團隊,不能被項目進度綁架。可以是一個獨立的 Agent,可以是一個服務,但不能是”自己人”。

其次得有否決權。不是”建議你改一下”,是”不通過就不能合併、不能部署”。流程強制,不是靠自覺。

然後是按規範驗收。代碼監理不需要懂業務邏輯,只需要對照規範逐項檢查。土木監理也不用會砌牆,會量尺寸就行。

最後是可追溯。每次驗收有記錄,出了問題能回溯。

現在已經有一些碎片:pre-commit hooks、CI 檢查、安全掃描。但都是可選的,沒有否決權。真正的代碼監理,得把這些整合起來,變成一個硬約束。

結論

軟體工程缺一個角色:獨立的、有否決權的驗收人。土木有,叫監理。軟體沒有,所以品質靠運氣。

AI 讓這個角色在成本上變得可行。以前做不起的事,現在可以做了。

但還有問題沒答案:軟體的”規範”應該長什麼樣?誰來定?在沒有法律約束的情況下,否決權怎麼才能真的有效?

在你的團隊裡,誰扮演監理的角色?還是根本不存在?

引用來源

  1. Veracode 2025 GenAI Code Security Report
  2. Engprax: 268% Higher Failure Rates for Agile Software Projects
  3. Semafor: Lovable security vulnerabilities
  4. Agent管理學論壇第13期:向土木學工程(李工/雪涛)

image-1