uml(統一建模語言)是當前軟體開發中使用最為廣泛的建模技術之一,通過使用uml可以構造軟體系統的需求模型(用例模型)、靜態模型、動態模型和架構模型。uml通過圖形和文字元號來描述乙個系統,它是繪製軟體藍圖的標準語言。熟練掌握uml建模技術是乙個優秀的軟體從業人員所必備的基本技能之一,越來越多的軟體企業在招聘中也需要應聘者具備一定的uml知識基礎和實踐經驗。
作為uml的初學者,很多人也在嘗試使用uml中的圖形來描述乙個軟體系統,構造乙個軟體系統的藍圖。然而,在使用uml的過程中,一部分人並沒有深入理解這些圖的作用,以及這些圖在繪製過程中的一些技巧。我將陸續通過幾篇文章來幫助大家更快更好地學習uml,在軟體專案中合理使用uml來提高軟體開發效率並規範軟體開發流程。
在本文中我將結合庫存管理系統來深入淺出地講述uml建模中的第乙個模型——需求模型的構造,即用例建模,包括如何繪製規範的用例圖、如何編寫簡潔而又清晰的用例文件、以及怎樣通過用例圖和用例文件來構造軟體系統的需求模型。
在uml中,需求模型又稱為用例模型,它主要用於描述系統的功能性需求,即軟體可以實現的功能,如登入、註冊、入庫、出庫、檢視庫存報表、增加員工資訊等。常規的用例建模一般包括兩個組成部分:繪製用例圖和編寫用例文件。
1. 繪製用例圖
用例圖是uml中比較簡單的一種圖形,它包含兩個主要組成元素,分別是執行者(actor)和用例(use case)。執行者又稱為參與者或角色,用例又稱為用況或案例。在用例圖中,執行者用乙個「小人」符號表示,用例用乙個「橢圓」符號表示,因此用例圖又有乙個名字為「小人橢圓圖」。最簡單的用例圖如下:
在該用例圖中,「倉庫管理員」表示執行者,「入庫」表示乙個用例,即系統的乙個功能。
執行者是指直接和系統互動的一類事物,執行者主要有如下三類:
(1) 直接使用系統的人,如使用乙個庫存管理系統的倉庫管理員、倉儲部經理等使用者,倉庫管理員可以通過系統進行入庫和出庫操作,倉儲部經理可以通過系統檢視各種報表,如庫存報表、財務報表等;
(2) 與該系統相關的其他系統,如在庫存管理系統中如果涉及到付款操作,需要使用另乙個軟體——支付系統,此時支付系統就是庫存管理的執行者之一;
(3) 自動發生的事件,如時間、溫度等自動事件,如果庫存管理系統要求每晚零點執行乙個資料彙總操作,此時時間就成為該操作的執行者。
識別乙個系統的執行者是用例建模的第一步,在識別出乙個系統的執行者後,需要尋找系統的用例,即功能需求。用例是執行者對系統操作的乙個動作序列,每乙個用例對應執行者對系統的乙個完整操作流程。如庫存管理系統中,倉庫管理員可以登入系統,可以進行入庫、出庫等操作,在這裡登入、入庫、出庫都是用例,它們都對應系統所提供的乙個功能。執行者通過執行用例來完成相應的工作。用例體現了執行者和軟體系統的互動過程,因此只用乙個簡單的「橢圓」來表示用例太過簡單,對於每乙個用例,需要編寫乙個詳細的用例文件,在下一節將介紹如何編寫用例文件。
uml(統一建模語言)是當前軟體開發中使用最為廣泛的建模技術之一,通過使用uml可以構造軟體系統的需求模型(用例模型)、靜態模型、動態模型和架構模型。uml通過圖形和文字元號來描述乙個系統,它是繪製軟體藍圖的標準語言。熟練掌握uml建模技術是乙個優秀的軟體從業人員所必備的基本技能之一,越來越多的軟體企業在招聘中也需要應聘者具備一定的uml知識基礎和實踐經驗。
作為uml的初學者,很多人也在嘗試使用uml中的圖形來描述乙個軟體系統,構造乙個軟體系統的藍圖。然而,在使用uml的過程中,一部分人並沒有深入理解這些圖的作用,以及這些圖在繪製過程中的一些技巧。我將陸續通過幾篇文章來幫助大家更快更好地學習uml,在軟體專案中合理使用uml來提高軟體開發效率並規範軟體開發流程。
在本文中我將結合庫存管理系統來深入淺出地講述uml建模中的第乙個模型——需求模型的構造,即用例建模,包括如何繪製規範的用例圖、如何編寫簡潔而又清晰的用例文件、以及怎樣通過用例圖和用例文件來構造軟體系統的需求模型。
在uml中,需求模型又稱為用例模型,它主要用於描述系統的功能性需求,即軟體可以實現的功能,如登入、註冊、入庫、出庫、檢視庫存報表、增加員工資訊等。常規的用例建模一般包括兩個組成部分:繪製用例圖和編寫用例文件。
1. 繪製用例圖
用例圖是uml中比較簡單的一種圖形,它包含兩個主要組成元素,分別是執行者(actor)和用例(use case)。執行者又稱為參與者或角色,用例又稱為用況或案例。在用例圖中,執行者用乙個「小人」符號表示,用例用乙個「橢圓」符號表示,因此用例圖又有乙個名字為「小人橢圓圖」。最簡單的用例圖如下:
在該用例圖中,「倉庫管理員」表示執行者,「入庫」表示乙個用例,即系統的乙個功能。
執行者是指直接和系統互動的一類事物,執行者主要有如下三類:
(1) 直接使用系統的人,如使用乙個庫存管理系統的倉庫管理員、倉儲部經理等使用者,倉庫管理員可以通過系統進行入庫和出庫操作,倉儲部經理可以通過系統檢視各種報表,如庫存報表、財務報表等;
(2) 與該系統相關的其他系統,如在庫存管理系統中如果涉及到付款操作,需要使用另乙個軟體——支付系統,此時支付系統就是庫存管理的執行者之一;
(3) 自動發生的事件,如時間、溫度等自動事件,如果庫存管理系統要求每晚零點執行乙個資料彙總操作,此時時間就成為該操作的執行者。
識別乙個系統的執行者是用例建模的第一步,在識別出乙個系統的執行者後,需要尋找系統的用例,即功能需求。用例是執行者對系統操作的乙個動作序列,每乙個用例對應執行者對系統的乙個完整操作流程。如庫存管理系統中,倉庫管理員可以登入系統,可以進行入庫、出庫等操作,在這裡登入、入庫、出庫都是用例,它們都對應系統所提供的乙個功能。執行者通過執行用例來完成相應的工作。用例體現了執行者和軟體系統的互動過程,因此只用乙個簡單的「橢圓」來表示用例太過簡單,對於每乙個用例,需要編寫乙個詳細的用例文件,在下一節將介紹如何編寫用例文件。
UML用例建模解析(二)
1 關聯關係 關聯關係是指執行者與用例之間的關係,又稱為通訊關係,如果某個執行者可以對某個用例進行操作,它們之間就具有關聯關係,如下圖所示,經理 有乙個功能為 檢視庫存報表 因此可以在執行者 經理 和用例 檢視庫存報表 之間建立乙個關聯關係,關聯關係用實線表示。2 泛化關係 執行者之間的關係只有一種...
UML 用例建模技巧
uml 用例建模技巧 從參與者的角度並以主動語態編寫用例。應該以主動語態 學生表明參加研習班意向 而不是被動語態 研習班意向被學生表明 來編寫用例。而且,應該從參與者的角度來編寫用例。畢竟,用例的目的是理解使用者如何對系統進行操作。編寫方案文字,而非功能需求。用例描述的是對參與者來說有價值的一系列行...
再學UML UML用例建模解析(一)
uml 統一建模語言 是當前軟體開發中使用最為廣泛的建模技術之一,通過使用uml可以構造軟體系統的需求模型 用例模型 靜態模型 動態模型和架構模型。uml通過圖形和文字元號來描述乙個系統,它是繪製軟體藍圖的標準語言。熟練掌握uml建模技術是乙個優秀的軟體從業人員所必備的基本技能之一,越來越多的軟體企...