隨筆-314  評(píng)論-209  文章-0  trackbacks-0

          統(tǒng)一建模語言(Unified Modeling LanguageUML

          一些術(shù)語:

          系統(tǒng)(system)指的是硬件和軟件的結(jié)合體,它能提供業(yè)務(wù)問題的解決方案。

          系統(tǒng)開發(fā)(system development)是為客戶建立一個(gè)系統(tǒng)的過程。

          客戶(client)是需要解決問題的人。

          系統(tǒng)分析員(analyst)將客戶所要解決的問題編制成文檔,并將該文檔轉(zhuǎn)交給開發(fā)人員。

          開發(fā)人員(developer)是為了及決客戶的問題而構(gòu)造軟件并在計(jì)算機(jī)硬件上實(shí)施該軟件的程序員。

          UML的組成

          UML包括了一些可以相互組合圖表的圖形元素。

          1.類圖

          一個(gè)類(class)是一類或一組具有類似屬性和共同行為的事物。

          矩形方框代表類的圖標(biāo),它被分成3個(gè)區(qū)域。最上面的區(qū)域中是類名,中間區(qū)域是類的屬性,最下面區(qū)域里列的是類的操作。

          舉一個(gè)例子,屬于洗衣機(jī)(washing machine)類的事物都具有諸如品牌(brand name)、型號(hào)(model name)、序列號(hào)(serial number)和容量(capacity)等屬性。這類事物的行為包括“加衣物(add clothes)”、“加洗滌劑(add detergent)”、“開機(jī)(turn on)”和“取出衣物(remove clothes)”等操作。

          2.對象圖

          對象(object)是一個(gè)類的實(shí)例,是具有具體屬性值和行為的一個(gè)具體事物。例如,洗衣機(jī)的品牌可能是“Laundatorium”,型號(hào)為“Washmeister”,序列號(hào)為“GL57774”,一次最多可以洗滌重量為16的衣物。

          對象的圖標(biāo)也是一個(gè)矩形,和類的圖標(biāo)一樣,但是對象名下面要帶下劃線。具體實(shí)例的名字位于冒號(hào)的左邊而該實(shí)例所屬的類名位于冒號(hào)的右邊。

          3.用例圖

          用例(use case)是從用戶的觀點(diǎn)對系統(tǒng)行為的一個(gè)描述。

          例,一個(gè)人使用一臺(tái)洗衣機(jī),顯然是為了洗衣服(wash clothes)。

          代表洗衣機(jī)用戶的智力小人形被稱為參與者(actor)。橢圓形代表用例。

          參與者(它是發(fā)起用例的實(shí)體)可以是一個(gè)人也可以是另一個(gè)系統(tǒng)。

          4.狀態(tài)圖

          一臺(tái)洗衣機(jī)可以處于浸泡(soak)、洗滌(Wash)、漂洗(Rinse)、脫水(Spin)或者關(guān)機(jī)(off)狀態(tài)。

          最頂端的符號(hào)代表起始狀態(tài),最底端的符號(hào)表示終止?fàn)顟B(tài)。

          5.順序圖

          類圖和對象圖標(biāo)大的實(shí)系統(tǒng)的靜態(tài)結(jié)構(gòu)。在一個(gè)運(yùn)行的系統(tǒng)中,對象之間要發(fā)生交互,并且這些交互要經(jīng)歷一定的時(shí)間。UML順序圖所表達(dá)的正式這種基于時(shí)間的動(dòng)態(tài)交互。

          例,洗衣機(jī)的構(gòu)件包括一個(gè)注水的進(jìn)水管(Water Pipe)、一個(gè)用來裝衣物的洗滌缸(Drum)以一個(gè)排水管(Drain)。假設(shè)已經(jīng)完成了“加衣物”、“加洗滌劑”和“開機(jī)”操作。洗衣服這個(gè)用例被執(zhí)行時(shí)按照如下順序進(jìn)行:

          1通過進(jìn)水管想洗滌缸中注水。

          2洗滌缸保持5分鐘靜止?fàn)顟B(tài)。

          3水注滿,停止注水。

          4洗滌缸往返旋轉(zhuǎn)15分鐘。

          5通過排水管排掉洗滌后的臟水。

          6重新開始注水。

          7洗滌缸繼續(xù)往返旋轉(zhuǎn)洗滌。

          8停止向洗衣機(jī)中注水。

          9通過排水管排掉漂洗衣物的水。

          10洗滌缸加快速度單方向旋轉(zhuǎn)5分鐘。

          11洗滌缸停止旋轉(zhuǎn),洗衣過程結(jié)束。

          圖中,對象之間發(fā)送的消息有:注入新水(Send fresh water)、保持靜止(Remain stationary)、停止注水(Stop)、往返旋轉(zhuǎn)(Ratate back and forth)、排掉洗滌后的臟水(Send soapy water)、排掉漂洗過的水(Send rinse water)等。

          6.活動(dòng)圖

          用例和對象的行為中的各個(gè)活動(dòng)之間通常具有時(shí)間順序。


          7.協(xié)作圖

          系統(tǒng)的工作目標(biāo)是由系統(tǒng)中各組成元素相互協(xié)作完成的。例子中洗衣機(jī)構(gòu)件的類集中又增加了一個(gè)內(nèi)部計(jì)時(shí)器(Internal Timer)。在經(jīng)過一段時(shí)間后,定時(shí)器停止注水,然后啟動(dòng)洗滌缸往返旋轉(zhuǎn)。圖中的序號(hào)代表命令消息的發(fā)送順序。

          8.構(gòu)件圖

          構(gòu)件圖和部署圖和整個(gè)計(jì)算機(jī)系統(tǒng)密切相關(guān)。

          9.部署圖

          UML部署圖顯示了基于計(jì)算機(jī)系統(tǒng)的物理體系結(jié)構(gòu)。它可以描述計(jì)算機(jī)和設(shè)備,展示它們之間的連接,以及駐留在每臺(tái)機(jī)器中的軟件。每臺(tái)計(jì)算機(jī)用一個(gè)立方體來表示,立方體之間的連線表示這些計(jì)算機(jī)之間的通信關(guān)系。

           

          如果需要將圖中的組織元素分組,或者在圖中說明一些類或構(gòu)件是某個(gè)特定子系統(tǒng)的一部分,可以通過將這些元素組織成包(package)來達(dá)到此目的。包用一邊突起的公文夾形圖標(biāo)來表示。

          注釋(note)的圖標(biāo)是一個(gè)帶折角的矩形,矩形框中是解釋性文字。注釋和被注釋的圖元素之間用一條虛線連接。

          構(gòu)造型(stereotype)能夠使用現(xiàn)有的UML元素來定制新的元素。構(gòu)造型用尖對括號(hào)括起來的一個(gè)名稱來表示,這個(gè)括號(hào)叫雙尖括號(hào)(guillemets)。

           

          v
          posted on 2008-05-30 21:03 xzc 閱讀(426) 評(píng)論(0)  編輯  收藏 所屬分類: UML

          只有注冊用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 龙海市| 安庆市| 青冈县| 迭部县| 惠水县| 盘山县| 合江县| 高雄县| 普兰店市| 米脂县| 宣汉县| 诸城市| 鄢陵县| 永善县| 略阳县| 青河县| 肃南| 黑龙江省| 全南县| 鄂托克旗| 山东| 临汾市| 呼图壁县| 那曲县| 台州市| 麻阳| 桑植县| 丽水市| 横山县| 监利县| 历史| 瑞金市| 湄潭县| 顺平县| 白河县| 沁源县| 扬中市| 漳平市| 平江县| 台南市| 嘉荫县|