2016-03-04 28 views
2

我對UML很陌生,特別是用例圖。我試圖爲我的應用程序繪製一個用例圖,其中包括租戶,賣家和一般用戶。我的出租人和賣家可以延伸普通用戶。我在包含和擴展方面遇到問題。例如,當您查看辦公空間時,您還可以在頁面底部查看它的評論。除了承租人希望撰寫評論時,他/她必須在查看辦公空間頁面上執行此操作。我不確定這是擴展還是包含。如果我對我的箭頭方向有任何疑問,請糾正我。另外,可以說租戶和賣方包括登錄嗎?使用案例圖有擴展的問題,並且包含在我的圖中

enter image description here

回答

2

正如Jim所說:I/E適用於UCs,不適用於演員。我假設你的意思是泛化,所以都從一般用戶繼承。

enter image description here

一些進一步的觀察:

  • 使用動詞實質性的UCS標題
  • 思考的使用情況下, 「使用」。 IOW:增值。如果你沒有找到它的附加值,那麼它不是用例。
  • 避免一般的I/E。他們經常表示您嘗試使用不是UC合成目標的功能分解。
  • 在任何情況下,您在UCs之間繪製的關係都是錯誤的。沒有關係,它有一個實心的三角形,並點綴。您可能打算使用一些<<include>>依賴項(打開箭頭)。但如上所述:避免它。只需爲演員創建一個關聯。只需在評論和普通用戶之間繪製一個就足夠了,因爲Renter會繼承關係。
  • 登入/離開沒有UCs(沒有附加值)。這是對其他UC的限制(寫{必須登錄}並連接到連接器)
+0

謝謝!你說這兩個都是一般用戶的概括。我怎樣才能在UML圖上顯示這個?我應該保持箭頭沒有延伸? – unconditionalcoder

+0

泛化以實線表示,並以一個未填充的三角形結束於普通課程。所以,只需用一個沒有刻板印象的堅實的虛線替換你的虛線,並使箭頭成爲一個未填充的三角形。 –

2

你一般不應模型登錄用的情況下,因爲它們不直接幫助用戶完成任何事情,他或她關心。

包含和擴展是使用用例之間的關係,而不是演員。的UML 2.5規範表示:

  • 一個擴展是:

    從延伸用例以擴展的用例,它指定如何以及何時在延伸用例中定義的行爲能夠被插入到所述的關係行爲在擴展的UseCase中定義。

  • 一種包括是:

    包含關係指定一個用例包含另一個用例中定義的行爲。

演員之間的一般化/專業化關係是完全沒有問題。這只是一個泛化箭頭。 (例如,帶有空心箭頭的實線)。

+1

http:// stackoverflow。com/questions/13224218/can-i-extend-actor-in-use-case – unconditionalcoder

+0

嗯......我會看看UML 2.5規範,以確保我是正確的......感謝您指出了這一點。 –

+0

另外,我用這個作爲指導。 http://www.gatherspace.com/static/use_case_example.html提示4擴展它以及 – unconditionalcoder

相關問題