1.狀態轉換圖
定義:
狀態轉換圖(簡稱狀態圖),通過描繪系統的狀態及引起系統狀態的事件,來表示系統的行為.
此外,狀態轉換圖還指明了作為特定事件的結果系統將做哪些動作.
作用:
用來建立需求分析中的行為模型.
2.狀態
定義:
狀態是任何可以被觀察到的系統行為模式,一個狀態代表系統的一種行為模式,狀態規定了系統對事件的響應方式.
系統對事件的響應,既可以是做一個(或一系列)動作,也可以僅僅是改變系統本身的狀態,還可以改變狀態又做動作.
注意:
一個狀態轉換圖只能有一個初態,但終態可以有多個.
在狀態圖中定義的狀態主要有:
初態(即初始狀態),終態(即最終狀態)和中間狀態.
3.事件
定義
事件是某個特定時刻發生的事情,它是對引起系統做動作或(和)從一個狀態轉換到另一個狀態的外界事件的抽象
簡而言之,事件就是引起系統做動作或狀態轉換的控制信息
例如:
單擊鼠標或用戶移動
點擊關機,電腦從工作狀態變成關機狀態
4.符號
1.在狀態轉換圖中
2.初態用實心圓表示,終態用同心圓表示(內圓為實心圓),
3.中間狀態用圓角矩形表示
(也可以用兩條水平線將它分成上,中,下三部分.上面是中間狀態的名字,這個是必須有的
中間是狀態變量的名字和值,這部分是可選的,最下邊是活動表,這個也是可選的)

4.活動表的語法格式如下:
事件名(參數表)/動作表達式
其中,事件名可以是任何事件的名稱.在活動表中經常使用下述3種標准事件:entry,exit,do
- entry事件指定進入該狀態的動作
- exit事件指定退出該狀態的動作
- do事件則指定在該狀態下的動作
需要時,可以為事件指定參數表.活動表中的動作表達式描述應該做的具體動作
eg:
exit/輸出:你是大笨蛋!
這個活動表的含義是:當退出當前狀態時,輸出你是大笨蛋這句話!
5.狀態轉換:狀態圖中兩個狀態圖之間帶箭頭的連線稱為狀態轉換,箭頭指明了轉換方向
狀態變遷通常是由事件出發的,在這種情況下應該在狀態轉換的箭頭線上標出觸發轉換的動作表達式;
如果在箭頭線上未標明事件,則表示在原狀態的內部活動執行完之后自動觸發轉換.
常規狀態轉換圖的書寫樣式:
5.小例子,電話系統的狀態轉換圖

讀者依照上面的基礎知識,如果可以理解這個狀態轉換圖,則證明你基本掌握了這部分知識