UML學習筆記(三)

來源:互聯網
上載者:User

整合模組化語言(Unified Modeling Language,UML)

一些術語:

系統(system)指的是硬體和軟體的結合體,它能提供業務問題的解決方案。

系統開發(system development)是為客戶建立一個系統的過程。

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

系統分析員(analyst)將客戶所要解決的問題編製成文檔,並將該文檔轉交給開發人員。

開發人員(developer)是為了及決客戶的問題而構造軟體並在電腦硬體上實施該軟體的程式員。

 

UML的組成

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

1.類圖

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

矩形方框代表類的表徵圖,它被分成3個地區。最上面的地區中是類名,中間地區是類的屬性,最下面地區裡列的是類的操作。

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

2.對象圖

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

對象的表徵圖也是一個矩形,和類的表徵圖一樣,但是對象名下面要帶底線。具體執行個體的名字位於冒號的左邊而該執行個體所屬的類名位於冒號的右邊。

 

3.使用案例圖

用例(use case)是從使用者的觀點對系統行為的一個描述。

例,一個人使用一台洗衣機,顯然是為了洗衣服(wash clothes)。

 

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

參與者(它是發起用例的實體)可以是一個人也可以是另一個系統。

4.狀態圖

一台洗衣機可以處於浸泡(soak)、洗滌(Wash)、漂洗(Rinse)、脫水(Spin)或者關機(off)狀態。

 

最頂端的符號代表起始狀態,最底端的符號表示終止狀態。

5.順序圖

類圖和對象表徵圖大的實系統的靜態結構。在一個啟動並執行系統中,對象之間要發生互動,並且這些互動要經曆一定的時間。UML順序圖所表達的正式這種基於時間的動態互動。

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

1通過進水管想洗滌缸中注水。

2洗滌缸保持5分鐘靜止狀態。

3水注滿,停止注水。

4洗滌缸往返旋轉15分鐘。

5通過排水管排掉洗滌後的髒水。

6重新開始注水。

7洗滌缸繼續往返旋轉洗滌。

8停止向洗衣機中注水。

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

10洗滌缸加快速度單方向旋轉5分鐘。

11洗滌缸停止旋轉,洗衣過程結束。

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

6.活動圖表

用例和對象的行為中的各個活動之間通常具有時間順序。


7.共同作業圖表

系統的工作目標是由系統中各組成元素相互協作完成的。例子中洗衣機構件的類集中又增加了一個內部計時器(Internal Timer)。在經過一段時間後,定時器停止注水,然後啟動洗滌缸往返旋轉。圖中的序號代表命令訊息的發送順序。

8.構件圖

構件圖和部署圖和整個電腦系統密切相關。

9.部署圖

UML部署圖顯示了基於電腦系統的物理體繫結構。它可以描述電腦和裝置,展示它們之間的串連,以及駐留在每台機器中的軟體。每台電腦用一個立方體來表示,立方體之間的連線表示這些電腦之間的通訊關係。

 

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

注釋(note)的表徵圖是一個帶折角的矩形,矩形框中是解釋性文字。注釋和被注釋的圖元素之間用一條虛線串連。

構造型(stereotype)能夠使用現有的UML元素來定製新的元素。構造型用尖對括弧括起來的一個名稱來表示,這個括弧叫雙角括弧(guillemets)。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.