一、概述:在系統之外與系統互動的某人或某事物。(參與者還有另一種叫法:主角。參與者容易讓人誤解為只要參與了業務的,都是參與者,而主角很明確的指出,只有主動啟動這個業務的才是參與者。1)如何找到參與者,確定系統邊界。
在乙個業務中可以問自己兩個問題:
a.誰對系統有著明確的目標和和要求並且主動發出動作。
b.系統是為誰服務。
(2)參與者可以非人
例如:每天自動統計網頁訪問量,生成統計表,並傳送至管理員信箱。二、發現參與者。這個需求是每天自動統計訪問量,這個需求的參與者或者說主角是乙個計時器,它每天在某乙個固定的時刻啟動這個需求。
參與者的乙個重要**是涉眾。參與者一定是直接並且主動地向系統發出動作並獲得反饋的,否則不是參與者。三、業務主角。業務主角是參與者的乙個版型,特別用於定義業務的參與者。業務主角是客戶實際業務裡的參與者,沒有計算機系統,沒有抽象的計算機角色。業務角色必須在實際業務裡能找到對應的崗位或人員。在建立業務模型、查詢業務用例都必須使用業務主角,而不是普通的參與者。在做尋找業務主角的時候要拋開計算機,就算沒有計算機系統這些業務人員也存在。舉個例子:機票預定系統。
情況一:機票購買者通過登入**購買機票,那麼機票購買者就是參與者。如下圖。
情況二:加入機票購買者通過呼叫中心,有人工坐席訂票系統購買機票,那麼人工坐席才是真正的參與者,而機票購買者實際上是互交中心的參與者,如下圖。
情況三:如果機票購買者通過呼叫中心的自動語音預定機票而不是通過人工坐席,那麼呼叫中心就成為機票預定系統的乙個參與者。這是乙個非人類的例子。如下圖。
情況四:如果擴大系統邊界,讓呼叫中性成為機票預定系統的乙個子系統,如果購買者可以自主選擇通過人工坐席、自動語音還是登入**預定機票。那麼票購買者為參與者,人工坐席為業務工人。如下圖。
四、業務工人。
處於系統邊界內,卻參與了業務執行過程。就想上面航空訂票的第四種情況,人工坐席就是乙個業務工人。
五、參與者與涉眾的關係。
涉眾:與要建設的這個系統有利益相關的一切人和事,涉眾的利益要求會影響的建設。參與者是涉眾
代表。
六、參與者與使用者的關係。
使用者是指系統的使用者。使用者是參與者的代表。七、參與者與角色的關係。
角色是參與者的職責。角色從重挫參與者的職責中抽象出相同的那一部分。八、參與者的核心地位。
a.(如圖)參與者是涉眾的代表,代表涉眾對系統的利益要求,並向系統提出建設要求。
b.參與者通過**給其他使用者或將自身例項化成使用者來是使用系統
c.參與者的職責可以用角色來歸納,使用者被制定扮演哪個或哪些角色因此來獲得參與者的職責。
d.系統是以參與者的觀點來決定。
九.
檢查參與者是否正確。
回答一下幾個問題a.是否您已經找到所有的參與者?也就是說,是否您已經對系統環境中的所有角色進行了說明和建模?
b.每個參與者是否至少涉及到乙個用例?
c.您能否列出至少兩名可以作為特定參與者的人員?
d.是否有參與者擔任與系統相關的相似角色。
e.是否有兩個參與擔任與用例相關的同一角色?如果有,應該利用參與者泛化關係來為他們的共享行為建立模型。
f.特定的參與者是否將以集中方式使用系統?
g.參與者是否有直觀名稱和描述性名稱?
UML核心元素之參與者
一 概述 在系統之外與系統互動的某人或某事物。1 如何找到參與者,確定系統邊界。在乙個業務中可以問自己兩個問題 a.誰對系統有著明確的目標和和要求並且主動發出動作。b.系統是為誰服務。參與者還有另一種叫法 主角。參與者容易讓人誤解為只要參與了業務的,都是參與者,而主角很明確的指出,只有主動啟動這個業...
UML 核心元素之參與者Actor
參與者 actor 在系統之外與系統互動的某人或某事物。例如,管理員,使用者等等。參與者位於邊界之外,邊界之內的都不叫參與者。用乙個詞來形容更準確,主角。也就是只有主動啟動了這個業務的人,才是參與者。第二點要注意的是,參與者可以非人。參與者可以是另乙個計算機系統 乙個計時器 乙個感測器等。任何乙個功...
UML學習 2 參與者
一 參與者 參與者 在建模過程中處於核心地位。uml官方文件對參與者的定義為 actor是在系統之外與系統互動的某人或某事物 大象 thinking in uml,p39 1.參與者特徵 用例的乙個特徵是 不存在沒有參與者的用例,用例不應該自動啟動,也不應該主動啟動另乙個用例。大象 thinking...