邊界契約
『HMI數值不對』不能定位。先分來源產生、閘道傳輸、畫面呈現,為每層寫輸入、輸出、時間、品質與共同鍵。案例共同鍵用sample_id與source_timestamp。
同一問題可有主問題與子問題,但每張都引用共同案例ID和不同觀測點,避免責任分派後證據斷裂。
責任分派可以用一個共同鍵貫穿三層,但不能把共同鍵存在當成資料正確。sample_id=17若閘道重建成18,這本身就是映射缺陷,問題單要保留兩個原始鍵。
來源替身產生42.5,閘道保留42.5與來源時間,HMI顯示同值並標品質。缺sample_id或映射版本時,問題單只能標證據不足,不可直接指責某層。
初步排查責任依第一個不符契約的觀測點分派。來源正確、閘道錯交閘道;閘道正確、畫面錯交HMI;最後畫面看到錯不代表畫面就是根因。最先看見的差異可能只是更上游問題的結果,後續仍須驗證根因。
契約要列版本、單位、延遲與錯誤表示。收到封包不等資料通過品質,25也不代表攝氏,時間語意要獨立說明。
本文適用於跨PLC、HMI、閘道與資料服務的問題追蹤,不指定設備指令。Owner表示主責承辦者,Consulted表示提供專業協助者;角色名稱由團隊自訂。指派承辦不等於已確定根因,主責也應追蹤證據缺口。
證據包
同端計時例可在客戶送出請求與收到回覆時各取一次單調時間,量得整體往返兩秒。它不能直接拆成設備處理多久與網路多久;若要細分,需另有同時鐘域內的事件或足夠同步證據。
若來源值正確而閘道時間錯,畫面數值正常仍可能造成報表問題;責任分派要包括時間欄位而非只看數值。
畫面顯示425時,先查是否是字串格式或倍率,不要只問誰負責HMI。若閘道已輸出unit=kPa而畫面仍標bar,責任可分成映射與呈現兩段,分別訂完成條件。
若閘道收到資料但quality欄缺失,輸出42.5仍不能標Good。問題單要記缺欄的原始回覆與轉換版本,並把補欄或拒絕的責任寫成可驗證下一步。
最小證據含案例、時間區間、版本、輸入快照、各層輸出、品質、時間戳、訊息識別、截圖與原始日誌位置。不適用填NotApplicable並說明。
來源42.5、閘道42.5、HMI425時,先附倍率與單位定義,不能只貼兩張畫面。問題單要能讓接手者重播同一輸入。
如果只有來源、閘道及畫面各自的牆鐘時間,先確認時區、精度與同步誤差。沒有可信共同比較基準時,保留三端原始紀錄並標時間關係未知,不能把三個顯示值直接相減來判定是否超過三秒。
人工抄錄、截圖、結構化日誌可信程度不同。時鐘未同步就保留各端原始時間,不能用事後平移假造精確順序。
分派與退回
回歸資料保存修正前後的映射版本,並記哪些欄位故意不變,方便檢查改動範圍是否超出問題。
時鐘不同步時可比較同一端的發送到完成間隔,跨端不可只靠序號或接收順序宣稱物理先後;分別保存各端原始時間,只有同步或協定證據足夠時才比較。問題單把這個限制寫明,避免後續人員把兩端牆鐘相減成假延遲。
建立問題單指定Owner、Consulted與截止,不寫模糊的『某團隊處理』。閘道補回覆樣本,來源同時確認輸入快照,兩者都要有完成條件。
證據不足要具體退回:缺sample_id、映射版本、原始回覆或時間範圍。保留原結論與補件時間,避免退回後改掉歷史。
來源品質Bad且畫面未灰可有兩個子問題,主問題指向品質映射,子問題指向顯示。共享同一案例ID,不把所有行為塞一個主因。
部署版本與快取不一致時先補環境證據。相同條件反覆產生同樣的錯誤,是穩定重現;相同條件卻時好時壞,則是變異線索。兩者都可能是缺陷,不能把結果一致誤當正確。
關閉與回歸
補件後若Owner變更,保留原Owner的查證與移交時間;新Owner只接收未完成條件,不覆蓋已確認的來源證據。這讓責任移交也可稽核。
退回補件時保留第一次結論。補件後若發現根因改變,建立修訂段落並引用新證據,不刪除舊判讀,這樣交接者能理解責任為何轉移。
關閉條件要能被另一人執行:重播、來源和閘道一致、畫面格式與品質正確、時間語意符合,並保存修正前後差異。『已修正』不是驗收。
回歸包含原失敗、正常、邊界。只測原失敗可能破壞正常;只測正常可能掩蓋舊缺陷。新事件建立新ID,關聯舊ticket但不覆寫歷史。
摘要分已驗證、未驗證、不適用。未測現場接線或特定型號明確列出,不把離線重播擴大成設備保證。
問題單再發生時保留原契約與新的時間線,讓維護者知道是版本差異、環境差異還是相同缺陷。
假設修正只涉及畫面倍率,回歸時保留來源四十二點五與正確單位,再輸入零值、負值及不良品質。若畫面值修好但負值被截掉,應另記回歸缺陷;原問題不能用一次正常數值的截圖代替全部完成條件。
若同端觀測窗口只捕到顯示完成而沒有來源事件,報告應標證據不足,不能以三個牆鐘時間補成完整鏈。
回歸案例應包含一個保留值加Bad品質的輸出,確認關閉問題後沒有把品質欄遺漏。畫面看起來正常不是完整回歸。
練習與交接
練習讓來源品質Bad但值仍42.5,要求問題單分別描述資料值、品質與畫面策略。任何一項缺失都要指向具體Owner與完成條件。
建立一張來源42.5、閘道42.5、畫面425且版本未知的單。第一步補欄位定義、單位、版本;拿不到時Blocked,Owner與補件來源要寫清楚。
加入品質Bad但保留數值,確認問題單不把保留值當新值。品質在閘道遺失就開資料契約子問題,畫面未提示就開顯示子問題。
交接摘要可寫:來源及閘道同一事件均為四十二點五kPa,畫面顯示四百二十五kPa,已確認顯示鏈不符數值契約。HMI負責人先查倍率設定,閘道負責人提供原始回覆;在未取得畫面設定前,不把猜測寫成已確認根因。
問:最後看到錯誤的畫面就是負責單位嗎?答:先找可證明不符契約的邊界,畫面可能只是顯示上游錯誤。
問:跨團隊問題要不要一個主責人?答:主責人負責協調,補件與修正子項仍各有承辦者和完成條件。
問:缺少來源日誌能直接退單嗎?答:說明缺哪個觀測點、由誰補及何時提供,保留主問題追蹤而非無責任地退回。
問:改了倍率且畫面正常就能關單嗎?答:重跑原失敗、正常與邊界案例,核對單位與品質,再按驗收條件關閉。
參考:NIST SP 800-82 Rev.3:OT測試與運作風險背景;本文案例及狀態為自訂驗收設計。