軟體工程缺失的角色:為什麼我們需要"代碼監理"
原文发布于 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 讓這個角色在成本上變得可行。以前做不起的事,現在可以做了。
但還有問題沒答案:軟體的”規範”應該長什麼樣?誰來定?在沒有法律約束的情況下,否決權怎麼才能真的有效?
在你的團隊裡,誰扮演監理的角色?還是根本不存在?
引用來源
- Veracode 2025 GenAI Code Security Report
- Engprax: 268% Higher Failure Rates for Agile Software Projects
- Semafor: Lovable security vulnerabilities
- Agent管理學論壇第13期:向土木學工程(李工/雪涛)
