移動架構01_UML用例圖

用例圖主要用來描述「用戶、需求、系統功能單元」之間的關係。它展示一個外部用戶能夠觀察到的系統功能模型圖。用例圖多用於靜態建模階段(主要是業務建模和需求建模),幫助開發團隊以一種可視化的方式理解系統的功能需求。

參與者(Actor)

在系統外部與系統直接交互的人或事物;需要注意以下兩點:

1)參與者是角色而不是具體的人,它代表了參與者在與系統打交道的過程中所扮演的角色。所以在系統的實際運作中,一個實際用戶可能對應系統的多個參與者。不同的用戶也可以只對應於一個參與者,從而代表同一參與者的不同實例。

2)參與者作爲外部用戶(而不是內部)與系統發生交互作用,是它的主要特徵。

在UML中,參與者使用如圖所示的一個小人表示:

ss

用例(Use Case)

系統外部可見的一個系統功能單元。系統的功能由系統單元所提供,並通過一系列系統單元與一個或多個參與者之間交換的消息所表達。用橢圓表示,橢圓中的文字簡述系統的功能:

ss

關係(Relationship)

關聯

泛化

包含

拓展

ss


關聯(Association)

表示參與者與用例之間的交互,通信途徑,任何一方都可發送或接受消息。

箭頭指向:指向消息接受方

ss

  泛化(Inheritance)

在編程中,泛化關係是一種很重要的關係,我們隨處可見。

泛化關係是一般和特殊關係,就是通常理解的繼承關係,子用例和父用例相似,但表現出更特別的行爲;子用例將繼承父用例的所有結構、行爲和關係。子用例可以使用父用例的一段行爲,也可以重載它。父用例通常是抽象的。

箭頭指向(需要特別注意):指向父用例

ss

包含(Include)

包含關係用來把一個較複雜用例所表示功能分解成較小的步驟。包含用例是必須的,如果缺少包含用例,基用例就不完整;包含用例必須被執行。

箭頭指向:指向分解出來的功能用例

ss

拓展(Extend)

拓展關係是指用例功能的延伸,相當於爲基礎用例提供一個附加功能。拓展用例是可選的,如果缺少拓展用例,不會影響到基用例的完整性。

箭頭指向(需要特別注意):指向基用例

ss

一個完整的系統用例圖:

ss