「原廠說這套系統不再維護了,但我們每天還有 400 張單靠它跑。」這是今年最常接到的電話。對方多半有一套 8 到 12 年前發包的系統,跑在早已終止支援的環境上,原開發者失聯,庫裡躺著 60 萬筆交易。老闆怕的不是花錢,是「換的那天出不了貨」。
一、該做與不該做
系統能跑又沒有資安風險,年維護費低於 15 萬,它是資產。
適合啟動
- 環境已過原廠支援期(如 PHP 5.x/7.x 全面 EOL),漏洞無法修補
- 原開發商解散或失聯,改一個欄位等三週、報價五萬
- 無法開接口,官網、ERP、LINE 各自為政,重複輸入每天逾 2 小時
- 欄位叫 remark1~remark9、日期存成文字;報表跑 8 分鐘、20 人上線就卡
不適用
- 半年內要被併購或轉型,流程還沒定案
- 只有一兩個功能不順,外掛工具就能解
- 無人說得清流程,也不指派窗口
- 預算低於 20 萬卻要全面翻新,只會產出第二套待重構的系統
二、四種方案怎麼選
| 方案 | 優點 | 缺點 | 成本 |
|---|---|---|---|
| 原地續命:只升環境補漏洞 | 2–4 週最快 | 治標,兩年內再爆 | NT$60,000–150,000 |
| 換套裝/SaaS | 維護外包、更新免費 | 流程遷就軟體、客製受限 | 年費 NT$36,000–300,000+導入 10 萬起 |
| 一次性重寫:同日切換 | 架構最乾淨 | 風險最高,同日全爆 | NT$800,000–3,000,000 |
| 絞殺榕分階段替換 | 可回滾、分期、不中斷 | 並行成本高、專案較長 | NT$180,000 起,分 3–5 期 |
九成案子走第四條。微軟列它為官方遷移模式(Strangler Fig Pattern):新舊之間放一層轉接,流量逐個模組導過去,直到舊系統沒有流量。
三、流程與交付物
| 階段 | 時間 | 交付物 | 工具 |
|---|---|---|---|
| ① 健檢盤點 | 2–3 週 | 架構圖、資料表筆數、髒資料比例 | DBeaver、Notion |
| ② 訪談切分 | 1–2 週 | MoSCoW 優先順序、分期計畫 | Miro |
| ③ 清洗對應 | 2–4 週 | 欄位對應表、去重規則、腳本 | pandas、SQL |
| ④ 第一模組 | 4–8 週 | 介面稿、API 文件、測試站 | Figma、Laravel/Next.js |
| ⑤ 雙寫並行 | 4–8 週 | 雙寫機制、差異報表 | 排程腳本、Grafana |
| ⑥ UAT 訓練 | 2 週 | 驗收紀錄、SOP、錄影 | Notion |
| ⑦ 切換封存 | 1 週 | runbook、回滾方案、唯讀庫 | Cloudflare、UptimeRobot |
關鍵在第⑤階段:新舊同時寫入、每天自動比對,連續 14 天零差異才准切換——這是不停機唯一的保險。
四、成本拆解
- 健檢盤點:NT$35,000–80,000(可抵開發費)
- 入門級(單一核心模組+搬遷):NT$180,000–350,000
- 標準級(3–5 模組、並行 2 月):NT$450,000–900,000
- 完整級(全面重構+API 層+權限設計):NT$1,200,000–3,000,000
隱藏費用約佔總預算 18–30%:
- 並行期雙份主機:每月 NT$3,000–15,000,平均多付 3 個月
- 資料清洗:1 萬筆客戶去重約 16–40 工時
- 匯出舊資料:原廠不給 DB 權限時報價 NT$20,000–150,000
- 金流、物流、發票重串:每條 NT$25,000–60,000
- 穩定期維護:開發費 15–20%/年;訓練每場 NT$8,000–15,000
五、真相 vs 客戶想像
| 客戶以為 | 實際發生 |
|---|---|
| 匯出匯入就好,一個週末搞定 | 舊資料 8–25% 是髒的,清洗常比搬遷久 3 倍 |
| 新系統照舊的做一樣就好 | 至少 30% 功能三年沒人用,照抄等於把技術債搬家 |
| 上線當天就變快 | 前兩週效率先降後升,第 4–6 週才回到原水準 |
| 舊系統可以立刻關掉 | 會計、稽核、客訴需 6–12 個月唯讀期 |
六、五個陷阱與解法
- 沒有凍結期:舊系統還在改欄位,對應表天天失效。→ 簽功能凍結同意書,只准修 bug。
- 清洗規則丟給廠商決定:哪兩筆客戶算同一家只有業務知道。→ 由窗口逐條確認。
- 沒有回滾方案:出事只能硬撐。→ runbook 寫明「幾點前發現問題就切回舊系統」。
- 個資在測試站裸奔:拿正式資料測試違反個人資料保護法的安全維護義務。→ 測試站一律去識別化。
- 一次搬所有模組:省了並行成本,風險全壓同一天。→ 先搬報表模組。
七、90 天路線圖
- 30 天:新舊比對零差異、關鍵流程錯誤率低於 1%、可用率 ≥ 99.5%
- 60 天:作業工時降 20–35%、報表由分鐘級降到秒級、重複輸入歸零
- 90 天:第二模組切換完成、舊系統轉唯讀、換算月省人力金額與 ROI 回收期(多數 14–26 個月)
八、決策清單(勾 6 題以上建議啟動)
- ☐ 環境已過原廠支援期?
- ☐ 原開發商解散或報價不合理?
- ☐ 每天逾 1 小時重複輸入?
- ☐ 新需求被回「做不到」逾 3 次?
- ☐ 一年內曾因系統影響出貨?
- ☐ 拿不到資料庫完整備份?
- ☐ 無法提供 API 或匯出 CSV?
- ☐ 能指派窗口每週投入 4 小時?
- ☐ 預算能分 3 期、總額 20 萬以上?
- ☐ 老闆願意親自參加驗收?
九、常見問題
Q1:一定要停機嗎?停多久?
分階段替換的話,正式切換多半只需 2–4 小時,排在週日凌晨。重點不是停機長短,而是切換前有沒有完成連續 14 天雙寫零差異驗證;沒做這步就是賭博。
Q2:原廠不給資料庫權限怎麼辦?
先看合約的資料所有權條款——資料是你的,程式碼才是他們的。仍不配合時可要求匯出 CSV、從列印功能逐表取得,或爬自家後台。最極端的一次是從 PDF 報表還原 3 萬筆。
Q3:怎麼確保資料沒少、沒錯?
三層驗證:每張表筆數比對、關鍵金額欄位總和比對、每表抽 30 筆逐欄核對。三層全過才簽驗收單,比對報表也列為交付物。
十、下一步
ScriptWalker 的「老舊系統重構與資料搬遷」自 NT$180,000 起、分期執行。還在評估可先做「系統健檢與資料盤點」(NT$35,000 起、2–3 週),交付架構圖、資料健康度報告與分期建議書,費用全額折抵開發費;結論若是不必重構,我們會直說。
- Email:[email protected]
- 電話:0916-224-047
- LINE:@ufv9089p
來信附上「系統名稱、使用年限、每天幾人用、最痛的三件事」,兩個工作天內回覆報價。