← 返回部落格

.NET 舊系統接手維護:上線前必做的七項檢核

作者 Eva Lin

這篇文章適合誰

  • IT 主管/採購:評估是否由原廠轉第三方維護,需要可驗收的接手範圍。
  • 開發/維運:即將接手 ASP.NET MVC、Web Forms 或早期 ASP.NET Core 專案的工程師。

問題背景

「接手維護」常被報價成「每月 N 小時修 bug」。實務上,前 30 天決定後續 12 個月成本:若沒有釐清部署、設定、排程與資料流,小改動也可能觸發連鎖故障。我們在多個 .NET 專案中常見的接手風險包括:

  • web.config / appsettings 與正式環境不一致,本機正常、上線異常
  • Windows 工作排程或背景服務只有口頭交接
  • 資料庫預存程序與應用程式版本不同步
  • 日誌分散於本機文字檔,出問題無法還原時間軸

決策者摘要:接手合約應含「現況盤點交付物」,而非直接進入功能開發;盤點完成再談 SLA 較合理。

檢核一:原始碼與執行中版本是否一致

決策者關注: 買到的是「能編譯的 zip」還是「正在跑的版本」?

技術清單:

  • 比對組件版本、Git tag(若有)、正式機 DLL 時間戳
  • 記錄 Framework / .NET 版本、IIS 應用程式集區設定
  • 列出 NuGet 套件與是否有已知 CVE

檢核二:設定與密鑰盤點

決策者關注: 連線字串、API 金鑰是否可移交且可輪替。

技術清單:

  • 連線字串、SMTP、外部 API endpoint 集中列表
  • 區分 Development / Staging / Production 設定來源(web.config transform、環境變數、Azure App Settings)
  • 標記硬編碼在程式內的密鑰——優先列為重構項

檢核三:部署與回滾路徑

決策者關注: 發布失敗時,多久能回到上一版?

技術清單:

  • 繪製部署流程:建置 → 發布 → 檔案替換 / 容器映像
  • 確認是否有資料庫 migration 腳本與執行順序
  • 至少保留一次「可回滾」的正式機備份驗證紀錄

相關實績:銀行對帳單 BAI2 轉檔

檢核四:背景工作與排程

決策者關注: 半夜沒跑完的 job,早上誰發現?

技術清單:

  • 列出 Windows Task Scheduler、Hangfire、Windows Service、Azure WebJob 等
  • 記錄 cron 或觸發條件、執行帳號、失敗是否重試
  • 確認測試環境能否安全觸發(或需 mock 外部系統)

相關實績:民間團體補助公示

檢核五:觀測與日誌

決策者關注: 客訴進來時,能否在 15 分鐘內定位錯誤請求。

技術清單:

  • 應用程式日誌路徑、保留天數、是否集中(Application Insights、ELK 等)
  • HTTP 錯誤頁是否洩漏堆疊至外網
  • 關鍵交易(匯入、上傳、產檔)是否有 correlation id

檢核六:資料流與整合點

決策者關注: 改一個欄位會影響哪些下游?

技術清單:

  • 輸入/輸出檔案格式、編碼(Big5 / UTF-8)、SFTP 或 API 介接
  • 手動操作步驟(「把檔案放到某資料夾」)是否為隱性依賴
  • 繪製整合圖:內部系統 ↔ 本系統 ↔ 外部機關或銀行

檢核七:權限與帳號生命週期

決策者關注: 人員離職後,舊帳號是否仍能登入或跑 batch。

技術清單:

  • 登入機制:表單、AD、SSO、JWT
  • 角色與功能對照表;是否存在萬用管理員帳號
  • 服務帳號密碼到期日與輪替流程

接手後的第一個月建議節奏

週次 重點
第 1 週 完成檢核一~三,建立唯讀正式環境觀測
第 2 週 完成檢核四~五,補齊排程與日誌文件
第 3 週 完成檢核六~七,畫出整合與權限圖
第 4 週 選一項低風險改善(日誌、告警、小 bug)驗證發布流程

下一步

若貴單位即將接手 .NET 舊案,建議在合約中明列盤點交付物(設定表、排程表、整合圖)再進入維護工時。我們在銀行轉檔、補助 API 與企業後台有多起接手經驗——歡迎透過網站聯絡,討論現況評估範圍。

相關文章

  • 派工營運 KPI:從現場派任到績效指標的六個檢核點

    派任時段靠人工比對、回報與費用分開處理,年度 KPI 又另用試算表彙整——現場營運與績效管理若各做各的,主管很難回答「這季支援成效如何」。以下整理我們在跨境派任與 HR 績效專案中,串接派工營運 KPI 的六個實務檢核點。

  • 政府補助公示上傳:從人工轉檔到 API 排程的五個檢查點

    每到申報截止就熬夜轉檔、還是漏上傳?補助公示若仍靠 Excel 人工整理,格式錯誤與時程延誤難以避免。以下整理我們在類似非營利與公部門案件中,從人工轉檔導入 API 排程前的五個實務檢查點——含決策者與技術雙視角。

  • 以 .NET 整合舊有 ERP 的五個實務原則

    ERP 運行多年難以一次汰換,新舊系統若雙寫或邊界不清,整合故障常在尖峰時暴露。以下整理我們在製造業專案中,以 .NET 包裝舊 ERP 的五個實務原則——避免雙寫、定義邊界與事件驅動降耦合。