基于抽象狀態(tài)機(jī)的網(wǎng)格系統(tǒng)設(shè)計(jì)和分析
(作者未知) 2012/1/15
摘 要: 基于可執(zhí)行規(guī)范的實(shí)現(xiàn)2測(cè)試同步開發(fā)模式可以將錯(cuò)誤盡早消滅在各個(gè)開發(fā)階段的初期. 其理論基礎(chǔ)是抽象狀態(tài)機(jī)ASM,實(shí)現(xiàn)工具是支持. NET的AsmL. 本文首先介紹了基于可執(zhí)行規(guī)范的實(shí)現(xiàn)2測(cè)試同步開發(fā)模式、ASM起源和定義,然后采用ASM描述了網(wǎng)格高層次系統(tǒng)語義,并舉例說明了采用AsmL 生成有限狀態(tài)機(jī)分析模型語義的方法步驟. 本文認(rèn)為基于ASM的網(wǎng)格系統(tǒng)設(shè)計(jì)和分析值得學(xué)術(shù)界和工業(yè)界的共同關(guān)注.
關(guān)鍵詞: 抽象狀態(tài)機(jī); 抽象狀態(tài)機(jī)語言; 網(wǎng)格; 軟件測(cè)試; 可執(zhí)行規(guī)范; 有限狀態(tài)機(jī)
1 引言
與傳統(tǒng)的瀑布模型、螺旋模型、漸增模型不同,Microsoft提出了一種新型軟件開發(fā)模式:基于可執(zhí)行規(guī)范( Executablespecifications) 的實(shí)現(xiàn)2測(cè)試同步模型[1 ] . 這是減少大規(guī)模開發(fā)項(xiàng)目測(cè)試代價(jià)的一種新途徑. 其理論基礎(chǔ)是抽象狀態(tài)機(jī)ASM(Abstract state machine) [2 ] ,實(shí)現(xiàn)工具是支持. NET 的AsmL (Ab2stract state machine language) [3 ] . 顯然,這種模式必將有助于已經(jīng)采用ASM來定義的新一代網(wǎng)格系統(tǒng)(Grids) [4 ] 各種軟件的開發(fā). 本文在簡要介紹相關(guān)知識(shí)背景的基礎(chǔ)上,舉例說明了這種開發(fā)模式在網(wǎng)格高層語義模型設(shè)計(jì)和分析上的應(yīng)用.
2 基于可執(zhí)行規(guī)范的實(shí)現(xiàn)2測(cè)試同步模型
基于可執(zhí)行規(guī)范的實(shí)現(xiàn)2測(cè)試同步開發(fā)模式的典型過程如圖1 所示(具體階段因項(xiàng)目而異) . 其核心思想是:在每個(gè)階段,開發(fā)過程都有與之相應(yīng)的測(cè)試活動(dòng);下一階段只能在對(duì)當(dāng)前階段已具有足夠滿意程度時(shí)才能開始. 首先,開發(fā)團(tuán)隊(duì)通過用例場(chǎng)景研究并測(cè)試軟件特性需求(并不需要編碼實(shí)現(xiàn)) . 其次,開發(fā)團(tuán)隊(duì)將系統(tǒng)定義為一些主要組件之間的交互,它們應(yīng)該支持先前確定的系統(tǒng)功能(還是不需要編碼實(shí)現(xiàn)) . 對(duì)主要組件之間的交互關(guān)系具有足夠的了解后,開發(fā)團(tuán)隊(duì)可以根據(jù)系統(tǒng)演化時(shí)內(nèi)部狀態(tài)的需要深入設(shè)計(jì)組件,當(dāng)然,新組件應(yīng)該與先前定義的組件集成方式保持一致. 當(dāng)詳細(xì)設(shè)計(jì)的組件在通過可執(zhí)行規(guī)范實(shí)現(xiàn)2測(cè)試同步檢驗(yàn)后,可以進(jìn)行實(shí)際編碼與編碼測(cè)試. 在整個(gè)開發(fā)過程中,除最終的組件編碼外,其余實(shí)現(xiàn)和測(cè)試都是通過可執(zhí)行規(guī)范來進(jìn)行的. 這種開發(fā)模式的優(yōu)點(diǎn)是可以把各個(gè)層次的Bug 消滅在軟件生命周期的初期,減少測(cè)試成本中的滾雪球效應(yīng)[1 ] .
顯然,可執(zhí)行規(guī)范應(yīng)該具有這樣一些特點(diǎn): (1) 適合嚴(yán)格描述各個(gè)層次的語義(Semantic) ; (2) 能夠精確定義各個(gè)層次的功能和狀態(tài)演化; (3) 可以執(zhí)行. 采用抽象狀態(tài)機(jī)ASM書寫的規(guī)范就符合這些要求.
......
附件下載:點(diǎn)擊下載查閱全文
|