在專案、架構、團隊協作這些工程師的日常戰場裡,我們面對的挑戰其實和古代戰場沒有太大差別:資源有限、需求多變、敵我態勢瞬息萬變。這篇文章把《司馬懿十辯》重新翻成工程語言,讓兵法不再只是歷史故事,而是能直接用在專案管理、架構設計、技術決策上的實用原則。希望這些「工程師版兵法」能讓你在下一次專案開打時,多一點判斷、多一點餘裕,也多一點勝算。
司馬懿《孫子兵法十辯》
以孫武為經,以司馬懿為緯,以魏晉戰例為證。
本版本為依史實、兵法原則、司馬懿戰略風格所重建之版本。
一、勢辯:勝負在勢,不在力
孫子:「兵勢如水。」
司馬懿: 勢成則弱者強,勢敗則強者弱。將之道在造勢,而非爭力。
戰例: 北伐初期,守勢制蜀,使敵勢盡而退。
二、權辯:兵法貴權,不貴法
孫子:「兵者,詭道也。」
司馬懿: 法可參,不可守;權可變,必須變。
戰例: 上庸反向奪敵後路,使敵自潰。
三、奇正辯:奇正互根,非二法也
孫子:「奇正之變,不可勝窮。」
司馬懿: 正以立不敗,奇以取必勝。奇正一體。
戰例: 曹爽政變時示弱(正)奪權(奇)。
四、虛實辯:攻其虛,避其實
孫子:「攻其無備。」
司馬懿: 虛實不在強弱,而在備與不備。
戰例: 五丈原避蜀備,守其虛。
五、分合辯:兵無常勢,分合在時
孫子:「分合之變,無窮。」
司馬懿: 勢合則合,勢分則分。能使敵分者勝。
戰例: 多次逼蜀分兵守糧,使敵疲勢。
六、速戰辯:速者非急,先者為速
孫子:「兵貴勝,不貴久。」
司馬懿: 速戰非急攻,而是先奪主導。
戰例: 先奪補給線取速,不急攻主力。
七、地形辯:地形者,勢形也
孫子:「地形者,兵之助也。」
司馬懿: 地形非山川,而是敵我態勢。
戰例: 陳倉利用地勢逼蜀不得展開。
八、將道辯:將之道,在藏鋒
孫子:「將者,智信仁勇嚴也。」
司馬懿: 智不露,勇不躁,仁不弱,嚴不暴。
戰例: 對諸葛亮示弱不出,以藏鋒制敵。
九、兵心辯:兵心者,勝負之本
孫子:「三軍可奪氣。」
司馬懿: 兵心散則敗,兵心聚則勝。
戰例: 公孫淵之戰以心理戰瓦解敵心。
十、勝負辯:勝負在戰前,不在戰中
孫子:「勝兵先勝而後求戰。」
司馬懿: 勝負之判在戰前之勢、權、奇正、虛實。
戰例: 曹爽政變前已奪兵權、民心、朝勢,一戰而定。
工程師能看懂的《司馬懿十辯》
把兵法翻譯成工程師語言:
架構、流程、例外處理、環境變數、團隊協作、專案管理。
一、勢辯 = 戰場的架構設計
**子:**不要跟敵人比硬體規格(兵力),要比架構優勢(勢)。
**意:**架構設計對了,弱系統也能跑贏強系統。
二、權辯 = Runtime 決策,不是 Compile-time 規則
**子:**兵法不是規格書,是 runtime 策略。
**意:**能動態調整策略的系統才不會死。
三、奇正辯 = 主流程(正)+例外流程(奇)
**子:**正是穩定主流程,奇是例外處理。
**意:**主流程保證不掛,例外流程決定能不能贏。
四、虛實辯 = 打漏洞,不打防火牆
**子:**不要打敵人最硬的地方。
**意:**找沒打 patch 的地方下手。
五、分合辯 = 微服務拆合策略
**子:**拆或合不是宗教,是時機。
**意:**能讓敵人拆散、讓自己合起來,就是贏。
六、速戰辯 = 先搶主導權,不是先衝
**子:**速戰不是快,而是先。
**意:**先搶到主導權,你就能定義遊戲規則。
七、地形辯 = 系統環境就是地形
**子:**地形不是地理,是環境變數。
**意:**能讓環境變數對你有利,就是地形優勢。
八、將道辯 = 不要暴露你的能力
**子:**工程師的強,不是一直秀,而是關鍵時刻才出手。
**意:**平常示弱,敵人就不會防你。
九、兵心辯 = 團隊士氣是核心資產
**子:**士氣比技術重要。
**意:**士氣散了,什麼架構都救不了。
十、勝負辯 = 專案成敗在 Kickoff,不在 Sprint
**子:**專案在開始前就決定成敗。
**意:**需求、架構、資源、風險都先處理好,後面就只是執行。
參考資料: