0
我需要製作一個UML圖,但我不確定如何實現它的一個特定的東西。假設我有一個license
作爲對象,它可以是terminal
或anywhere license
。它必須是其中的一個,不能不是它。我認爲有license
對象連接到anywhere license
和terminal
與基數0..1兩者。這是正確的嗎?我應該有其他的基數還是其他結構?UML-如何使它成爲正確的模型?
我需要製作一個UML圖,但我不確定如何實現它的一個特定的東西。假設我有一個license
作爲對象,它可以是terminal
或anywhere license
。它必須是其中的一個,不能不是它。我認爲有license
對象連接到anywhere license
和terminal
與基數0..1兩者。這是正確的嗎?我應該有其他的基數還是其他結構?UML-如何使它成爲正確的模型?
你所描述的聽起來更像是一種泛化,其中license
是一個抽象類,terminal
和anywhere license
是它的專業化。
但是你可能會想只是在license
一個location
屬性與價值terminal
和anywhere license
作爲可能的值。然後使用可用值terminal
和anywhere license
創建枚舉LocationEnum
。然後加入到'許可」屬性:
location:LocationEnum
那麼你location
必須有可用值之一LocationEnum
。
你的問題也可以通過其他方式來理解,但這些是最可能的方法,將是一個合適的解決方案。選擇哪一個取決於更多的模型細節。
有沒有辦法在'license'上沒有任何屬性? – XtremeBaumer
第一個解決方案(使用泛化)不使用任何屬性。由於要求不是100%清楚,我試圖提供最合理的解決方案。但正如我寫的,最好的解決方案將取決於模型的其餘部分。 – Ister