絞殺榕式搬家:系統換底不重寫

在原系統內逐類資料換底、逐段驗證、保留舊路徑的漸進遷移策略;比重寫風險低,過程中系統一直可用。

分享
絞殺榕式搬家:系統換底不重寫
「絞殺榕」是一種真實存在的樹:它的種子落在別棵樹上發芽,氣根順著宿主樹往下長、慢慢把宿主整個包住,最後宿主枯掉,榕樹自己站著——外形還是一棵樹,但裡面已經完全換成新的了。

軟體界借這個意象命名了一種系統改造策略(strangler fig pattern,出自 Martin Fowler),核心想法是:要把舊系統換掉時,不要砍掉重練,而是讓新系統一小塊一小塊地「包住」舊系統,每包一塊就驗證一塊,直到舊的自然沒人用了。

適用情境

要把系統的資料層整個從舊平台搬到新平台(例如為了省授權費+統一架構)。直覺做法是「重寫一套新的」,但重寫的風險是:新舊功能對不齊+長時間不能上線。

實際成果

五天搬完,六百多筆資料逐筆核對筆數吻合,過程中系統一直可用,同事無感。

三個前提條件

  • 搬家前先有測試安全網——當時有一百多條自動測試,每換一段就能立刻知道有沒有弄壞東西。
  • 舊路徑保留到新路徑穩定才清——隨時可以切回去,就不怕搬到一半出事。
  • 每階段有可驗證的完成標準——筆數對、功能過,不是「感覺搬完了」。

決策心得

「重寫」聽起來乾脆,但漸進搬雖然瑣碎,風險小很多。跟 AI 討論遷移方案時,可以直接問「能不能用絞殺榕的方式分段搬」。

相關條目

Read more

當軟體小白開始遇到資安問題

當軟體小白開始遇到資安問題

前端的權限處理好了,那後端呢? 花了快一天的時間,才弄清楚我到底在修什麼issue,這個資安問題分成兩部分。 第一個是前端寫好的權限,但使用者可以透過網頁開發者工具(F12)去修改自己的身分,把自己從一般使用者改成主管,來獲得操作權限。 要解決這個問題有三個步驟要設定: 1. 資料行安全性設定檔,加成員( powerplatform > 環境 > XXXX > 設定>資料行安全性設定 > 使用者) 2. 啟用資料行安全性( Power Apps > 資料表 > 使用者 > 資料行 > 點擊欲修改的顯示名稱 > 進階選項) 3. 回到資料行安全性設定檔,編輯資料行權限(讀取、更新、建立) 如此一來,有更新、建立權限的人員,才能去修改該資料行的值。 確保了後端的使用者權限不會被亂改後,

By yuchang23