PlantUML用例圖語法學習小結學習
1、什麼是用例圖測試
用例圖是UML用於描述軟件功能的圖形。用例圖包括用例、參與者及其關係,用例圖也能夠包括約束和註釋。字體
2、用例圖的要素ui
包括如下三個方面:(1)參與者,即與用例存在交互關係的系統外部實體;(2)用例,用來描述一個相對獨立的軟件功能;(3)關係,包含參與者與用例的關係,參與者相互之間的關係,以及用例相互之間的關係。設計
參與者:code
參與者的特性歸納起來,參與者有下面幾個特性。
(1)參與者位於系統的外部,不屬於系統的內容。
(2)參與者與系統發生交互關係,交互關係主要有使用系統、啓動系統、獲取系統信息或給系統提供信息。
(3)參與者和系統之間存在交互信息的接口,系統提供接口讓參與者使用系統,或者系統經過參與者的接口與參與者進行交互。對象
用例:blog
用例的含義是在一個應用場景下面,系統爲用戶提供一個完整的服務,這個服務的完成須要用戶與系統直接發生一次完整的人機交互過程。繼承
用例圖的特色:(1)用例描述用戶對系統的指望,被用於軟件需求建模,一個用例對應 於軟件可以爲參與者提供的一項服務。(2)用例反映參與者與系統A次完整的交互過程。這個交互過程老是要耗費一段時間 ,並執行.定的流程。流程的執行是參與者與系統的一段互動過程,在這個過程當中有輸入到系統的信息以及系統反饋給參與者的信息。(3)用例的執行過程是系統爲參與者的一次服務過程,這個服務就體現爲系統提供給參與者的功能。一個用例執行的完成須要有肯定的評價結果,這個結果表現爲系統提供給參與者的一項完整的功能。(4)用例圖是軟件設計和測試的依據。接口
關係:
參與者與用例的關係一、啓動用例二、獲取用例提供的服務三、爲用例提供服務四、給系統提供信息
參與者之間的關係:一、泛化關係二、通訊關係
用例相互之間的關係:一、泛化關係二、包含關係三、擴展關係
2、語法
基本:用例用圓括號括起來;角色用兩個冒號包裹起來;用箭頭-->
鏈接角色和用例。用例描述:若是想定義跨越多行的用例描述,能夠用雙引號將其裹起來。還可使用這些分隔符:--..==__
。 而且能夠在分隔符中間放置標題。繼承:若是一個角色或者用例繼承於另外一個,用<|--
符號表示。註釋:用note left of
, note right of
, note top of
, note bottom of
等關鍵字給一個對象添加註釋。且註釋還能夠經過note
關鍵字來定義,而後用..
鏈接其餘對象。構造類型:用 <<
和 >>
來定義角色或者用例的構造類型。箭頭:-
越多,箭頭越長。 經過在箭頭定義的後面加一個冒號及文字的方式來添加標籤。箭頭的默認鏈接是豎直方向的,用--
表示,能夠用一個橫槓或點來表示水平鏈接,也能夠經過翻轉箭頭來改變方向。還能夠經過給箭頭添加left
, right
, up
或down
等關鍵字來改變方向(這些方向關鍵字也能夠只是用首字母或者前兩個字母的縮寫來代替)。分割圖示:用newpage
關鍵字將圖示分解爲多個頁面,因默認自上而下構建圖示,因此能夠用left to right direction
命令改變圖示方向。顯示:用skinparam
改變字體和顏色。
圖書管理系統的用例圖元素
借書
用例編號:03 -03用例名:借書
參與者:圖書管理員事件流程:
1.圖書管理員進人圖書借閱界面,選擇借書功能,用例開始。2.圖書管理員輸人借閱者的借書證號。
3.系統驗證借書證,若是不合格則給出提示,並結束借書。4.圖書管理員掃描要借圖書的條形碼。
5.系統顯示所借圖書的圖書信息:書名,做者,出版社等。6.系統記錄借書信息。
7.若是還有要借的圖書轉第4步。8.借書完成
還書
用例編號:03-04用例名:還書
參與者:圖書管理員事件流程:
1.圖書管理員進人圖書借閱界面,選擇能,用例開始。
2.圖書管理員掃描要還圖書的條形碼。3.系統顯示所還圖書的圖書信息:書名
出版社,借閱日期等。4.系統記錄還書信息。
5.若是還有要還的圖書,轉第2步,6.還書完成。
@startuml
left to right direction
actor cuixihan
rectangle 借閱證管理系統 {
cuixihan -- (辦證)
cuixihan -- (補證)
(辦證) ..> (打印證件) : <<include>>
(補證) ..> (打印證件) : <<include>>
cuixihan -- (註銷)
cuixihan -- (查詢證件)
}
@enduml
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
left to right direction
actor 圖書管理員
rectangle 圖書管理系統 {
圖書管理員 -- (添加圖書)
圖書管理員 -- (圖書編目)
圖書管理員 -- (修改圖書信息)
圖書管理員 -- (圖書報廢)
圖書管理員 -- (查詢圖書信息)
}
![](http://static.javashuo.com/static/loading.gif)
@startuml
left to right direction
skinparam packageStyle rectangle
actor 圖書管理員
actor 借閱人員
rectangle 圖書借閱管理系統 {
圖書管理員 -- (書目查詢)
圖書管理員 -- (圖書借閱信息查詢)
圖書管理員 -- (借書)
圖書管理員 -- (還書)
(過時催還) .> (打印催還單) : <<include>>
圖書管理員 -- (過時催還)
圖書管理員 -- (丟失處理)
(書目查詢) -- 借閱人員
(圖書借閱信息查詢) -- 借閱人員
} @enduml