国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

靜態(tài)代碼和模型檢測一致性的設(shè)計(jì)研究

2016-05-14 03:04王丹
關(guān)鍵詞:預(yù)處理

王丹

摘要:針對代碼與模型之間的不一致性問題,本文提出了一種基于 UML模型和Java代碼之間的一致性檢測方法。首先,給出了怎樣檢測模型與代碼一致性的步驟,對模型檢測中所要用到的模型和代碼進(jìn)行預(yù)處理,其次設(shè)計(jì)出模型代碼一致性檢測的框架,在本文的后面重點(diǎn)研究靜態(tài)的模型與代碼一致性。對靜態(tài)檢測設(shè)計(jì)了算法,進(jìn)行了一致性驗(yàn)證研究。

關(guān)鍵詞:一致性檢測 靜態(tài)代碼 預(yù)處理

中圖分類號:TP39 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2016)05-0000-00

1 模型與代碼一致性檢測的基本流程

在這篇文章中,UML模型的一致性和Java代碼檢測是基于兩個假設(shè):(1)要保證每個模型的UML是對的,要保持一致性;(2)在UML模型與Java代碼的信息不一樣的時候,這個時候UML模型就會輸出相關(guān)的報告。

1.1 UML模型預(yù)處理

1.1.1 UML模型的形式化定義

UML模型具有半正式的相關(guān)特性,這個特性就沒辦法直接在UML模型中獲取相關(guān)的的信息。導(dǎo)致,UML模型的形式化定義就要用數(shù)學(xué)符號語言進(jìn)行定義。

(1)類元組(類,)是一種面向?qū)ο蟮念悎D表示,在這個類圖中,一個圖可以表示為一個元祖,而每個類圖又可以分為好多個類的元組構(gòu)成的集合。

(2)序列圖六組形式化定義一個,味精,是一個對象集合。的對象是序列圖M = { msg1 msg2,……是一家集新聞,MSGM }。消息味精定義如下:味精:= < msgName,能見度,{ <參數(shù)> },返回類型>

(3)發(fā)送和接收消息。味精新聞,發(fā)送事件<味精,s >、<味精,r >接收事件常說。

(4)消息集上的全序關(guān)系,說新聞的軸縱向時間序列圖先后。

(5)E M函數(shù)關(guān)系的味精,味精(E)∈E M說事件對應(yīng)的信息。6 obj E O函數(shù)關(guān)系,obj E(E)∈O表示事件對應(yīng)。像所有事件的集合的。

1.1.2 UML類圖信息解析

一個類圖包含的相關(guān)信息,對xml文件是需要說明他的類圖和類的名稱,類的屬性的,以及和其他有關(guān)的信息。類圖要對類之間的關(guān)系進(jìn)行分析,還要分析他們的轉(zhuǎn)換屬性。四種模式的關(guān)系。

1.2 代碼靜態(tài)信息預(yù)處理

靜態(tài)結(jié)構(gòu)的Java代碼他所包含的信息都是基本信息,比如:類的名稱、類的屬性、以及類的方法與其他有關(guān)的信息。Jave代碼靜態(tài)信息提取的主要思想是通過詞法分析和語法分析來獲取Java類的名稱、屬性序列和方法序列,并將這些信息存儲到上面定義的數(shù)據(jù)存儲結(jié)構(gòu)中

2 模型與代碼一致性檢測框架的設(shè)計(jì)

通過對UML模型與Java代碼的分析提出了UML模型與Java代碼一致性性檢測框架。該框架的輸入為Java代碼和UML模型信息,輸出為一致性檢測報告;框架中的主要過程有信息預(yù)處理、靜態(tài)一致性檢測、動態(tài)一致性檢測等功能[1]。

UML模型和Java代碼一致性測試框架的具體過程:首先,分別對Java代碼和UML模型信息預(yù)處理,預(yù)處理的Java代碼主要通過詞法分析和語法分析,預(yù)處理的UML模型是基于XMI文件解析的模型;然后,Java代碼預(yù)處理結(jié)果Java類和UML模型預(yù)處理UML靜態(tài)信息,例如UML模型和代碼一致性測試輸入,根據(jù)檢測的一致性算法一致性測試,如果不一致輸出測試報告,停止測試,否則繼續(xù);最后,Java代碼預(yù)處理結(jié)果Java調(diào)用圖CG和UML序列圖構(gòu)造順序調(diào)用圖SD - CG作為UML模型和動態(tài)一致性測試代碼輸入。

3 靜態(tài)模型與代碼的一致性檢測

3.1 靜態(tài)檢測一致性的設(shè)計(jì)

UML模型和Java代碼一致性測試的靜態(tài)信息,是一致性的基礎(chǔ)模型和系統(tǒng)測試。靜態(tài)信息包括類名、類屬性集和類的方法。UML類信息和Java類信息一致性檢測:首先,UML類的檢測數(shù)量和類在Java類的數(shù)量是一致的,不一致的信息返回如果不一致,一致性測試結(jié)束,否則繼續(xù);然后一個UML類和Java類根據(jù)類的名稱進(jìn)行排序,最后排序的列順序檢測測試UML類關(guān)系返回Java類信息是一致的和不一致的信息如果不一致,測試結(jié)束。

3.2 靜態(tài)檢測

模型和代碼之間的靜態(tài)信息檢測是UML模型的基礎(chǔ)和Java代碼之間的一致性測試,是動態(tài)交互信息檢測的前提。靜態(tài)信息的檢測包括檢測類的名稱、類的屬性集合,還有類的方法集合等,表1展示了二者之間的映射關(guān)系。

一致性測試的UML類圖信息預(yù)處理后預(yù)處理后的模型與Java代碼的Java類信息作為輸入,靜態(tài)測試,反過來,測試類,類的名稱、類的屬性、測試類的方法、參數(shù)列表的一致性的檢測方法,萬一有不一致的情況,那就直接輸出檢測的測試報告,立刻停止測試,默認(rèn)為為默認(rèn)值(defaultValue)沒有不一致的信息警告)那就不終止靜態(tài)信息的一致性檢測,最后就會輸出一致性檢測的測試結(jié)果,生成檢測報告[2]。

4 結(jié)語

在本文中UML模型和Java代碼完全的一致性檢測,研究了UML模型和Java代碼一致性測試的基本過程,給出UML模型分析算法和Java代碼關(guān)鍵信息提取算法,動態(tài)信息和靜態(tài)信息的一致性檢測算法。

參考文獻(xiàn)

[1]葛徐駿.基于時序邏輯的雙向一致性檢測[D].華東師范大學(xué),2015.

[2]葛亮.基于本體演化過程的一致性檢測方法研究[D].吉林大學(xué),2012.

猜你喜歡
預(yù)處理
求解奇異線性系統(tǒng)的右預(yù)處理MINRES 方法
基于預(yù)處理MUSIC算法的分布式陣列DOA估計(jì)
藏紅花酸預(yù)處理對大鼠心肌缺血再灌注損傷中Caspase-3、TNF-α、NF-κB表達(dá)的影響
關(guān)于對稱正定的H—矩陣的預(yù)處理方法
CCMP生產(chǎn)廢水的預(yù)處理技術(shù)研究
絡(luò)合萃取法預(yù)處理H酸廢水
PMU數(shù)據(jù)預(yù)處理及壓縮算法
基于自適應(yīng)預(yù)處理的改進(jìn)CPF-GMRES算法
遠(yuǎn)端缺血預(yù)處理心肌保護(hù)作用的研究進(jìn)展
遠(yuǎn)端創(chuàng)傷預(yù)處理心肌保護(hù)作用的研究進(jìn)展
会宁县| 米林县| 江华| 威远县| 句容市| 垫江县| 同仁县| 海门市| 壤塘县| 喀什市| 沁源县| 绥滨县| 柘荣县| 长乐市| 梁山县| 信阳市| 安徽省| 冀州市| 拜城县| 浏阳市| 扎鲁特旗| 霸州市| 石泉县| 连云港市| 景泰县| 宝山区| 广宗县| 章丘市| 开江县| 察哈| 同江市| 盐边县| 民勤县| 任丘市| 奉贤区| 濮阳县| 东兴市| 望城县| 峡江县| 吕梁市| 昌宁县|