2016-01-22 91 views
0

我使用Visual Paradigm CE在UML中建模一個用例,但是我對我的模型有一些懷疑。看看下面的圖片:一些幫助圖用Visual Paradigm的用例

enter image description here

這是我想用這個模型來表示規則:

  • 有3種用戶類型:超級管理員,管理員和執行
  • 有一項功能稱爲:Admin用戶
  • 管理員用戶分爲4個基本操作:創建,讀取,更新和刪除
  • Superadmin有一個LL電源(可以做任何事情),而管理員只有幾個權限(在這種情況下創建用戶)
  • 長官只能執行系統內的幾個動作:創建用戶和刪除用戶

以此爲一個出發點,該圖是否正確?怎麼辦?我必須說,這是一個示例用例,以獲得表示圖元素之間關係的正確方法。

更新:由基於答案@托馬斯 - 克里安我做了這兩個圖表:

including CRUD in Admin User UC extends CRUD from Admin User UC

+0

在大多數情況下,您可以將所有CRUD場景合併到一個用例中,例如「管理用戶」。我不會在用例級別對這些低級安全性要求建模。 –

+0

@GeertBellekens是的,但是之後我可能會遇到描述UC的麻煩,因爲它應該有幾個動作,而且我不清楚如何實現此描述。 – ReynierPM

+0

使用用例場景來描述不同情況。 –

回答

1

你真的需要用例「Admin User」嗎?也許下面的圖表將滿足您的需求:

enter image description here

如果你真的有「Admin用戶的行爲,不包含在其他用途​​的情況下,那麼你就可以繼續使用,但是我會用一致的命名約定,例如動詞+名詞,因此將「管理員用戶」重命名爲「管理用戶」。

圖1是可能的。在這種情況下,SuperAdmin可以直接(從Admin繼承)和Admin User直接訪問「創建用戶」功能。顯然,管理員用戶有多個備選流程。創建用戶包含在一個替代流程中,在另一個流程中更新用戶等。這很好。

圖2也是可能的。在這種情況下,SuperAdmin只能通過管理員用戶訪問「創建用戶」功能。

圖3是可能的,但棘手。演員'管理員'和'執行'與所謂的「擴展用例」創建用戶和刪除用戶相關聯。擴展用例通常只定義一個用例案例片段,該用例片段將被插入擴展用例(Admin User)中的特定點。但是由於Actor和Executive直接執行用例Create User和Delete User,所以這些用例必須描述完整的事件流。如果您設法定義擴展用例的事件流,以便它們適用於直接執行和用於在用例Admin User中的擴展點處插入,那就沒有問題。

+0

Thx圍繞命名約定的提示我使用這些作爲示例(不會在真實圖上使用)。看到我遇到的主要問題是因爲我在Web應用程序中工作。應用程序將有兩個主要區域:'前端'和'後端'。此時它將有五個主要角色:'ROLE_SUPER_ADMIN','ROLE_ADMIN','ROLE_EXECUTIVE'和另外兩個角色。這些角色可以訪問後端,但不能訪問所有區域,所以我需要在圖表中繪製這些角色,以便與團隊的其他成員討論。那麼,你將如何建模? – ReynierPM

+0

我在答案中添加了一個圖表,說明如何對它進行建模。 –

+0

太好了,我喜歡你的方法,現在我將使用它關於我使用Visual Paradigm 13.0 CE的圖工具,我需要很多UC,有什麼辦法可以將UC的功能分開?例如,一個主要的圖表說「管理用戶」,然後點擊進入這個案例的擴大視圖,包含一個像你這樣的圖表?任何想法在這一個?看看[這個](http://content.screencast.com/users/ReynierPM/folders/Snagit/media/7314fea9-19ee-42e4-9b57-dd81792a2aed/01.26.2016-00.16。png),那麼你會知道我在說什麼。 – ReynierPM

0

這主要取決於你問的人。因此,這裏有我的5美分:

  • 避免包括/擴展,因爲它們是功能分解的跡象(如果有的話:延長你的圖中繞錯路)
  • CRUD UCS總是邊緣。在這種情況下,我不會嘗試引入Admin User,因爲它在CRUD部分似乎不是有效的UC。
  • 當您連接演員時,超級管理員可以執行任何操作,但管理員只能創建。這似乎不合邏輯。如果你有一個廣義的演員,這繼承了一般的UCs的所有訪問。意思是:你不需要重複與UC的連接(除非你添加一些限制)。
+0

好的,看一下我在OP上編輯的內容,並根據正確的表示形式進行編輯?或者再給我另外5美分:p lol – ReynierPM

+1

好吧,你扭轉了延伸,但你沒有注意我說的話。包含變體是完全廢話:-p。意味着管理員用戶將涉及所有的CRUD步驟。 –

+0

我認爲UML規範留下了解釋的空間,一個包含的用例可能包含在另一個流程中,因此不會在每個場景中執行。 –