不管您喜歡與否,諸如“統(tǒng)一建模語言 (UML)”類模型和用例模型這樣的軟件圖往往是根據(jù)它們的外觀來判定其好壞的??瓷先ァ罢麧崱钡膱D比看上去雜亂的圖更容易受到讀者 -- 常常是您的用戶或高級經(jīng)理 -- 的青睞。本文源自 Building Object Applications That Work 的第3 章。
我很愿意描述幾個重要的經(jīng)驗法則,這些法則將使您比其他建模同仁做得更好。這些雖然簡單但很關(guān)鍵的建議主要集中在如何安排組成軟件圖(包括 UML 類模型、用例模型,甚至持久模型)的那些框和線條,并因此適用于所有種類的圖。
要繪制一個外觀整潔的圖,您應(yīng)該避免:
· 大小不一的框
· 對角線
· 交叉線
· 曲線
· 混亂的圖
· 不必要的細節(jié)
讓我們從一個示例開始。在圖 1 和 2 中,您可以看到兩個用兩種不同風(fēng)格繪制的圖。第一個復(fù)雜,沒有章法,而第二個簡單,組織良好(雖然有些乏味)。您認為哪個設(shè)計更好呢?大多數(shù)人都會贊成第二個看上去更好一些,因為雖然這兩種設(shè)計在功能上是相等的,但第二個的安排更整潔。
避免大小不一的框
如何對圖 1 加以改進呢?首先,確保所有框的大小都一樣。大框看上去比小框更重要一些,如果這是您嘗試表達的,那么這樣做沒錯 -- 但如果讓我選的話,我寧愿將所有框保持相同的大小。這種方法最適合于“UML 用例”圖,因為其中的所有用例框和參與者符號可以很方便地統(tǒng)一成一樣,此外還適用于“UML 協(xié)作圖”、“UML 序列圖”和“UML 用戶界面流程圖”。對于框中包含的信息量不同的圖,例如“UML 類圖”(其中個別類有數(shù)量不等的屬性和操作),或者“UML 狀態(tài)圖表圖”和“持久”(數(shù)據(jù))模型,那就有一些困難了。
我很愿意描述幾個重要的經(jīng)驗法則,這些法則將使您比其他建模同仁做得更好。這些雖然簡單但很關(guān)鍵的建議主要集中在如何安排組成軟件圖(包括 UML 類模型、用例模型,甚至持久模型)的那些框和線條,并因此適用于所有種類的圖。
要繪制一個外觀整潔的圖,您應(yīng)該避免:
· 大小不一的框
· 對角線
· 交叉線
· 曲線
· 混亂的圖
· 不必要的細節(jié)
讓我們從一個示例開始。在圖 1 和 2 中,您可以看到兩個用兩種不同風(fēng)格繪制的圖。第一個復(fù)雜,沒有章法,而第二個簡單,組織良好(雖然有些乏味)。您認為哪個設(shè)計更好呢?大多數(shù)人都會贊成第二個看上去更好一些,因為雖然這兩種設(shè)計在功能上是相等的,但第二個的安排更整潔。
避免大小不一的框
如何對圖 1 加以改進呢?首先,確保所有框的大小都一樣。大框看上去比小框更重要一些,如果這是您嘗試表達的,那么這樣做沒錯 -- 但如果讓我選的話,我寧愿將所有框保持相同的大小。這種方法最適合于“UML 用例”圖,因為其中的所有用例框和參與者符號可以很方便地統(tǒng)一成一樣,此外還適用于“UML 協(xié)作圖”、“UML 序列圖”和“UML 用戶界面流程圖”。對于框中包含的信息量不同的圖,例如“UML 類圖”(其中個別類有數(shù)量不等的屬性和操作),或者“UML 狀態(tài)圖表圖”和“持久”(數(shù)據(jù))模型,那就有一些困難了。