術語

定義層

定義層是軟體棧中承載一家企業自身宣告的那一層——有哪些物件、它們如何關聯、誰可以對它們做什麼、哪些步驟必須走審批——這些宣告以該組織自己持有的版本化檔案存在,位於執行它們的執行時層之上,也在任何一家恰好為其提供了引擎的廠商之外。

又稱 定義層與執行時層執行時層業務定義層

在實踐中

兩層,兩件不同的事。定義層回答的是「關於這家企業,什麼是成立的」:一個商機有金額和客戶,銷售可以編輯它但永遠不能刪除,折扣超過三成要走財務。執行時層回答的是「週二下午高負載時這些怎麼被執行」:儲存、查詢規劃、會話處理、快取、每次請求上的權限檢查、以及事後那條審計記錄。前者只屬於這一家公司,業務變了它就變;後者是通用基礎設施,工程演進了它才變。

一層最後落在哪一側,不是審美問題,這個實驗業界已經做過好幾遍了。資料庫廠商殺得你死我活,而 SQL 這門語言本身始終是公開的。容器執行時打了一仗,最後收斂到同一個開放映像格式上。微軟開放了 Language Server Protocol,於是所有編輯器都採納了它。OpenTelemetry 把可觀測性的資料模型交給了一箇中立基金會。這個模式反覆出現,是因為一層被許多相互獨立的參與方依賴之後,就無法繼續私有於其中一方——否則它恰好會重新制造出當初讓所有人想要這一層的那種碎片化。

AI 抬高了「業務定義落在這條線的哪一側」的賭注,因為它成倍增加了讀這一層的人。應用要讀定義。決定自己能呼叫哪個工具的 Agent 要讀,覆盤發生了什麼的審計系統要讀,為下個季度提改動的編碼助手要讀,財務團隊沒打招呼就買回來的那個分析工具也要讀。如果這些宣告住在某一家廠商的控制台裡,上面每一個讀者都需要那家廠商的配合——而 Agent 連工單都提不了,它根本讀不到。

中立不是免費的,這筆交換應該擺出來而不是預設掉。被好幾方依賴的一層,演進速度必然慢於一家公司的內部格式;相容性變成每次改動的約束,大家能達成一致的那個版本,總是落後於某一家廠商本可以直接釋出的版本。中立本身也並不自動值錢:一個公開發布、卻只有一個商業引擎能執行的定義格式,等於「可移植的檔案 + 被鎖住的系統」。這個主張的強度,永遠只等於兩半里較弱的那一半——一份你能讀懂並帶走的定義,加上一個你確實能自己運維的執行時層。

這個術語用在哪裡

真正用到這個術語的頁面與文章。