2014-01-22 105 views
0

X公司希望建立一個基於網絡的系統,充當思想的市場。用戶應該能夠登錄併發布新的想法。其他用戶可以對他們發表評論並「上傳」他們。管理員可以登錄並標記已實施的想法,並可以獎勵發佈該想法的員工。 以下是要求:UML用例圖演員

Users should be able to login. 
Users should be able to post a new idea. 
Users should be able to search for and view other ideas 
Users should be able to comment on ideas 
Users should be able to upvote ideas 
Administrators should be able to mark ideas as implemented 
Administrators should be able to delete unwanted comments 

你們認爲我的圖是正確的?我是UML新手,所以你們可以開玩笑!

http://imgur.com/TGKhweh

+0

+1從一個正確的問題開始。 (完成作業,你真的要求諮詢)。歡迎,祝你好運。 – Gangnus

+0

不要忘記標記答案!:-) – Gangnus

回答

1

這是一個不那麼糟糕的開局。只有:

  • 管理員也是用戶。他們從他們身上下來。因此,他們應該有一個generalization連接 - 從管理員到用戶的空三角頭箭頭。或者轉到OtherUser(請看下面)。

  • 有一個代理人的樣本圖片和名稱是更自然的。所以,用戶,管理員 - 單數。

  • 只有當用戶具有不同的定義時,纔可以將用戶從其他用戶中劃分出來,並且也可以從文檔中看到差異。不是這樣。我只會使用用戶。 當然,如果有些用戶真的擁有不同的權利,那就OK,但是:

    • 這個名字不好,恕我直言。
    • 他們有用戶的所有選項,不是嗎?因此,他們不得不從用戶

  • 則應該通過添加你的未來系統的部分繼續,這將與這些用例人代理合作下降。現在你只完成了前半部分的工作。

編輯:

  • 還有你的管理還沒有推廣誤差從管理員用戶。管理員可以完成用戶可以完成的所有活動,不能嗎?
  • 圖中仍然沒有子系統。
  • 通過舊的想法搜索應該是直接連接到用戶的用例。它不會在圖表上延伸任何東西。
  • 記住 - 僅在UC圖創建的最後階段使用Include和Extends。當你已經有了主要圖片並正在改進它。很多時候它們只能用於更深入,更透徹的圖表。從頭開始使用Include和Extend意味着你還沒有找到主要的概念。
+0

我將用戶和其他用戶分開的原因是因爲其他用戶可以對想法發表評論並對他們進行提升,而用戶(誰執行這項提議的用戶)無法做到這一點。我的想法太多了嗎? – knrkn

+0

他們也寫這些,他們也是這些人的想法。當然,他們可以評論評論,不是嗎?您正試圖爲一個想法設定權利規則,而不是想法。這不是通用UC圖的任務。也許,如果這些權利很複雜,你可以爲它寫一些特殊的用例。不,在你建模時你不會想太多,但是你可以在一個圖表中放入太多的信息。它有混合。 – Gangnus