我思故我強(qiáng)

          [轉(zhuǎn)]UML學(xué)習(xí)筆記(一):UML簡介


          [轉(zhuǎn)]UML學(xué)習(xí)筆記(一):UML簡介

          關(guān)鍵字: ? UML學(xué)習(xí)筆記????

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

          一些術(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 )、型號( model name )、序列號( serial number )和容量( capacity )等屬性。這類事物的行為包括“加衣物( add clothes )”、“加洗滌劑( add detergent )”、“開機(jī)( turn on )”和“取出衣物( remove clothes )”等操作。

          2 .對象圖

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

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

          3 .用例圖

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

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

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

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

          4 .狀態(tài)圖

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

          最頂端的符號代表起始狀態(tài),最底端的符號表示終止?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)。圖中的序號代表命令消息的發(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è)備,展示它們之間的連接,以及駐留在每臺機(jī)器中的軟件。每臺計(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)造型用尖對括號括起來的一個(gè)名稱來表示,這個(gè)括號叫雙尖括號( guillemets )。

          ?

          posted on 2007-09-20 19:41 李云澤 閱讀(273) 評論(0)  編輯  收藏 所屬分類: 軟件設(shè)計(jì)

          主站蜘蛛池模板: 阜宁县| 镇远县| 察雅县| 镇宁| 灵山县| 朔州市| 泸溪县| 固原市| 济阳县| 安龙县| 金川县| 同德县| 兴隆县| 长治县| 搜索| 玛沁县| 江安县| 博兴县| 湖北省| 武城县| 陈巴尔虎旗| 盖州市| 浑源县| 双流县| 阳原县| 北碚区| 长葛市| 福海县| 昌邑市| 左贡县| 三都| 万年县| 深圳市| 呈贡县| 马公市| 霸州市| 阿城市| 扎赉特旗| 滨州市| 齐齐哈尔市| 治县。|