Skip to main content
情境故事:好味餐飲的數位轉型起點

Architecture Journal

Last updated on
enterprise-architecturedigital-transformationcase-study

情境故事:好味餐飲的數位轉型起點

案例說明

這是一個虛構案例。所有公司名稱、人物、數字與事故皆為虛構,不代表任何真實企業。

項目內容
案例版本0.5
基線日期2026-08-28
公司好味餐飲集團,以下簡稱「好味」

故事從一個午餐尖峰開始

好味從一家街邊餐廳起家,十二年內發展成擁有三個品牌、42 家門市的餐飲集團。 早期那套只負責門市結帳與日結的系統,也一路跟著公司長大。工程團隊陸續把會員、 優惠券、線上點餐、庫存、廚房出單、外送串接與營運報表加進去。大家仍叫它 「POS 系統」,實際上它早已是整家公司最重要的交易核心。

2026 年 5 月 8 日星期五,好味推出會員日活動。上午 11:30,行銷部向 8 萬名會員推送「午餐第二件半價」優惠。四分鐘後,建立訂單、計算優惠、查詢狀態等訂單相關請求一度升到平日午餐尖峰的七倍。

當時有三項工作同時使用正式資料庫。優惠模組會在每次結帳時讀寫優惠券使用次數; 11:30 排程的庫存批次正在更新各門市的可售數量;營運人員則開啟活動報表,直接查詢 即時銷售資料。批次更新與報表查詢使資料庫回應變慢,OneFood 內等待查詢結果的交易 持續占用資料庫連線。幾分鐘後,OneFood 的連線池耗盡,線上點餐與門市 POS 開始逾時。

現行結帳流程會依序建立待付款訂單、呼叫付款服務商、寫回付款結果,再建立廚房單。 這些步驟會分別留下紀錄,付款服務商核准交易後,OneFood 仍須更新後續狀態。 這次事故中,有些請求在付款核准後、狀態寫回前逾時;有些則已建立廚房單,卻沒有 把結帳結果回傳給顧客。顧客再次送出結帳請求時,每次重送都會取得新的請求編號, 客服與門市無法立即判斷兩次請求是否來自同一次結帳。因此,有些門市收到兩張內容 相同的廚房單,也有顧客只看到信用卡扣款,卻在 App 或官網查不到已成立的訂單。

事故從效能下降發展成全面中斷:

時間現象
11:30會員推播送出,庫存批次與活動報表查詢開始執行
11:34訂單相關請求一度達平日午餐尖峰的七倍
11:41資料庫回應時間上升,OneFood 的資料庫連線開始排隊
11:46App、官網與部分門市 POS 大量逾時,客服開始接到查詢
12:03維運人員重啟 OneFood,所有門市、App 與官網停止接單;外送平台仍可送出訂單,但 OneFood 無法正常接收
12:14OneFood 恢復服務,外送平台積壓的訂單陸續匯入,門市開始核對交易狀態

維運人員當時只能看到主機、JVM 與資料庫指標,無法判斷是哪個模組先出問題,也看不出一筆交易在訂單、付款、庫存與廚房之間走到哪一步。十一分鐘是系統完全停止服務的時間;在此之前已有十多分鐘大量逾時,恢復後也仍有訂單等待確認。

當天下午,共有 31 名財務、客服、資訊與門市人員參與處理,前後花了六個小時比對訂單、付款與廚房單。事故留下的初步數字如下:

影響數字
超過三分鐘才確認結果的訂單3,842 筆
疑似重複送出的訂單217 筆
付款成功但訂單狀態不明63 筆
出現負庫存的門市18 家
直接退款、補償與估計流失營收新臺幣 126 萬元
人工對帳與客服處理工時186 小時

表中的訂單是從效能下降到恢復後清查期間受影響的交易,不只計算十一分鐘的全面中斷;各類別也可能重疊,例如付款狀態不明的訂單也可能超過三分鐘才確認結果。

公司正面臨什麼成長壓力

公司輪廓

項目現況
門市42 家直營門市,分布於北、中、南部
品牌3 個品牌,共用會員、採購、部分菜單與中央廚房
員工約 650 人,其中資訊團隊 24 人
會員約 120 萬名註冊會員
訂單通路門市 POS、App、官網、兩家外送平台
訂單占比門市 60%、自有線上通路 22%、外送平台 18%
尖峰負載平日午餐尖峰每五分鐘約新增 300 筆訂單,產生約 1,800 次訂單相關系統請求;活動開始後,請求量一度達平日七倍
周邊系統金流、電子發票、ERP、物流、簡訊與外送平台

董事會已核准兩年成長計畫:門市從 42 家增加到 80 家,推出一個只做外帶與外送的新品牌,並開放第一批加盟店。80 家包含首批 10 家加盟店,其餘新增門市仍由好味直營。

營運團隊預估,門市增加後,尖峰流量與支援案件會同步增加。行銷團隊準備為新品牌 設計獨立的菜單、價格與活動規則;負責加盟籌備的團隊則開始盤點加盟店可查看的資料、 可執行的作業,以及總部與加盟經營者各自負責的範圍。

管理團隊開始擔心,現有系統不只可能撐不住下一次活動,還可能成為公司成長速度的上限。

老闆希望公司變成什麼樣子

事故檢討會上,執行長林若晴說:

兩年內我們要開到 80 家店,也要能快速測試新品牌。系統不能再決定公司可以長多快。午餐尖峰出問題時,更不能所有通路和門市一起停下來。

管理團隊將期待整理成五項可以被觀察的業務結果:

業務目標現況兩年內希望達成的結果
支援展店與加盟新門市設定與驗證平均需要 15 個工作天5 個工作天內完成,不必等待專屬版本上線
加快新品牌與新通路上線新品牌約需 6 個月,新通路約需 4 個月新品牌 8 週、新通路 4 週內推出第一版
降低尖峰營運風險局部異常可能拖垮全部通路未受影響的門市與通路仍可接單;結果不明的交易在 30 分鐘內查明
縮短產品試驗週期需求提出到上線通常需要 6 至 8 週一般活動與規則變更在 10 個工作天內完成驗證並上線
提高交易資訊可信度與時效每月約 320 筆交易需人工核對;營運報表隔日上午才完整人工核對降至每月 50 筆以下;營運資料在 5 分鐘內可查

財務長補上一個限制:轉型期間不能讓公司停止接單。董事會每半年檢視一次投資,下一階段預算必須說明前一階段改善了哪些業務結果,以及還有哪些風險沒有降低。

董事會沒有指定改造手段,只要求任何方案都不能中斷日常營運,而且每一筆投資都必須說明解決了哪個業務痛點,以及公司要如何確認結果真的變好了。

不同角色看到的問題

事故檢討後,各角色提出了自己的目標、困擾與顧慮。

角色主要目標現在最痛的事最擔心的轉型風險
執行長展店、新品牌與營收成長系統限制商業速度花大錢後只換技術,業務結果沒有改善
營運長門市穩定、出餐效率與標準化各通路狀態不同,門市靠電話處理例外新舊系統並存讓第一線更混亂
行銷長快速設計活動與會員經營每次優惠都要排進核心系統版本投入改造後,活動上線速度仍沒有改善
財務長對帳、退款與投資回報訂單、付款、發票資料經常需要人工核對改造期間影響結帳與稽核
門市店長正確接單、備餐與交付看不到訂單卡在哪裡,也無法自行復原網路或中央服務異常時無法營業
廚房人員按正確順序收到可製作的餐點重複單、缺料單與臨時取消干擾出餐新流程增加操作步驟
顧客快速知道價格、付款與取餐狀態逾時後不知道該等、重試還是聯絡客服不同通路的價格、點數與狀態不一致
客服與財務查到完整交易歷程並處理例外需要跨五個畫面與試算表拼出真相改造後仍無法取得一致的交易資訊
加盟經營者在授權範圍內管理門市與掌握營運狀況現有流程與權限都是依直營門市設計看不到自己的必要資料,或看到不屬於自己的會員與他店資料
資訊團隊安全地交付並快速定位事故所有改動都碰同一套程式與資料庫改造範圍超過團隊可以承擔的程度

訪談裡,每個人都只看得到一段流程

事故後,好味在 2026 年 6 月 9 日至 6 月 20 日訪談 18 人,包括 4 位門市店長、3 位客服人員、2 位財務人員、3 位營運與行銷人員、2 位後端工程師、2 位平台與維運工程師,以及 2 位資料與資安人員。

下表保留各角色的代表性說法。這些內容是受訪者觀點,還不是已確認的事實;進入成熟度評估前,仍須和系統紀錄、流程文件及營運數據交叉檢查。

識別碼受訪角色代表性說法
INT-01門市店長,4 人「畫面轉太久時,我們多半請顧客再試一次。付款有沒有成功,門市端看不到,只能打給客服。」
INT-02客服人員,3 人「客服手冊寫的是先查付款,但我們要開三個後台,再請財務確認。尖峰時電話通常比系統快。」
INT-03財務人員,2 人「每日結帳最後做得完,但不是當下就知道答案。有些差異要等外送平台或發票資料隔天進來。」
INT-04營運與行銷人員,3 人「活動規則最後還是要排 OneFood 版本。需求如果接近上線才改,通常得找熟悉優惠和訂單的人一起看。」
INT-05後端工程師,2 人「單一模組不難,難的是優惠、訂單、付款、庫存一起改。沒有一個畫面能告訴我們同一筆交易走到哪裡。」
INT-06平台與維運工程師,2 人「我們看得到主機、JVM 和資料庫,但事故剛發生時通常只能先排除,不知道是哪個業務步驟把連線吃完。」
INT-07資料與資安人員,2 人「帳號名單有保留,但有些帳號沿用太久。看得出哪個程式在連,未必找得到現在的業務負責人。」

訪談沒有形成一致答案。門市認為逾時後只能重試,客服手冊卻要求先查付款;維運知道系統資源何時異常,卻看不到顧客的交易停在哪一步;財務可以在日結後補出結果,但顧客與門市需要的是當下答案。這些落差是後續分析的線索,不是誰對誰錯的投票。

訪談之外,還有哪些資料可以回查

工作小組在基線日前整理出下列證據。每一筆都標示觀察期間、資料 owner 與目前能支持的結論,避免把一次事故、半年平均值與受訪者印象混成同一種證據。

識別碼期間或日期可回查內容目前觀察資料 owner
E-PPL-012026-07-31訂單領域技能盤點14 名後端、平台與資料庫人員中,2 人能獨立追查優惠、訂單、付款與庫存的跨模組問題;7 人能處理單一模組;5 人需要他人陪同。兩位跨模組人員沒有指定備援資訊主管
E-PRC-012026-06-01~2026-07-3140 筆付款或訂單狀態異常案件抽樣26 筆依客服、財務或維運各自的操作文件處理;14 筆改用電話、群組訊息或試算表協調。三個單位有自己的作法,但沒有共同的端到端流程 owner客服主管
E-TEC-012026-03-01~2026-08-28P1/P2 訂單相關事故紀錄共 11 件,其中 6 件涉及共用資料庫壅塞或外部整合逾時;平均復原時間約 110 分鐘。紀錄以主機、應用程式與資料庫恢復為結束點,沒有計算交易何時完成清查維運主管
E-TEC-022026-01-01~2026-08-28發布與測試紀錄正式版平均六週發布一次;最近 5 次發布都花 4 至 5 個工作天執行跨模組人工回歸,其中 1 次失敗後回復整個版本QA 主管
E-INF-012026-06-01~2026-08-28對帳紀錄、狀態文件與報表排程每月平均約 320 筆交易需要人工核對;訂單、付款與廚房各有自己的狀態說明,沒有共同資料 owner;重送請求無法穩定對回同一次結帳財務主管
E-SEC-012026-07-15正式資料庫非人員帳號清單17 個批次、報表或整合帳號中,6 個可以寫入超過 20 張正式資料表,4 個沒有可確認的現任 owner;目前沒有固定的定期複核週期資安主管
E-EA-012026-08-28架構文件盤點現有文件包含部署圖與外部系統清單,但沒有核准的業務能力地圖、目標架構、過渡狀態或淘汰條件企業架構負責人
E-CIO-012026-01-01~2026-06-30每月 IT 營運報告報告固定追蹤主機可用率、事故數、服務案件與基礎設施成本,尚未追蹤展店時間、交易查明時間、人工對帳量或活動交付週期CIO 辦公室

這批資料仍不足以完成所有判斷。工作小組把缺口留在清單上,而不是用推估值補滿:

識別碼待確認問題需要的下一份證據
GAP-01同一位顧客重試時,有多少請求其實來自同一次結帳?通路請求、金流交易、訂單與廚房單的關聯抽樣
GAP-02各通路可接受的延遲、可用率與降級方式是什麼?經業務 owner 核准的服務目標與門市離線作業規則
GAP-03加盟店完成履約真正需要哪些會員、付款與跨店資料?加盟流程、資料分類與最小權限矩陣
GAP-04活動尖峰下,報表、庫存批次與訂單交易各自占用多少容量?同時執行三種工作負載的壓力測試與資料庫等待分析
GAP-05新流程或工具上線後,門市與客服是否真的會照新方式處理?培訓完成率、流程演練與實際案件抽樣

現況:一套系統承擔整家公司

單體系統 OneFood

好味的核心系統叫做 OneFood。它原本是門市 POS 後端,現在也承接 App、官網與外送平台送入的訂單,並包含下列模組:

模組主要責任
Menu品牌、門市菜單、價格與上下架時段
Promotion優惠券、組合價、會員日與使用限制
Order購物車、訂單、取消與狀態
Payment付款請求、回呼、退款與日結
Inventory原料、餐點可售量與門市調撥
Kitchen廚房單、製作佇列與出餐狀態
Member會員、等級、點數與消費紀錄
Delivery外送平台訂單與配送狀態
Reporting營運、財務與活動報表

這些模組雖然在程式碼裡有不同套件,卻被一起建置、一起部署,也直接讀寫同一套關聯式資料庫。報表工具、批次程式與部分外部整合還會繞過應用程式,直接查詢或更新資料表。

目前的權限清單顯示,部分批次與報表帳號可以直接存取大量正式資料表。資料庫操作 紀錄保留了帳號與時間,卻沒有標示每次異動所屬的業務作業或負責單位。

flowchart LR
  Channels["POS/App/官網/外送平台"] --> Monolith["OneFood 單體應用<br/>菜單、優惠、訂單、付款、庫存、廚房、會員、外送、報表"]
  Monolith --> DB[("共用交易資料庫")]
  Reports["報表與批次作業"] --> DB
  Monolith --> Payment["金流服務商"]
  Monolith --> Invoice["電子發票"]
  Monolith --> ERP["ERP/物流"]
  Monolith --> Messaging["簡訊/推播"]

交付與營運方式

  • 團隊依前端、後端、資料庫與維運分工,沒有端到端負責單一業務能力的團隊。
  • 正式版平均每六週發布一次。部署需要兩小時維護時段,失敗時通常回復整個版本。
  • 自動化測試以單元測試為主,跨模組回歸仍由 QA 手動執行,完整回歸約需五個工作天。
  • 過去一年的變更紀錄顯示,一項優惠規則平均會改動六個模組。
  • 正式環境只有主機、JVM 與資料庫監控,沒有跨通路、模組與外部服務的交易追蹤;近半年事故的平均復原時間約為 110 分鐘。
  • 兩位資深工程師理解優惠、訂單、付款與庫存交錯的規則,大部分緊急變更都需要其中一人參與。
  • ERP、電子發票、金流與外送平台仍是未來數年要保留的外部系統,不能假設它們會一起改造。

未來希望支援的業務情境

管理團隊沒有指定系統該怎麼實作,而是描述未來希望支援的業務情境:

  • 開設新門市時,營運人員能在五個工作天內完成菜單、價格、權限與設備設定,不需要等待一次專屬的系統改版。
  • 推出新品牌或新通路時,團隊可以沿用既有的會員、訂單與營運能力,同時保留新品牌自己的菜單、價格與活動規則。
  • 加盟店開始營運時,加盟經營者只能查看自己門市的銷售與營運資料;總部仍能執行跨品牌管理,而非履約所需的會員個人資料不會提供給加盟店。
  • 行銷推出大型活動時,系統能承受短時間內快速增加的訂單;即使部分功能發生異常,仍不會讓所有門市與通路一起停止服務。
  • 顧客完成下單後,無論使用 POS、App、官網或外送平台,都能清楚知道訂單、付款與取餐進度,不必因畫面逾時而猜測是否要重新操作。
  • 門市遇到異常時,店員能看見問題發生在哪一筆訂單、目前由誰處理,以及門市是否仍能繼續接單與出餐。
  • 客服、營運與財務查詢交易時,可以看到一致且可追查的訂單歷程,不必再從多個畫面與試算表拼湊答案。
  • 一般活動或規則需要調整時,改動不會牽連整套系統,團隊能在十個工作天內完成驗證並上線。

轉型期間的現實限制

  • 42 家門市不能因轉型長時間停業,日常接單與出餐必須繼續。
  • 42 家既有門市的 POS 前台軟體與設備至少還會使用三年,轉型期間仍須正常接單與出餐。
  • ERP、電子發票、金流與外送平台不會配合好味同時改造。
  • 資訊團隊只有 24 人,目前是兩個交付小組與一個平台/維運小組。
  • 門市對系統延遲與狀態不一致的容忍度很低,不能把所有例外都丟給第一線人工判斷。
  • 財務仍必須完成每日結帳,並說明訂單、付款、退款與發票之間的差異。
  • 加盟經營者只能存取自己門市的資料;會員個人資料、付款資料與跨店營運資料仍由總部負責管理與稽核。
回到文章列表