在上一期,介紹了Peter Coad在1999年出版的《Java Modeling In Color With UML: Enterprise Components and Process》書中,四個原型概念的前二個,採用粉紅色的時間片段原型,以及黃色的角色原型,本期繼續介紹接下來的兩種,綠色的人(組織)、地、物原型,以及藍色的敘述原型。

人(組織)、地、物原型
前面提到角色原型時,不斷提到了人(組織)、地、物的概念,所以你對這個概念應該不陌生了,而我個人則認為這是最容易懂的概念了,幾乎我們張眼所見的具體實物都是人(組織)、地、物原型的應用。

Pater Coad書中使用“party”代表人(person)或組織(organization),我不確定“party”一字怎麼翻譯比較恰當,所以就沒特別翻譯了,直接寫出「人(組織)」。

人(組織)、地、物原型的代表色是綠色,字標可以使用《party》代表人或組織、《place》代表地方、《thing》代表物品,如圖1所示。


圖1:人(組織)、地、物原型


例如,銷售的範例中,商家是組織,而個人則是套用人的概念,這兩者都套用人(組織)、地、物原型,如圖2所示。


圖2:商家是組織、個人是人


再看到圖3和圖4的範例,書籍是物品,而停車位則套用了地方的概念。


圖3:書籍是物品



圖4:停車位是地方



敘述原型
雖然,我們先談了人(組織)、地、物原型,可是Peter Coad卻認為第三重要的原型是「敘述」原型(description archetype)。我沒看到Peter Coad說明的原因,不過我自己推想,可能是因為人(組織)、地方、物品比較具體好辨識,想要視而不見也難,所以也就沒必要將它們的重要性往前提了。

「敘述」原型的代表色是藍色,字標為《description》,如圖5所示。敘述代表一組數值(a collection of values),可以不斷被一次又一次地套用。由於,可能會有一組物品對應到相同的敘述,所以跨這組物品的共同行為可以由敘述類別來提供。


圖5:敘述原型


敘述原型的應用也很廣泛。比方說,臺北市立圖書館收藏了七本我寫的《OCUP/UML初級認證攻略》,總館收藏了二本,民生分館、景新分館、天母分館、李科永紀念圖書館、永明分館各收藏了一本,一共七本,可是這七本書只需要一份共用的書籍說明,如圖6所示。


圖6:書籍說明


還有,秋高氣爽是出遊的好天氣,你也會發現多個北海道賞楓行程,由於行程完全相同,只是出遊的日期不同,所以只需要一份行程說明,正如圖7所示。


圖7:行程說明


Peter Coad提出顏色建模的概念,其實是既古典又新潮的做法。說顏色建模的概念古典,那是因為一般人大概很難想像沒有顏色的世界;顏色蘊含著額外的資訊,顏色對我們既是理所當然、又是習以為常的存在。

但說顏色建模的概念新潮,那是因為在軟體建模的世界中,據我所知,還未有人提出利用顏色而非形狀或文字,來傳達更豐富的意涵。或者保守地說,也許過去有學者提出顏色建模的概念,但我想應該沒有人像Peter Coad如此大力宣傳這個概念了吧!

但是,反觀真實世界中,到處都是運用顏色傳達訊息的實例。比方說,馬路上的紅綠燈號誌,三個燈號都是圓形,但是顏色各有不同:紅燈代表停、綠燈代表行、黃燈代表警示。簡單地說,紅綠燈憑靠著不同顏色的燈號在運作,而非憑靠著不同的形狀來傳遞訊息。

再看台灣的主要政黨:藍色代表國民黨、綠色代表民進黨、黃色代表新黨、橘色代表親民黨,這些政黨甚至還用不上形狀,光是使用顏色就足以將政黨理念、支持民眾等等,一大票相關的人事物涇渭分明地切分開來。

總之,Peter Coad引用Edward R. Tufte在1990年出版的《Envisioning Information》一書,說明顏色與資訊(information)的相關性上,顏色可以達到四個目的:分類(to label)、度量(to measure)、表現(to represent or imitate reality)與裝飾(to enliven or decorate)。

為什麼Peter Coad要用顏色建模,可有什麼好處?四色原型跟物件導向分析常用的交易樣式有什麼關係?將在下一期告訴你。

延伸閱讀
沒時間讀 UML/OOAD 書之挑讀筆記 第1回 四色原型(1)

作者簡介:
邱郁惠
研究OOAD、UML、MDA十餘年,經歷過顧問、專案、教學及寫作工作。離職後創辦UML Blog推廣UML,組織《UML互助會》社群定期舉辦軟體技術講座,出版多本UML專業書籍與電子書。目前擁有OCUP/UML三級認證、PMP認證。

熱門新聞

Advertisement