我意識到這個問題不是很清楚,所以我會嘗試解釋。 我試圖設計一個版本控制系統。 有三種類型的用戶:簡單用戶,所有者和操作員。 操作員絕不是簡單的用戶/所有者,但是,他可以以特殊模式運行系統,這將允許他作爲簡單的用戶或所有者來測試系統的正確性。設計 - 有時一個對象是 - 一個,有時它不是
問題:如何描述系統操作員和簡單用戶/所有者之間的關係(UML)? 我一直在思考一個簡單的繼承關係,但我的同事不同意...
我意識到這個問題不是很清楚,所以我會嘗試解釋。 我試圖設計一個版本控制系統。 有三種類型的用戶:簡單用戶,所有者和操作員。 操作員絕不是簡單的用戶/所有者,但是,他可以以特殊模式運行系統,這將允許他作爲簡單的用戶或所有者來測試系統的正確性。設計 - 有時一個對象是 - 一個,有時它不是
問題:如何描述系統操作員和簡單用戶/所有者之間的關係(UML)? 我一直在思考一個簡單的繼承關係,但我的同事不同意...
我也不同意你,用戶/所有者/管理員,只是具有不同權利的同一個對象。所以你應該將你的用戶與權利屬性聯繫起來。 當然可以使用繼承,但不夠。用戶/超級用戶/管理員的含義沒有什麼不同,他們都是例如一個人。 您可以將用戶更改爲超級用戶和管理員,反之亦然,這就是爲什麼我不會在這裏使用繼承。
鑑於用戶需要模擬所有者或用戶。
我想我會嘗試
用戶實體名稱,密碼類型等來管理日誌一樣共同的東西。
然後三個實體操作,所有者和用戶具有一個用戶。
有可能(可能會有)更多的東西,你可以使共同的,但我一定會去有一個,而不是一個。
即使沒有冒充要求,我也會這樣做,因爲繼承會建議所有者可以完成用戶可以執行的所有操作並操作擁有者可以執行的所有操作,而這不可能是真實的。