三、 整合性無線網路系統架構與設計
3.5 法則管理
3.5.1 流程控制法則
我們期望能夠歸納與整理出物體之間的共通規範,並提供給後續的系統 能夠使用,而不必一再的重複撰寫相同架構的程式,因此針對物體的幾個 可能發生之關係進行底下的討論與研究。
3.5.1.1 流程控制(Route Control)
事件有可能會是獨立發生,也有可能會是具有順序性,並且對於發生 的時間或許是可預測發生也或許是計劃內,所以對於事件與事物間的行為 模式,我們採用思考法,以 5W1H 方式進行討論研究,所謂的 5W1H 指的 就是 Why、What、Where、Who、When、How,個別說明了,目的、物體
方法進行討論。
3.5.1.2 流程與步驟(Route & Step)
我們先定義什麼叫做 Step,什麼叫做 Route(圖 16),所謂的 Step 指的 是獨立的單一事件或是功能,並且可事先被定義,因此單一的 Step 本身有 時並無意義也無法被了解或是具有多種涵義無法明確,而 Route 可以說是 目的流程,是數個 Step 的集合,並依照發生的時間順序排列,因此在相同 的目的條件下,可以有一個或是一個以上的不同流程的 Route,至於該使 用哪一個 Route 就必須依事件發生的狀況來決定。
圖 16 Route & Step
3.5.1.3 順序式流程(Sequential Route)
順序性事件(Step by Step),表示要完成一個目的或是要完成一件工
作,必須經過一個以上的連續且前後有相關的步驟,並且具有時間順序性,
對於清楚的流程,我們都可以在系統上先行定義,也要求被遵守,因此只 要有事件進入該流程,就必須按照系統定義的流程來進行,只要有不符合 流程或是順序的部分,都會被系統視為錯誤,必要時系統也會進行干涉與 糾正的工作,例如底下的 Car Parking Route 1~3 分別代表不同的停車管理 流程(圖 17)。
Route 1:付費停車管理 Route 2:免付費停車管理 Route 3:車輛進出管理
圖 17 Car Parking Route
3.5.1.4 分歧式流程(Branch Route)
Branch 流程通常是附加在一般流程裡面,也就是說,當一般流程碰到 特殊狀況時,就會轉由 Branch 流程來處理,待特殊狀況處理完後,可回到 原先一般流程分出來的 Step 或是跳過正常流程的數個 Step 後繼續回到一般 流程,也可以由 Branch 流程繼續完成。
以底下例子說明(圖 18),主要的流程為 Route 1,但是有可能伴隨著 Branch Route 1~4,在 Route 1 中,當進行到 Step 4 時,可能會有 3 種可能,
第一種是 Route 1 繼續下去到 Step 2,第二種是進入 Branch Route 1,第三 種是進入 Branch Route 2,當進入 Branch Route 1 時,當完成後則會回到 Route 1 的 Step 2,當進入 Branch Route 2 時,當完成後則會回到 Route 1 的 Step 3,跳過 Route 1 的 Step 2,當繼續下去到達 Route 1 第二次的 Step 4 時,還是會有 3 種可能,第一種是 Route 1 繼續下去到 Step 5,第二種是進 入 Branch Route 3,第三種是進入 Branch Route 4,當進入 Branch Route 3 時,就不會回去原 Route 1 直接在 Branch Route 3 完成,當進入 Branch Route 4 時,執行完 BStep 3 後,會回到原 Route 1 第二次的 Step 4。
圖 18 Branch Route
因此我們在 Route 的管理方面,必須提供 Branch 出去的點與紀錄 Branch
後的處理,簡單的說就是在每一個 Step 資訊中必須要提供下一個 Step 在哪 裡的機制(What is next?),並且也必須要做到凡走過必留痕跡的紀錄,因此 會針對每一個 ID 經過的 Step 建立歷史資料。