這篇文章將為大家詳細講解有關EA畫UML狀態(tài)圖中子狀態(tài)機是什么意思,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)建站-專業(yè)網站定制、快速模板網站建設、高性價比美蘭網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式美蘭網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋美蘭地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。
數字式車輛信號燈
系統(tǒng)分解之后,接下來的工作就是對每個模塊進行建模。模塊:數字式車輛信號燈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)中,存在一個內部遷移用于接受計數值通知事件,實際的動作是調用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的實例化一起被實例化,從而實現復用。
關于“EA畫UML狀態(tài)圖中子狀態(tài)機是什么意思”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。