軟件測試解讀可視化[1] 軟件測試工具
關鍵字:oo
時下,可視化已成為一個熱門話題,筆者在google上用“可視化”為關鍵詞進行搜索,得到符合的條目278萬條。我順次打開瀏覽,除去不能打開或需要登錄(我從不打開這類條目)的條目外,大概閱讀了40多條的內容,發現對于可視化的理解比較混亂,不同的理解之間相去甚遠,甚至大相徑庭。筆者認為,有必要對此進行梳理和歸納,本文就是筆者的一個嘗試。
什么是可視化?從字面上理解就是可以看見,但實際上現在人們所說的“可視化”其真實的含義是把本來用文字、數字等表達方式改用圖形、圖像、動畫等方式。
筆者認為,可視化是今后相當長的時期內計算機技術的一個重要發展方向。我們知道,計算機剛剛誕生時,計算機主要用于科學計算,后來發展為數據處理。隨著互聯網的普及,以及多媒體技術的發展和成熟,圖像處理將成為計算機的重要用武之地。而可視化與圖像處理是兩個互相交叉又相互促進的領域,具有廣闊的發展空間。
盡管人們對可視化的認識各異,但從功能上以及從應用主體上看,可以分為三種類型,即軟件設計可視化、信息管理可視化和流程可視化。
一、軟件設計可視化
(一)軟件的圖形輔助開發工具
在計算機誕生的初期,可視化就隨著軟件出現應運而生了。大概還是匯編語言剛問世不久,編程人員就開始繪制流程圖來做輔助工具,使得程序設計更加方便快捷。以后,隨著編程語言的升級(出現高級語言)和處理對象規模擴大,出現了各種圖形輔助工具,例如,圖形用戶界面技術、可視化操作等?梢哉f,可視化是伴隨著計算機科學和技術的發展與應用而發展起來的。
但在相當長的一段時期內,由于計算機技術的發展和應用的限制,可視化一直處于非常初級的階段。直到近年來,隨著因特網的普及,以及多媒體技術的成熟,才使得可視化技術逐步走向成熟。
(二)可視化建模技術
1、概念
20世紀90年代中期,對象管理組織OMG發布了統一建模語言UML(Unified Modeling Language)。伴隨著面向對象技術的發展,可視化建模技術受到越來越多開發人員的追捧,其應用領域也在不斷擴大,從傳統的軟件設計領域擴展到管理業務領域,F在,可視化建模技術已經成為一種成熟的軟件開發標準。
一般說來,軟件系統,特別是大型軟件系統,都是極為復雜的系統。而軟件系統最終的表現形式必為可執行代碼。而最終可執行代碼則更為復雜,包含了更多的細節,以至于再高明的軟件人員也難于把握系統的全貌。這時就需要在軟件總體構架與最終目標代碼之間有一個中間過程,從而保證系統具有健壯性和可理解性。模型是對現實世界的復雜系統的簡化和抽象,而可視化模型又可以把復雜模型簡單化和直觀化。因此,可視化模型就是這個中間過程。由于可視化建模采用面向對象方法,能夠實現現實世界直接映射到對象模型之上,可以適應業務需求的不斷變化,因此,可視化建?梢詭椭浖O計人員加深對系統的認知,做到抓住問題的本質,并且濾掉眾多非本質因素,從而有利于問題的解決。
2、意義
從技術實現的角度看可視化建模,可以發現它有很多好處:
一是可以有效管理系統的復雜度。一個現實世界的實體系統,往往是非常復雜的,相應地,它的對象模型經過簡化,但其復雜度仍然非常大,有時甚至超出手工的處理能力。面向對象方法的最大優點就是抽象,通過可視化建模的抽象,使得概念系統大為簡化,直至達到我們能夠理解和處理的程度。特別地,可視化系統是一個層次系統,開發人員可以根據需要了解任何一個層次,粗到系統架構,細到最深層次的細節。
二是可以實現開發人員之間很好的溝通。我們知道,語言和文字是人們進行交流的主要手段,但是,語言和文字往往有歧義性,較難保證交流雙方的理解完全一致。所以在工程技術領域,人們更多地是使用各種各樣模型進行交流和溝通。因此,可視化模型能夠比較好地保證交流者之間對問題理解的一致性。
三是可以提高系統設計的可重用性?梢暬D軌驅崿F每個類的功能單一化和構件化,因而,很多構件都有重用的機會,從而提高系統設計和開發效率,降低成本。
四是增強系統的靈活性。應用可視化技術建立的模型由于其結構清晰、易于被理解,因而,系統比較易于修改和重構。
文章來源于領測軟件測試網 http://www.kjueaiud.com/