2.1 用例與用例圖
用例是需求分析中最重要的概念,需求表征了一個系統的設計特性、特征和行為,描述一個系統的需求意味著描述了建立在該系統外部的事物與系統之間的契約,契約上聲明了期望系統做什么。
需求獲取(Requirement Elicitation) 是需求工程的主體,其主要工作是建立待開發系統的模型,而用例就是用于建立這種模型的良好方法。用例最初由Ivar Jackboson博士提出,后被綜合到UML規范之中,成為需求表述的標準化體系。前文已經提到,整個RUP流程都是"用例驅動"的,各種類型的開發活動包括項目管理、分析、設計、測試、實現等以用例為主要輸入工件,用例模型奠定了整個系統軟件開發的基礎,用例被認作第二代面向對象技術的標志,可見其重要性非同一般。
我們先來給出一個具體而簡單的用例圖,即"圖書管理系統"用例圖,如圖2.1。在用例圖中主要涉及到參與者(又稱角色、執行者)、用例以及二者之間的通訊關聯。
圖2.1 圖書管理系統用例圖
參與者
參與者是與系統、子系統或類發生交互的外部用戶、進程或其他系統。參與者可以是人、另一個計算機系統或一些可運行的進程。在圖2.1中,"讀者"和"管理員"即為參與者。
參與者之間可以存在泛化關系,例如,在圖2.1所示圖書館管理系統用例圖中,可以認為"讀者"是"學生讀者"和"教師讀者"的泛化,而"學生讀者"還可以具體化為"本科生讀者"和"研究生讀者";同樣,"圖書管理人員"也是"采購員"、"編目員"及"借閱人員"的泛化。圖2.2表示出了參與者之間的泛化關系。
圖2.2 參與者泛化關系
原文轉自:http://www.anti-gravitydesign.com