軟體工程-用例圖基礎雜記

shark_辣椒發表於2020-10-08

主要元素

參與者:(描述與系統互動的人或物,代表外部實體(如使用者、硬體裝置或其它軟體系統))

用例: (用例即是執行者與計算機一次典型互動,代表系統某一完整功能。)

用例圖基本示範

在這裡插入圖片描述

建立用例模型

發現執行者

  1. 誰使用該系統;
  2. 誰改變系統的資料;
  3. 誰從系統獲取資訊;
  4. 誰需要系統的支援以完成日常工作任務;
  5. 誰負責維護、管理並保持系統正常執行;
  6. 系統需要應付那些硬體裝置;
  7. 系統需要和那些外部系統互動;
  8. 誰對系統執行產生的結果感興趣。

獲取用例

  1. 向執行者提出問題獲取用例
  2. 執行者需獲取何種功能,需要作什麼;
  3. 執行者需讀取、產生、刪除、修改或儲存系統中某種資訊;
  4. 系統發生事件和執行者間是否需要通訊。

這裡需要注意的是使用者的觀點並不是系統觀點
在這裡插入圖片描述
同時也需要注意用例的粒度以及不要在用例中描述系統的活動
在這裡插入圖片描述

用例圖的三種關係

泛化關係

如下圖所示,一般行為的檢查使用者可惜泛化出見檢查使用者密碼、檢查使用者視網膜
在這裡插入圖片描述
同樣的參與者的也可以進行泛化
在這裡插入圖片描述

擴充套件

允許一個用例擴充套件另一用例提供的功能,與泛化關聯類似,有更多規則限制
在這裡插入圖片描述

包含關係

在這裡插入圖片描述

小結

包含關係

使用場合
1. 如果兩個以上用例有大量一致的功能,則可以將這個功能分解到另一個用例中,其他用例可以和這個用例建立包含關係。
2. 一個用例的功能太多時,可以使用包含關係建立若干個更小的用例。
意義
它有助於將來實現系統時,確定哪些功能可以重用,在編寫程式碼時就可以實現程式碼的重用,縮短開發週期。
注意:執行基用例時,每次都必須呼叫被包含用例。

擴充套件

用一個用例(可選)擴充套件另一個用例(基本例)的功能。
使用場合
對擴充套件用例的限制規則:將一些常規的動作放在一個基本用例中,將可選的或只在特定條件下才執行的動作放在它的擴充套件用例中。

例題1

建立一航空公司的機票預定系統,讓客戶通過電話或網路買票、改變訂票、取消訂票、預定旅館、租車等等。

在這裡插入圖片描述

例題2

  1. 對考生送來的報名單進行檢查
  2. 對合格的報名單進行編好准考證號後將准考證送給考生,並將彙總後的考生名單送給閱卷站
  3. 對閱卷站送來的成績單進行檢查,並根據考試中心制定的合格標準審定合格者
  4. 製作考生通知單(含合格或不合格標誌)送給考生
  5. 按地區進行成績分類統計和試題難度分析,產生統計分析表

在這裡插入圖片描述

相關文章