您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關EA畫UML狀態(tài)圖中子狀態(tài)機是什么意思,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
數(shù)字式車輛信號燈
系統(tǒng)分解之后,接下來的工作就是對每個模塊進行建模。模塊:數(shù)字式車輛信號燈DigitalVehicleLight。
先看圖。
子狀態(tài)機
為了能夠在交通信號系統(tǒng)中作為一個模塊被調用,通過子狀態(tài)機來定義DigitalVehicleLight的行為。
子狀態(tài)機是一個狀態(tài)機定義可以被多次復用的方式。它也需要將進入和離開遷移綁定到內部頂點上,這一點與封裝組合狀態(tài)類似。封裝組合的場合,狀態(tài)和它的內容被定義它們的狀態(tài)機所包含,子狀態(tài)機更像編程語言中的宏,而不是行為定義。
--UML2.5 14.2.3.4.7 Submachine States and submachines
(子狀態(tài)機狀態(tài)和子狀態(tài)機)
在這個子狀態(tài)機中,定義了四個狀態(tài):紅燈,綠燈,綠燈倒計時,黃燈,每個狀態(tài)的遷移都是通過對應的事件來驅動的。
在綠燈倒計時狀態(tài)中,存在一個內部遷移用于接受計數(shù)值通知事件,實際的動作是調用DigitalVehicleLight的ShowCounter方法。
等處于紅燈狀態(tài)是,可以接受ShowDown事件以便遷移到ExitPoint。
從EntryPoint到Red的遷移有一個效應行為,動作出發(fā)LightReady信號。目的是用于同步表示設備和信號引擎的動作,具體動作將在后續(xù)文章中說明。
進入點/退出點
關于EntryPoint和ExitPoint的語義,UML2.5中定義如下。
進入點-進入點偽狀態(tài)表示的是狀態(tài)機或者封裝了內部狀態(tài)/狀態(tài)機的組合狀態(tài)的入口點。在包含入口點的狀態(tài)機或者組合狀態(tài)的每個區(qū)域中,最多可以有一個從入口點到區(qū)域內頂點的遷移。
退出點-退出點偽狀態(tài)表示的是狀態(tài)機或者封裝了內部狀態(tài)/狀態(tài)機的組合狀態(tài)的退出點。遷移到組合狀態(tài)或者是被子狀態(tài)機狀態(tài)引用的狀態(tài)機中的區(qū)域中的退出點意味著組合狀態(tài)或者是子狀態(tài)機狀態(tài)的退出(伴隨著關聯(lián)退出行為的執(zhí)行)。如果存在多個從狀態(tài)機中的正交區(qū)域到這個偽狀態(tài)的遷移,那么它的行為像匯合點偽狀態(tài)一樣。
補充說明
子狀態(tài)機中涉及的所有信號,都是作為狀態(tài)機的一部分存在。也就是說都會隨著DigitalVehicleLight的實例化一起被實例化,從而實現(xiàn)復用。
關于“EA畫UML狀態(tài)圖中子狀態(tài)機是什么意思”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。