第一階段剩餘缺口與完成標準
本文件用來把目前第一階段約 80% 的開發狀態,整理成可逐項驗收的 100% 收尾清單。
第一階段完成的判斷重點不是做完整平台,而是確認「共用骨架能穩定承接案場流程」:Workflow 能跑、狀態能控、Adapter 能抽象、Log 能追、Config 能驗、測試能保護、文件能交接。
完成標準摘要
| 類別 | 目前狀態 | 完成標準 | 是否阻擋第一階段收尾 |
|---|---|---|---|
| Core / Workflow 基礎 | 已完成主體 | 保持既有測試通過,補齊第一階段必要錯誤與狀態行為 | 是 |
| Config 系列 | 已完成主體 | 設定檔能啟動代表流程,錯誤可追到檔案、欄位與節點 | 是 |
| ConsoleHost 驗證入口 | 已可執行代表流程 | 能用固定指令重現 OK、NG、錯誤案例,並有驗證紀錄 | 是 |
| Adapter Data / Workflow 條件轉移 | 已完成 OK / NG 驗證 | 條件轉移結果能被測試、Log 與文件說明追蹤 | 是 |
| Modbus TCP Adapter | 進行中 | 第一階段只需完成模擬器整合驗證與錯誤處理邊界,不要求接現場真實設備 | 是 |
| Log / Error | 已具備基礎格式 | 失敗原因、節點、設備、命令、耗時、原始資料能被追蹤 | 是 |
| TaskEngine / 狀態追蹤 | 最小版本已完成 | 第一階段需能記錄任務生命週期與終態;進階暫停、查詢可列第二階段 | 部分阻擋 |
| 文件 / 發布 / 同步 | 已上線 | 文件網站可讀、進度可視化、驗證紀錄與完成標準同步 | 是 |
必須完成項目
| 編號 | 項目 | 完成定義 | 驗證方式 | 交付物 |
|---|---|---|---|---|
| P1-01 | ModbusTcpAdapter 模擬器整合驗證 | 已能透過 ConsoleHost 測試入口對模擬器完成 ReadHoldingRegister / WriteSingleRegister | xUnit 驗證節點 | 已完成,驗證紀錄位於程式 repo docs/modbus-tcp-simulator-integration-verification-record.md |
| P1-02 | Modbus TCP 錯誤處理 | 連線失敗、逾時、命令未設定、回應異常能轉成標準 ExecuteResult / ErrorInfo | Adapter 測試 | 測試、錯誤代碼說明 |
| P1-03 | Adapter Data 條件轉移收斂 | OK / NG 條件轉移路徑可被自動測試與人工驗證重現 | WorkflowSimulation 測試、ConsoleHost 驗證紀錄 | 測試、驗證紀錄 |
| P1-04 | Log 可追蹤性檢查 | 代表流程每個節點都能追到 TaskId、NodeId、DeviceId、CommandName、Status、TimeTakenMs、ErrorCode | ConsoleHost 輸出檢查、Log 文件對照 | Log 範例、驗證紀錄 |
| P1-05 | TaskEngine 收尾邊界 | 任務可記錄 created / running / completed / failed / cancelled 等第一階段必要狀態 | Core 測試 | 測試、文件更新 |
| P1-06 | 第一階段驗收紀錄 | 把可驗收節點整理成一份最終驗收紀錄,標註通過、限制、延後項目 | 文件檢查 | verification-records 更新 |
| P1-07 | 文件網站同步 | 首頁、開發進度總覽、完成標準、README / docs 索引互相連結且線上可開啟 | 線上頁面檢查 | 文件網站 |
可延後到第二階段
| 項目 | 延後原因 | 第二階段再做的條件 |
|---|---|---|
| WebApi | 第一階段先驗證本機控制骨架,不做遠端啟動 | ConsoleHost / Core 驗收後 |
| ServiceHost | 正式背景執行需要部署、停止、回滾規格 | ConsoleHost 驗證穩定後 |
| WinForms Debug Tool | 需要 UI 人工驗證與現場操作設計 | 代表流程與 Adapter 邊界穩定後 |
| MySQL / DB | 使用者已確認第一階段先不導入資料庫 | 需要中央查詢、報表或長期追蹤時 |
| 多案場管理 | 屬於平台化功能,不影響第一階段骨架驗收 | Server / WebApi 階段 |
| 真實現場設備接線 | 第一階段可用模擬器與 Mock 驗證 Adapter 邊界 | 有設備、通訊參數與現場測試窗口時 |
第一階段完成判斷
dotnet test通過,且核心測試、Adapter 測試、WorkflowSimulation 測試沒有已知阻擋失敗。- ConsoleHost 可以用固定設定檔重現代表流程,且能看出成功與失敗路徑。
- ModbusTcpAdapter 至少完成模擬器層級的讀寫與錯誤處理驗證。
- Log 與 ErrorInfo 足以定位任務、節點、設備、命令與失敗原因。
- 設定檔錯誤能在啟動前被 Config Validator 擋下。
- 文件網站、開發進度、驗證紀錄與 README 已同步更新。
- 明確列出第二階段延後項目,避免第一階段被無限擴張。
建議執行順序
- 補齊 Modbus TCP 錯誤處理與錯誤代碼文件。
- 補測連線失敗、逾時、命令未設定與回應異常。
- 檢查 Workflow 條件轉移 Log 是否足以追蹤,必要時再決定是否新增獨立欄位。
- 補一份第一階段最終驗收紀錄。
- 更新進度儀表與文件網站,進入第一階段收尾確認。