2012-12-18 269 views
4

我和我的同事們不同意一個觀點。在UML中,當進行聚合時,菱形形狀邊的最大值是1,還是可以是0 .. *?還是取決於一個觀點?
預先感謝您!聚合多樣性UML

回答

1

是的,它可以是0 .. *。有一個很好的例子here:部門有幾位教授,每位教授可以同時屬於幾個部門。

+0

@sfinnie歡迎您使用任何您喜歡的方式來表示這種關係。我不知道更好的方法 – SomeWittyUsername

+0

這是一個直接的二進制。空心鑽石告訴你沒有一個簡單的二進制文件不會。這只是視覺噪音。 – sfinnie

+0

但是不要拿我的話來說:閱讀這個問題(http://stackoverflow.com/questions/9640885/uml-aggregation-vs-association/9643017#9643017),看看Jim Rumbaugh,UML合着者,不得不說。 – sfinnie

2

首先,您需要具體說明哪種「鑽石」在聚合中是指空鑽石,而鑽石是成分?

如果你的意思是空的鑽石,那麼Icepack是正確的,你正在混淆2個獨立的事情。多重性與聚合無關,因此「菱形」聚合指標可以具有任何你喜歡的多重性,因爲它們是不相關的。

如果你的意思是實心鑽石即組成,那麼他們的例子有人發佈不會真的幫助你,因爲它說有很多部門,但只有1所大學(多樣性),並且如果所有部門被刪除,那麼大學也被刪除(組成) 。

我正在努力想出一個很好的例子,其中作文結束不會是1,只要我認爲它永遠不會是0 .. *因爲你可以有一個類,它必須刪除一些可能永遠不會存在?但我可以是1 .. *即多到很多,例如考試和考試問題。

多樣性可能是1 .. *到1 .. *即考試有一個或多個問題,一個問題可以存在於一個或多個考試中。在考試結束時填滿的鑽石(組成)將意味着如果所有問題都被刪除,那麼所有考試也將被刪除