002 如何用4個圖面拆解小設備需求( 說明 )
002 如何用4個圖面拆解小設備系統需求 結論先講在前面,我們要用4個圖面來捕抓小裝置的需求與行為。簡單來說,可以想像我們要導演一齣戲,那我們要準備的事項大概有: 1. 要找那些演員/ 角色的關係 (靜態) 2. 演員的互動 (動態) 3. 每個角色在劇裡出現的場景/ 不同場景的變化關係 4. 單一場景該演員要做的事情 要描述一個人的行為,可能要由好多的面向來說明。同樣的要描述一個系統的行為也是。隨著系統複雜度的增加,要單純的使用一個流程圖來描述整個裝置的行為就會有點不夠。 以往繪製流程圖的時候常常會有很難描述的事情,或是如果要分工的時候很難去拆分大家的工作跟相對的配合流程,這也是系統變複雜的一種體現。 那是否有一套方法可以用來簡單的拆解系統的行為,然後最後變成可以用的程式架構,最後進一步把程式寫完,然後再可以利用這套圖來進行需求驗證呢? 下面這四種圖的使用剛好可以用來捕捉系統的行為,包含靜態行為與動態行為。整個的使用邏輯跟繪製的順序是這樣的。 系統方塊圖 (System Block) 時序圖 (Sequence Diagram) 狀態圖 (State Diagram) 流程圖 (Flow Diagram) 系統方塊圖 (System Block) 系統方塊圖是用來描述系統的系統內部成員的圖面,諸如有那些感測器? 那些制動器 ? 用那些介面串聯。然後是否會連接到後端(上層) 的設備,使用那種通訊方式... 等等 系統方塊圖就是這齣戲的演員表,他表現出了整齣戲所有人的關係,下面這張就是所謂的關係圖(引用日本網友的神鵰俠侶關係表),也就是一個靜態的系統描述。 簡單的系統方塊圖範例 在接下來的 時序圖 中,就是根據不同的情境(場景),這些演員的互動。戲劇會精采,就是劇情與演員互動的恰到好處。系統會運作的好,角色之間的互動就很重要啦。 時序圖 (Sequence Diagram) 狀態圖 (State Diagram) 比較簡單的說明一下狀態圖。以十字路口這個場景來比喻 主要主角有兩個 紅綠燈 跟 行人 當 紅綠燈 ...