右鍵解決方案,添加一個名稱為"Domain Model"的UML類圖。
首先站在整體的角度添加類,先不要任何屬性。

添加Customer對Wishlist的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Cusomter對Shopping Cart的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Customer對Order的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Shopping Cart對Shipping Cart Items的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Order對Order Line Item的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Wishlist對Toy的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Shopping Cart Items對Toy的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。
添加Order Line item對Toy的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False。

修改Customer與Order的關(guān)系為1對多關(guān)系。
修改Shopping Cart與Shopping Cart Items的關(guān)系為1對1或多關(guān)系。
修改Order與OrderLine item的關(guān)系為1對1或多關(guān)系。

如果某個類在某個時間點棄用該如何描述?
可以為棄用的類添加背景色,并添加備注,如下:

現(xiàn)在再對類具體化。
創(chuàng)建一個名稱為"Orders Model"的UML類圖。
從"UML模型資源管理器"中先后拉出"Order"和"Order Line item"這2個類,兩者之間的關(guān)系也依然被保存著。

豐富Order的屬性。
在Order中用到了Shipping Method屬性,該屬性是一個枚舉類型。在界面上添加一個名稱為"Shipping Methods"的枚舉。
添加Order對Shipping Methods的關(guān)聯(lián),把"屬性"中"Second Role"項中的"Is Navigable"設(shè)置為False,修改如下:

豐富Order Line item的屬性。

備注:
● 類名語義明確,沒有空格,不要寫成縮寫
● 不要創(chuàng)建多余的類,創(chuàng)建數(shù)據(jù)庫需要用到的類
● 力求類之間的關(guān)系簡單,不追求復雜的關(guān)系
● 添加屬性的時候,在必要的時候明確屬性類型
● 避免添加鍵屬性,這些是在具體設(shè)計的時候用上
參考資料:https://channel9.msdn.com/Blogs/clinted
新聞熱點
疑難解答