開篇語:html
作測試的不免看到開發畫出各類設計圖,都很羨慕,好比:程序員
帥麼,漂亮麼,其實咱們測試人員也能夠輕鬆搞定這樣的圖哦哦哦~~~~~數據庫
下面會對UML進行簡單介紹以及可以畫出順序圖的工具Astah緩存
1、UML簡介:服務器
UML是Unified Modeling Language 統一建模語言, UML被應用到面向對象的問題的解決上,提供了分析師,設計師和程序員之間在軟件設計時的通用語言。網絡
UML的九種建模圖:用例圖,類圖,對象圖,順序圖(本文重點介紹),協做圖,狀態圖,活動圖,組件圖,配置圖併發
順序圖( Sequence Diagram )別稱:「交互流程圖」 或「時序圖」或「序列圖」。異步
開發人員經常使用的是 類圖和對象圖,通常出如今對開發文檔要求嚴格的公司或研發團隊,以下圖:ide
2、Astah簡介工具
Astah (原名JUDE)發音:阿斯塔
Astah Professional 開發語言:100% 純 Java 應用程序,能夠跨平臺在各類主流操做系統中使用,在本文中主要講解如何使用該工具描畫順序圖。
軟件語言版本:英文和日文
下載地址:http://astah.net/download
0、Astah安裝以後桌面會出現以下啓動快捷方式,雙擊便可開啓該工具
一、Astah建立順序圖
二、時序圖組成詳解
順序圖( Sequence Diagram )別稱:「交互流程圖」 或「時序圖」或「序列圖」。
時序圖元素(Sequence Diagram Elements)
角色(Actor)
對象(Object)
生命線(Lifeline)
控制焦點(Focus of Control)
消息(Message)
自關聯消息(Self-Message)
組合片斷Combined Fragments
3、使用說明
一、生命線
時序圖中表示爲從對象圖標向下延伸的一條虛線,表示對象存在的時間, 通常用來描述 系統 :如 客戶端,代理層,緩存層,服務器層1.....服務器層N,數據庫等。
二、消息分類
消息的定義(我的理解的白話文):生命線與生命線之間的交互就是由"消息"來完成,消息說白了就是系統與系統之間請求(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發送響應就是返回消息。
總結下同步與異步消息:
一、你叫我去吃飯,我聽到了就和你去吃飯;若是沒有聽到,你就不停的叫,直到我告訴你聽到了,才一塊兒去吃飯。(同步消息)
二、你叫我去吃飯,而後本身去吃飯,我獲得消息後可能當即走,也可能等到下班纔去吃飯。(異步消息)
因此,要我請你吃飯就用同步的方法,要請我吃飯就用異步的方法。
三、自關聯消息
表示方法的自身調用以及一個對象內的一個方法調用另一個方法。
結束語:
UML的時序圖頗有用,甚至能夠這個姿式來表現,看不透徹的大場景均可以模擬一下,如三國演義的赤壁之戰的時序圖:
之上的種種,做爲測試的咱們尚未領悟到UML的時序圖能夠用在什麼地方麼?
一、理不清道不明的大型系統業務流能夠用時序圖抽象,你的理解力會瞬間昇華;
二、再有開發叨逼叨逼的說測試不懂流程的時候,就給他畫個時序圖,請教他一下測試人員的理解是否有誤;
那效果。。。小夥伴們,本身樂吧。
參考文章:http://www.lupaworld.com/article-233409-1.html