使用Astah製作UML時序圖

開篇語:

做測試的難免看到開發畫出各種設計圖,都很羨慕,比如:

 

帥麼,漂亮麼,其實我們測試人員也可以輕鬆搞定這樣的圖哦哦哦~~~~~

 下面會對UML進行簡單介紹以及能夠畫出順序圖的工具Astah

一、UML簡介:

  • UML是Unified Modeling Language 統一建模語言, UML被應用到面向對象的問題的解決上,提供了分析師,設計師和程序員之間在軟件設計時的通用語言。

  • UML的九種建模圖:用例圖,類圖,對象圖,順序圖(本文重點介紹),協作圖,狀態圖,活動圖,組件圖,配置圖

  •  順序圖( Sequence Diagram )別稱:“交互流程圖” 或“時序圖”或“序列圖”。

  • 開發人員常用的是 類圖對象圖,一般出現在對開發文檔要求嚴格的公司或研發團隊,如下圖:

      

 

 

二、Astah簡介

Astah (原名JUDE)發音:阿斯塔

Astah Professional 開發語言:100% 純 Java 應用程序,可以跨平臺在各種主流操作系統中使用,在本文中主要講解如何使用該工具描畫順序圖。

軟件語言版本:英文和日文

下載地址:http://astah.net/download

       

0、Astah安裝之後桌面會出現如下啓動快捷方式,雙擊即可開啓該工具

1、Astah創建順序圖

         

2、時序圖組成詳解 

 

  順序圖( Sequence Diagram )別稱:“交互流程圖” 或“時序圖”或“序列圖”。

 

  • 時序圖元素(Sequence Diagram Elements)

  • 角色(Actor)

  • 對象(Object)

  • 生命線(Lifeline)

  • 控制焦點(Focus of Control)

  • 消息(Message)

  • 自關聯消息(Self-Message)

  • 組合片段Combined Fragments

 

三、使用說明

1、生命線 

  時序圖中表示爲從對象圖標向下延伸的一條虛線,表示對象存在的時間, 一般用來描述  系統 :如 客戶端,代理層,緩存層,服務器層1.....服務器層N,數據庫等。

       

 

2、消息分類

消息的定義(個人理解的白話文):生命線與生命線之間的交互就是由"消息"來完成,消息說白了就是系統與系統之間請求(Request)與響應(Response)。

i、同步消息(Synchronous Message):消息的發送者把控制傳遞給消息的接收者,然後停止活動,等待消息的接收者放棄或者返回控制,用來表示同步的意義。

有點類似網絡協議裏的TCP協議,系統A給系統B發了消息,就等着B回消息或者超時之後就不理睬B了

ii、異步消息(Asynchronous Message):消息發送者通過消息把信號傳遞給消息的接收者,然後繼續自己的活動,不等待接受者返回消息或者控制。異步消息的接收者和發送者是併發工作的。

有點類似網絡協議裏的UDP協議,系統A給系統B發了消息,然後,系統A對系統B的態度就是:B回不回消息無所謂。

iii、返回消息(Return Message):  同步消息的一部分,是一種響應反饋的消息。

A發同步消息給B,B收到消息後給A發送響應就是返回消息。

 

 

總結下同步與異步消息:

1、你叫我去吃飯,我聽到了就和你去吃飯;如果沒有聽到,你就不停的叫,直到我告訴你聽到了,才一起去吃飯。(同步消息)

2、你叫我去吃飯,然後自己去吃飯,我得到消息後可能立即走,也可能等到下班纔去吃飯。(異步消息)

所以,要我請你吃飯就用同步的方法,要請我吃飯就用異步的方法。

 

3、自關聯消息

表示方法的自身調用以及一個對象內的一個方法調用另外一個方法。

  

結束語:

UML的時序圖很有用,甚至可以這個姿勢來表現,看不透徹的大場景都可以模擬一下,如三國演義的赤壁之戰的時序圖

 

之上的種種,作爲測試的我們還沒有領悟到UML的時序圖可以用在什麼地方麼?

1、理不清道不明的大型系統業務流可以用時序圖抽象,你的理解力會瞬間昇華;

2、再有開發叨逼叨逼的說測試不懂流程的時候,就給他畫個時序圖,請教他一下測試人員的理解是否有誤;

那效果。。。小夥伴們,自己樂吧。

 

參考文章:http://www.lupaworld.com/article-233409-1.html


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章