用例建模Use Case Modeling


1. 用例建模簡介

用例是應用程序開發中的一個關鍵技術,主要用來捕獲系統的高層次(High Level)用戶功能性需求。這個繞口的描述主要是因為用例不能用於捕獲非功能性需求,也不能用於捕獲內部的功能性需求。試圖這樣做將會造成災難。首先因為用例是一個非正式的和不精確的建模技術。其次用例的另一個用途是建立我們系統的基本結構,它不僅是定義需求的單位,而且是估計我們的工作量的單位。如下圖所示是一款理財軟件的用例圖。

2.用例圖的概念組成

參與者actor:角色,系統的用戶

參與者是指在系統之外,但與系統直接交互的對象,即actor,也叫執行者、活動者。參與者用人形符號表示,在人形符號下面標出參與者的角色名。參與者不止是人員,也有可能是信息系統、設備。

系統邊界system scope:確定系統的范圍,邊界是一個方框,用例在邊界內,參與者在邊界外

用例use case:系統提供的服務。

關聯association:參與者與用例間的關系。

3.如何尋找和確定用例

參與者需要從系統中獲取哪種功能?

參與者是否需要讀取、產生、刪除、修改或存儲系統中的某種信息?

系統的狀態改變時,是否通知參與者?

是否存在影響系統的外部事件?

系統需要什么樣的輸入與輸出?

4.用例圖中的各種關系

1)參與者與用例間的關聯關系:參與者與用例之間的通信,也成為關聯或通信關系

2)用例與用例之間的關系:包含關系(include)、擴展關系(extend)、泛化關系。

a) 包含關系

包含關系描述的是一個用例需要某種功能,而該功能被另外一個用例定義,那么在用例的執行過程中,就可以調用已經定義好的用例。表示符號:<<include>>

b) 擴展關系

用一個用例(可選)擴展另一個用例(基本例)的功能,將一些常規的動作放在一個基本用例中,將可選的或只在特定條件下才執行的動作放在它的擴展用例中。表示符號:<<extend>>。

c)泛化關系

子用例繼承了父用例所有的結構、行為和關系,是父用例的一種特殊形式。

5.工程實踐的用例圖

本次工程實踐是基於ESP-WROVER-KIT開發板的數據采集系統,工程實踐的要求能夠使用多塊ESP32開發板實現自組網絡,並通過MQTT通訊協議連接到阿里雲平台上。由於嵌入式系統設計不像軟件開發,系統開發有明顯的業務需求。故工程實踐的用例圖只能根據開發板能夠實現的功能來畫,滿足了用戶的哪些需求。以下是結合工程實踐所畫的用例圖。

MQTT通訊協議:MQTT是輕量級基於代理的發布/訂閱的消息傳輸協議,它可以通過很少的代碼和帶寬和遠程設備連接。例如通過衛星和代理連接,通過撥號和醫療保健提供者連接,以及在一些自動化或小型設備上,而且由於小巧,省電,協議開銷小和能高效的向一和多個接收者傳遞信息,故同樣適用於稱動應用設備上。

自組網是一種移動通信和計算機網絡相結合的網絡,網絡的信息交換采用計算機網絡中的分組交換機制,用戶終端是可以移動的便攜式終端,自組網中每個用戶終端都兼有路由器和主機兩種功能。

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM