用例圖主要用來描述“用戶固蛾、需求、系統(tǒng)功能單元”之間的關(guān)系逆趋。它展示一個外部用戶能夠觀察到的系統(tǒng)功能模型圖潜沦。用例圖多用于靜態(tài)建模階段(主要是業(yè)務(wù)建模和需求建模)萄涯,幫助開發(fā)團(tuán)隊以一種可視化的方式理解系統(tǒng)的功能需求。
參與者(Actor)
在系統(tǒng)外部與系統(tǒng)直接交互的人或事物唆鸡;需要注意以下兩點:
1)參與者是角色而不是具體的人涝影,它代表了參與者在與系統(tǒng)打交道的過程中所扮演的角色。所以在系統(tǒng)的實際運作中争占,一個實際用戶可能對應(yīng)系統(tǒng)的多個參與者燃逻。不同的用戶也可以只對應(yīng)于一個參與者,從而代表同一參與者的不同實例臂痕。
2)參與者作為外部用戶(而不是內(nèi)部)與系統(tǒng)發(fā)生交互作用伯襟,是它的主要特征。
在UML中握童,參與者使用如圖所示的一個小人表示:
用例(Use Case)
系統(tǒng)外部可見的一個系統(tǒng)功能單元姆怪。系統(tǒng)的功能由系統(tǒng)單元所提供,并通過一系列系統(tǒng)單元與一個或多個參與者之間交換的消息所表達(dá)舆瘪。用橢圓表示片效,橢圓中的文字簡述系統(tǒng)的功能:
關(guān)系(Relationship)
-
關(guān)聯(lián)、泛化英古、包含淀衣、擴(kuò)展
關(guān)聯(lián)(Association)
表示參與者與用例之間的交互,通信途徑召调,任何一方都可發(fā)送或接受消息膨桥。
箭頭指向:指向消息接收方。
泛化(Inheritance)
在編程中唠叛,泛化關(guān)系是一種很重要的關(guān)系只嚣,我們隨處可見。
泛化關(guān)系是一般和特殊關(guān)系艺沼,就是通常理解的繼承關(guān)系册舞,子用例和父用例相似,但表現(xiàn)出更特別的行為障般;子用例將繼承父用例的所有結(jié)構(gòu)调鲸、行為和關(guān)系。子用例可以使用父用例的一段行為挽荡,也可以重載它藐石。父用例通常是抽象的。
箭頭指向(需要特別注意):指向父用例定拟。
包含(Include)
包含關(guān)系用來把一個較復(fù)雜用例所表示功能分解成較小的步驟于微。包含用例是必須的,如果缺少包含用例,基用例就不完整株依;包含用例必須被執(zhí)行驱证。
箭頭指向:指向分解出來的功能用例
擴(kuò)展(Extend)
擴(kuò)展關(guān)系是指用例功能的延伸,相當(dāng)于為基礎(chǔ)用例提供一個附加功能勺三。擴(kuò)展用例是可選的雷滚,如果缺少擴(kuò)展用例,不會影響到基用例的完整性吗坚。(例如登錄與第三方登錄的關(guān)系)
箭頭指向(需要特別注意):指向基用例