999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

UML標準建模語言在自動測試系統通用化設計中的應用

2015-05-04 17:39:07趙冠楠蒲陽
數字技術與應用 2014年12期

趙冠楠++蒲陽

摘要:本文首先簡要介紹了自動測試系統及其通用化設計的背景,UML的主要特點和用途,面向對象構框架的概念和基本含義。深入分析自動測試系統通用化設計的基本框架、功能構成和工作原理,利用UML的固有優勢對自動測試系統模型進行圖形化表達,搭建通用化自動測試系統的元模型框架。本文通過UML中的用例圖來進行通用化自動測試系統的需求分析,利用類圖和順序圖對系統的靜態及動態模型進行圖形化描述。自動測試系統的通用化設計可以有效增強系統的維護性和擴展性,提高軟件復用能力,提升系統的軟件開發效率,避免了重新二次開發ATS軟件帶來的可靠性差、占用研制資源多、時間周期長的缺陷。

關鍵詞:通用化自動測試系統 標準建模語言 圖形化建模

中圖分類號:TP311.52 文獻標識碼:A 文章編號:1007-9416(2014)12-0060-03

ATS通常由自動測試設備(ATE)、測試程序集(TPS)和TPS軟件開發工具三部分組成。ATS由20世紀50年代發展至今,已經歷了第一代專用測試系統、第二代積木式自動測試系統和第三代模塊化自動測試系統,目前下一代(NxTest)ATS正在開發當中。雖然開發ATS的最初目的是為軍事作戰所需,但是隨著計算機技術和測量技術的發展,ATS廣泛應用于工業生產、民航、環境試驗等多個領域和場合。

早期的ATS維修費用高,各種ATS之間無通用性、TPS無法移植,系統升級時原有軟件功能模塊不能使用,軟件開發周期長并且造成很大的浪費。90年代以來,ATS的開發逐步聚焦于ATS的通用性上來,采用共同的硬件平臺,軟件的框架或模塊可以復用。采用面向對象技術是目前可以獲得最大粒度軟件復用的方式。

UML正是面向對象技術發展到比較繁榮階段時的產物。UML的主要作用是幫助用戶對軟件系統進行面向對象的描述和建模,它可以描述軟件開發從需求分析到實現和測試的全過程[1],并且在建模中提供跟蹤機制。軟件設計師常常需要在很短的時間內了解領域知識,使用UML會幫助軟件設計師在建造ATS軟件框架中理解模型,把握系統的全貌和部件之間的聯系,防止過早地陷入各個模塊細節中去,有利于提高軟件的質量,縮短研制周期和降低費用。

1 UML與面向對象框架

標準建模語言(Unified Modeling Language,UML)為面向對象軟件設計提供統一的、標準的、可視化的建模語言。UML是Rational公司的Grady Booch、James Rumbaugh和Ivar Jacobson三位面向對象技術專家多年研究的成果。它能讓系統構造者用標準的、易于理解的方式建立起能夠表達出他們想象力的系統藍圖,并且提供一種機制,以便于不同的人之間有效的共享和交流設計結果。[3]

UML由類圖、對象圖、用例圖、狀態圖、順序圖、活動圖、協作圖、狀態圖、構件圖和部署圖九類圖構成。此外,UML有四種可應用于視圖中各元素的公開機制,它們分別是:詳述、修飾、通用劃分和擴展機制。其中,擴展機制由構造型(stereotype)、標記值(tagged value)和約束(constraint)組成,它們分別是UML詞匯、元素特性和語義的擴展,使得UML更好地適應各個領域的特殊需求。特別是利用UML面向對象開發框架實現了自動測試領域的體系結構設計復用。

面向對象框架的定義有很多種,大多數人認同以下定義:框架是一種軟件重用技術,它是一個應用軟件系統的整體或部分的可重用設計,表現為一組抽象類及其實例之間的相互作用方式。[4]面向對象框架是特定領域應用軟件的半成品,定義了領域應用的主要的體系結構,強調了更具有軟件生產力意義的設計復用。[4]面向對象框架的設計不僅要實現過去類庫和函數庫這樣的代碼復用或模塊復用,而且要重用相似的分析設計和體系結構。其開發的過程主要包括:對領域進行分析抽象,建立領域元模型;采用設計模式,對框架進行UML表達;框架實例化;框架測試等。

2 自動測試系統的需求分析

設計一個復雜的系統,首先要分析此系統需要做什么工作,從而提出目標,這在軟件工程中就是進行需求分析的過程。今天的通用自動測試系統與早期的專用型自動測試系統相比,很重要的一個特征就是儀器和設備的模塊化。經過對自動測試系統大量研究筆者發現,自動測試系統通常包含以下功能模塊:系統配置、資源管理、日志信息管理、儀器驅動、數據采集和測量、數據的分析和處理、故障診斷等。需求分析是系統開發的基礎,因此必須用有效的方法對軟件需求進行準確的分析。UML語言中的用例圖就是對系統進行需求分析的一個強有力的工具。用例圖是從用戶角度而非設計開發者的角度來描述系統的功能,并不考慮如何實現。用例圖中的參與者(Actor)是測試系統外部與系統相交互的人或事物,它代表“誰來做”。用例(Use Case)是由系統提供的外部可見的功能單元,它由參與者發起,代表“做什么”。

圖1為通用自動測試系統的主用例圖。參與者Operator是與系統交互的用戶或操作者,發起日志信息管理、測試系統管理等用例,被測對象(UUT)和數據庫(Database)是與系統交互的物。UUT主要接受系統對其激勵,并且做出響應、生成數據為測試系統所采集并加以分析處理。通用測試系統需要大量的數據存儲和讀寫工作,為了更好地實現通用性和可維護性,采用數據庫技術以方便數據的管理,將軟件應用程序和測試數據分開。測試系統可以有許多種類的數據庫,如操作者要通過系統進行日志管理,用到日志信息數據庫;系統在測試過程中還要用到UUT庫、測試流程數據庫、測試結果數據庫;系統中分析處理數據時還要用到故障診斷數據庫等等。

3 自動測試系統的靜態建模

UML的靜態視圖用于為軟件系統進行結構建模,它構造系統的詞匯和關系。而結構模型的可視化就是通過類圖來實現的。類圖(class diagram)是描述類、接口、協作、以及它們之間關系的圖。類圖不僅適用廣泛而且也屬于最大范圍的建模概念。一個類圖表述系統中各個對象的類型以及其間存在的各種靜態關系,也可以表明類中的特性和操作以及用于對象連接方式的約束,如關聯(指明一個事物的對象與另一個事物的對象間的聯系)、依賴(一個類的變化對于依賴它的類的影響)、泛化(一種特殊/一般的關系,也可以看作繼承關系)等。類圖是以類為中心來組織的,類圖中的其他元素或屬于某個類或與類相關聯。

3.1 通用自動測試系統元模型

基于前文對通用自動測試系統的需求分析,可以得知此系統需要做什么,建立UML的靜態視圖就是要解決如何實現這些系統功能。根據對自動測試領域的分析和面向對象設計原則,可以識別并抽象出出領域中的主要對象實體,再分析和定義這些對象實體之間的關系,從而建立起ATS的元模型,元模型包含元類(metaclass)和元關系(metarelationship)。通過分析ATS的體系結構,可以得到ATS元模型,如圖2所示。

圖中包含以下幾個主要的元類:UUT類,定義了被測對象的類型、鍵號、狀態等信息;Instrument類,抽象儀器類,定義了儀器的類型、配置、操作方法等,可以通過繼承得到具體的測試儀器;Measurement類,測量類,從儀器中讀取測量數據,并進行格式轉換、換算、修正等;Test類,測試任務的抽象類,可通過繼承創建具體測試任務,主要用于對測量到的數據進行分析處理;ReferenceCriteria,儀器輸入輸出數據的參考標準類,定義了信號采集系統和測試儀器的靈敏度、動態范圍[4];supervisor類,管理類,負責資源配置、測試任務的執行等;UserInterface類,用戶接口類,主要用于提供人機交互的界面;Operator類,對測試操作者的信息建立的類。系統建模時,UML各個視圖中出現的對象,在類圖中都必須有所定義。

3.2 主體框架的實現

元模型中的元類沒有具體定義屬性和方法,基于元模型進行通用自動測試系統框架開發時,可以根據領域需求適當添加或刪減類、并定義屬性和方法。通用自動測試系統可以根據具體的測試任務、測量方法將框架的各個對象結構進一步細化,并轉化成面向對象編程語言。如圖2中的UUT、Instrument、Test等類在進行框架開發時都需要通過繼承獲得具體的、與問題域相關的子類。圖3為測量類在組成某一具體測量系統是被擴展為的一個對象模型,可以分為電壓測量、電流測量和頻率測量。這些主體框架可通過Rational Ros軟件轉化成VC++或其他語言的代碼,通過這種方法可逐步實現自動測試系統的各種功能。

4 自動測試系統的動態建模

在建立起系統靜態模型的基礎之后,需要對ATS的動態行為進行分析和建模。由于類圖只描述了系統各個對象實體及其之間的靜態結構,對于分析各對象實體在測試系統中如何各司其職,隨著時間的變化它們的行為如何變化,就要建立相應的動態模型。

在UML中主要用順序圖來描述系統的動態行為順序。系統中參與交互的對象實體有序排列在順序圖頂端,每個對象底部的虛線是生命線,從一個對象的生命線到另一個對象生命線的箭頭是對消息建模,箭頭按時間順序在圖中從上到下排列。當執行一個用例行為時,順序圖中的每條消息對應了一個類操作或引起對象實體狀態轉換的觸發事件。消息序列是順序圖中不可或缺的一部分,它描述消息是在哪些對象間按何種順序發送和接收的。瀏覽順序圖的方法是:從上到下按消息符號的順序查看對象間交換的消息。

順序圖中每個對象在類圖中應當均有定義。圖4為通用自動測試系統中主要對象之間交互的順序圖。操作者Operator發送操作消息給UserInterface(用戶界面)對象,用戶界面根據操作完成系統配置,并且給Test對象發送消息控制測試任務的執行。Test對象創建測試任務,發送消息給測量對象Measurement以獲取測量值。儀器對象接到測量對象發來的消息coupling后,發送消息給Coupling對象,要求其讀取UUT信息。Coupling獲得UUT對象的響應后,將UUT信息返回給儀器對象。儀器對象獲得測量值后,將測量值返回給測量對象。測量對象將數據進行分析處理,再返回到主界面上,用戶可根據需要進行讀、儲存、打印等操作。圖4只是簡單描述了測試系統的一個典型的動態測試過程,在描述具體復雜系統的動態行為時,可根據需要進一步描述和擴展。

5 結語

本文充分采用面向對象元模型的方法,建立了通用自動測試系統的框架模型。通過UML的幾種視圖,對系統的功能需求、靜態結構、動態結構進行可視化圖形建模,該模型在Rational Rose的環境中生成。面向對象的模型具有較高的抽象性,使用框架開發的技術根據需要進行擴展或剪裁,可快速創建成各種測試系統。該測試系統模型具有良好的通用性,并且減少了大量的重復性工作,提高了軟件的復用性和開發的效率。

參考文獻

[1]吳建,鄭潮,汪杰.UML基礎與Rose建模案例[M].北京:人民郵電出版社,2004.10:2~5.

[2]楊晶.基于UML狀態圖的自動化測試框架研究與實現[D].華東理工大學,2010.

[3]Joesph Schmuller.Sams Teach Yourself UML in 24 Hours[M]. Third Edition.Sams Publishing,2004.

[4]徐小良,汪樂宇,周泓.自動測試系統的對象框架[J].浙江大學學報(工學版),2004,38(1).

[5]李傳煌,王偉明,施銀燕.一種UML軟件架構性能預測方法及其自動化研究[J].軟件學報,2012.7.

[6]王曉宇,錢紅兵.基于UML類圖和順序圖的C++代碼自動生成方法的研究[J].計算機應用與軟件,2013.1.

主站蜘蛛池模板: 九色在线观看视频| 亚洲成a人在线播放www| 九九九国产| 在线网站18禁| 亚洲一区二区在线无码| 日本中文字幕久久网站| 无码精油按摩潮喷在线播放 | 人人91人人澡人人妻人人爽| 欧美日韩第三页| 九九久久99精品| 99久久精品国产麻豆婷婷| 国产亚洲欧美日韩在线一区二区三区| 五月婷婷亚洲综合| 亚洲永久免费网站| 欧洲亚洲欧美国产日本高清| 91精品国产91欠久久久久| 中文字幕人成人乱码亚洲电影| 国产福利在线免费观看| 国产尤物视频在线| 日韩精品成人在线| 亚洲 成人国产| 91精品亚洲| 国产又粗又爽视频| 亚洲欧美自拍一区| 性视频久久| 超碰aⅴ人人做人人爽欧美| 欧美h在线观看| 国产激情无码一区二区免费| 日本高清有码人妻| 精品成人免费自拍视频| 国产视频欧美| 国模在线视频一区二区三区| 日韩高清中文字幕| 中文国产成人久久精品小说| 精品自窥自偷在线看| 最新国产成人剧情在线播放| 日本精品视频一区二区| 香蕉久久国产超碰青草| 国产色婷婷视频在线观看| 精品国产免费第一区二区三区日韩| 少妇露出福利视频| 久久精品午夜视频| 一个色综合久久| 亚洲一欧洲中文字幕在线| 亚洲天堂日韩在线| 久久免费精品琪琪| 国产精品无码一区二区桃花视频| 亚洲日本一本dvd高清| 国产乱人免费视频| 欧美视频在线不卡| 超清无码一区二区三区| 天堂av综合网| 亚洲无码精彩视频在线观看| 少妇被粗大的猛烈进出免费视频| 欧美精品成人一区二区视频一| 91色爱欧美精品www| 丰满人妻被猛烈进入无码| 日本免费高清一区| 国产精品天干天干在线观看| 狠狠v日韩v欧美v| 91在线精品免费免费播放| 婷婷午夜天| 中日韩一区二区三区中文免费视频| 五月天综合婷婷| 亚洲精品无码抽插日韩| 亚洲无码免费黄色网址| 成人在线亚洲| 日韩欧美国产另类| 亚洲一区二区三区麻豆| 农村乱人伦一区二区| 亚洲bt欧美bt精品| 日本三级黄在线观看| 日本精品影院| 国产午夜无码片在线观看网站| 热这里只有精品国产热门精品| 成人在线不卡视频| 日韩精品无码免费专网站| 毛片网站免费在线观看| 亚洲欧美日韩色图| 国产成人精品综合| 精品国产自在现线看久久| 亚洲成人精品久久|