2016-12-22 81 views
-1

我有類似於圖中所示的類圖。什麼時候使用UML直接關聯與正常關聯

enter image description here 有一個控制器有一些TopicLoaderIF和幾個TopicReaderIF類。 TopicLoaderIF根據Controller的請求創建一系列TopicIF。然後,Controller將這些TopicIF轉發給正確的TopicReaderIF。我們不要在天氣中輸入這些模型是否正確,但是在它們之間的關係中。

事情是,我一直試圖將這個模型化爲一個UML類圖,但我堅持思考Controller和TopicIF(紅色)之間的關係,如果圖中應該有任何圖。此外,我也不確定是否所有三個TopicLoaderIF,Controller和TopicReaderIF都與TopicIF直接關聯是否正確。他們應該只是一個正常的協會,沒有箭頭?

我希望你能給我關於這張圖的任何建議。

+0

交互是抽象的。所以你不能用'TopcReaderIF'來編寫它們。 –

回答

1

可導航性表示A如果存在從AB的箭頭,則可以看到B。在粗略草圖中,這些箭頭可能會有幫助,但不是強制性的。如果箭頭不存在,那麼兩個類別都可以看到對方,但是不能。在實施這種非特定關聯時,您將根據需要進行判斷並僅實施所需的參考(如果B不需要看到A,則不會實施參考)。

一旦你進入詳細設計,你將開始使用角色名稱。這非常清楚導航如何工作。

TL; DR草圖繪製時,使用箭頭。一旦從細節開始,將其替換爲角色名稱。