語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法及其系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法及其系統(tǒng),將OWL-S描述的Web服務(wù)轉(zhuǎn)化為一臺(tái)原子過程自動(dòng)機(jī),將原子過程自動(dòng)機(jī)組合為組合過程自動(dòng)機(jī);消除組合過程自動(dòng)機(jī)的冗余并發(fā)和同步遷移,獲得優(yōu)化模型;依據(jù)用戶限定的相容性要求,確定組合過程自動(dòng)機(jī)的可接受位置集合;依據(jù)用戶限定的有效性要求,確定邏輯公式CSV;將優(yōu)化模型轉(zhuǎn)換為UPPAAL的建模語言;將可接受位置集合和邏輯公式CSV表示為CTL公式;將建模語言描述的組合服務(wù)模型與CTL公式輸入U(xiǎn)PPAAL進(jìn)行驗(yàn)證;對OWL-S中的原子過程與組合過程的描述更具體完整,可以無差異地參加組合運(yùn)算,支持邏輯公式和表達(dá)式,描述能力更強(qiáng),提高了驗(yàn)證的效率。
【專利說明】語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法及其系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法及其系統(tǒng)。
【背景技術(shù)】
[0002]隨著Web服務(wù)標(biāo)準(zhǔn)的持續(xù)完善和支持Web服務(wù)的企業(yè)級(jí)軟件平臺(tái)的不斷成熟,越來越多的企業(yè)和商業(yè)組織參與到軟件服務(wù)化(Software as a Service)的行列中來,紛紛將其業(yè)務(wù)功能和組件包裝成標(biāo)準(zhǔn)的Web服務(wù)發(fā)布出去,實(shí)現(xiàn)快速便捷的尋求合作伙伴、挖掘潛在客戶和達(dá)到業(yè)務(wù)增值的目的。然而由于用戶需求呈現(xiàn)復(fù)雜化趨勢,單個(gè)Web服務(wù)已經(jīng)難以提供用戶所需的功能。但如果將分布于Web上的多個(gè)功能有限的簡單Web服務(wù)按照共享上下文策略進(jìn)行通信與協(xié)作,形成更大粒度、功能更強(qiáng)的復(fù)雜服務(wù),就可能滿足更多更復(fù)雜的用戶需求。Web服務(wù)組合問題就是在這樣的背景下被提出來的,它是指通過服務(wù)查找和服務(wù)之間的接口集成,將多個(gè)自治的Web服務(wù)根據(jù)用戶需求進(jìn)行連接,從而形成提供新的或增值功能的Web服務(wù)。
[0003]雖然通過服務(wù)組合,能夠獲得功能更強(qiáng)的組合服務(wù),但也會(huì)使得服務(wù)之間的交互流程變得頻繁和復(fù)雜,這導(dǎo)致組合服務(wù)難免會(huì)存在一些錯(cuò)誤。因此對于Web服務(wù)組合的驗(yàn)證是必不可少的,主要原因有以下兩點(diǎn):
[0004](I)Web服務(wù)組合是把功能不同的自治的Web服務(wù)連接起來,這需要通過定義和設(shè)計(jì)控制流及數(shù)據(jù)流來進(jìn)行組織。通過控制流和數(shù)據(jù)流,就定義了 Web服務(wù)之間的交互協(xié)議。交互協(xié)議是否是具有良定義性(Well-Formed)、活性(Live)和安全性(Safety),取決于組合服務(wù)設(shè)計(jì)人員的水平或者組合服務(wù)設(shè)計(jì)工具的能力。然而面對越來越復(fù)雜的Web服務(wù)組合,組合服務(wù)設(shè)計(jì)人員的水平和組合服務(wù)設(shè)計(jì)工具的能力顯得愈加不足,很難保證服務(wù)的組合不會(huì)出錯(cuò)。
[0005](2)用戶只能對所需服務(wù)行遠(yuǎn)程調(diào)用,并不能控制其執(zhí)行過程。所以存在錯(cuò)誤的組合服務(wù)流程一旦投入運(yùn)行,就可能產(chǎn)生無法彌補(bǔ)的損失,這是用戶所不能接受的。因此對組合服務(wù)進(jìn)行正確性驗(yàn)證,能夠盡早地發(fā)現(xiàn)和解決問題,減少經(jīng)濟(jì)和時(shí)間成本的不必要消耗。
[0006]由于組合服務(wù)日趨復(fù)雜,采用人工分析的方式效率低下。同時(shí)其本身所具有的動(dòng)態(tài)性特征,也大大增加了驗(yàn)證分析的工作量。而建立自動(dòng)化的分析技術(shù)與工具,則必須要以形式化模型為基礎(chǔ),也是勢在必行的工作。目前,國內(nèi)外針對Web服務(wù)組合驗(yàn)證這一問題展開了廣泛的研究,且均是以形式化方法為基礎(chǔ),如Petri網(wǎng)、自動(dòng)機(jī)理論或進(jìn)程代數(shù),基本上可以分為兩類:
[0007]I,直接驗(yàn)證
[0008]直接驗(yàn)證方法是指對組合服務(wù)進(jìn)行形式化建模后,可以直接對模型進(jìn)行分析和驗(yàn)證,例如Pi演算、通信系統(tǒng)演算CCS和Petri網(wǎng)。Pi演算適用于驗(yàn)證Web服務(wù)間的兼容性,能夠?qū)Ψ?wù)的行為和服務(wù)間的交互進(jìn)行建模,通過Pi演算的操作、自動(dòng)推演等理論判斷服務(wù)間交互的兼容性。但它只能對兩個(gè)服務(wù)間的兼容性進(jìn)行驗(yàn)證,而無法驗(yàn)證一個(gè)服務(wù)與多個(gè)服務(wù)間的兼容性。通信系統(tǒng)演算CCS可以與Web服務(wù)編排協(xié)議WSCI進(jìn)行直接的映射和轉(zhuǎn)換,從而建立起Web服務(wù)組合的形式化模型,通過CCS的推理功能可驗(yàn)證兩個(gè)或多個(gè)Web服務(wù)之間的兼容性,同時(shí)還可以驗(yàn)證服務(wù)之間的可替換性。Petri網(wǎng)是一種重要的分布式系統(tǒng)的建模和分析工具,適合于驗(yàn)證Web服務(wù)組合的流程正確性、操作兼容性和語義正確性。Petri網(wǎng)有多種形式的擴(kuò)展與變種,可以表達(dá)Web服務(wù)的豐富語義,例如時(shí)間Petri網(wǎng)、有色Petri網(wǎng)、模糊Petri網(wǎng)等。同時(shí)Petri網(wǎng)還帶有自動(dòng)化驗(yàn)證工具,對模型的分析與驗(yàn)證提供了很大的便利。
[0009]2,間接驗(yàn)證
[0010]間接驗(yàn)證方法是指在建立起Web服務(wù)組合的形式化模型后,由于該種形式化模型沒有直接的驗(yàn)證工具,必須將其轉(zhuǎn)換成其它的形式化描述形式,才能進(jìn)行驗(yàn)證。這類方法主要是一些專門的組合服務(wù)或流程的描述工具,設(shè)計(jì)的初衷就是為了對單一對象進(jìn)行描述,通用描述能力往往不強(qiáng),因此也就缺乏對它的分析和驗(yàn)證方面的研究。例如XLANG、WSFL、BPEL4WS 等。
[0011 ] XLANG是由Microsoft提出的一種Web服務(wù)組合描述語言,它將工作流描述成有狀態(tài)的長周期交互行為,用WSDL語言描述業(yè)務(wù)流程中各參與者的Web服務(wù)接口,并通過消息交換產(chǎn)生服務(wù)間的交互。它實(shí)際上是WSDL的一種擴(kuò)展。
[0012]WSFL即Web服務(wù)流語言,是由IBM提出的一種基于XML的Web服務(wù)組合描述語言,由流模型和全局模型組成,前者用于描述如何使用組件Web服務(wù)提供的功能實(shí)現(xiàn)一個(gè)組合Web服務(wù),并通過定義控制流和數(shù)據(jù)流的方向指定組件服務(wù)的執(zhí)行順序;后者用于描述各組件Web服務(wù)之間的交互情況。目前已有將WSFL描述的組合流程轉(zhuǎn)換成Promela規(guī)范語言的算法,從而可以用對應(yīng)的模型檢測工具SPIN進(jìn)行自動(dòng)驗(yàn)證。
[0013]BPEL4WS是由IBM、Microsoft和BEA公司聯(lián)合推出的,汲取了 XLANG和WSFL的優(yōu)點(diǎn),結(jié)合了圖形化和塊結(jié)構(gòu)的特點(diǎn),是一個(gè)用于描述基于Web服務(wù)的可執(zhí)行業(yè)務(wù)流程描述語言,已得到多種開源和商業(yè)引擎的支持。BPEL4WS將Web服務(wù)組合描述成一個(gè)有向圖,頂點(diǎn)代表Web服務(wù),邊表示服務(wù)之間的依賴關(guān)系。依賴關(guān)系的運(yùn)行語義可以在BPEL4WS的文檔中指定。通過相應(yīng)的進(jìn)程代數(shù)編譯器,可對Web服務(wù)組合進(jìn)行驗(yàn)證。
[0014]與本發(fā)明最相似的技術(shù)方案是將OWL-S描述的語義Web服務(wù)轉(zhuǎn)換為有色Petri網(wǎng),然后通過對有色Petri網(wǎng)的性質(zhì)分析(關(guān)聯(lián)矩陣、活性、可達(dá)性等),完成對組合服務(wù)的驗(yàn)證。
[0015]OWL-S與語義Web服務(wù):0WL_S是以O(shè)WL語言描述的Web服務(wù)本體,它是機(jī)器可理解并且顯式而無歧義的標(biāo)記語言(Markup Language),可以完整地描述服務(wù)的功能和屬性。它是一種成熟且被廣泛應(yīng)用的技術(shù)規(guī)范,具有堅(jiān)實(shí)的理論基礎(chǔ)和強(qiáng)大的工業(yè)應(yīng)用支持。OWL-S的頂層本體視圖,如圖1所示。
[0016]0WL-S通過三個(gè)部分來對一個(gè)Web服務(wù)進(jìn)行描述:Service Profile、ServiceGrounding和Service Model。并且有如下規(guī)定:一個(gè)Web服務(wù)最多只能關(guān)聯(lián)一個(gè)ServiceModel,但可以缺少;一個(gè)Service Grounding必須且只能與一個(gè)Web服務(wù)關(guān)聯(lián),而一個(gè)Web服務(wù)可以關(guān)聯(lián)多個(gè)Service Grounding ;一個(gè)Web服務(wù)可以關(guān)聯(lián)零個(gè)或多個(gè)ServiceProfile。
[0017]1.Service Profile
[0018]Service Profile的作用是描述服務(wù)的概貌,包括三個(gè)部分的信息:[0019]服務(wù)提供者:包括提供者的名稱、文本描述和聯(lián)系信息。
[0020]服務(wù)功能:提供服務(wù)的IOPEs (Input、Output、Precondition、Effect),分別從信息和狀態(tài)兩個(gè)角度來描述服務(wù)的功能。Service Prof ile并不單獨(dú)描述Ι0ΡΕ,而是鏈接到Service Model 中的 IOPEs 實(shí)例。
[0021]服務(wù)分類與質(zhì)量:服務(wù)所屬的類別,以及成本、響應(yīng)時(shí)間、可靠度等用于衡量服務(wù)質(zhì)量的信息。
[0022]服務(wù)提供者可以通過Service Profile來描述要發(fā)布的服務(wù),而用戶也可以通過它來描述對服務(wù)的需求,主要用于支持Web服務(wù)發(fā)現(xiàn)。此外,Service Profile是獨(dú)立的技術(shù),因此支持各種服務(wù)注冊方式。
[0023]2.Service Model
[0024]Service Model包含服務(wù)的內(nèi)部數(shù)據(jù)及控制流程,從而描述服務(wù)的具體執(zhí)行過程。這種描述是基于過程(Process)的概念來實(shí)現(xiàn)的,如圖2所示。
[0025]過程分為三類:原子過程(Atomic Process)、組合過程(Composite Process)和簡單過程(Simple Process)。分別解釋如下:
[0026](I)原子過程:原子過程是不可再分的過程,對應(yīng)一個(gè)可以被直接調(diào)用的Web服務(wù),其內(nèi)部執(zhí)行是透明的。每個(gè)原子過程都必須關(guān)聯(lián)一個(gè)Grounding文件,提調(diào)用該原子過程的必要信息。
[0027](2)組合過程:組合過程由若干原子過程或其它組合過程復(fù)合構(gòu)成,構(gòu)件之間通過控制結(jié)構(gòu)連接起來。OWL-S定義了 8種控制結(jié)構(gòu):Sequence、Split、Split+Join、Unordered、Choice、If-Then-Else、Iterate、Repeat-Until。
[0028](3)簡單過程:簡單過程是一個(gè)抽象概念,不能被直接調(diào)用,因此不需要也不能與Grounding文件綁定。簡單過程不描述服務(wù)的內(nèi)部細(xì)節(jié),而只關(guān)心服務(wù)的輸入和輸出信息,是一種從外部視角觀察服務(wù)的方式。原子過程是對簡單過程的實(shí)現(xiàn)(Realizes),而組合過程則可以通過折疊(CollapseTo)成為簡單過程。
[0029]服務(wù)的接口通過IOPEs來描述,分別是服務(wù)的輸入和輸出信息,服務(wù)的執(zhí)行前提條件和執(zhí)行后的效果。前者是從數(shù)據(jù)變換的角度、后者是從狀態(tài)改變的角度來分別描述服務(wù)。Service Model主要用于支持服務(wù)的組合與驗(yàn)證。
[0030]3.Service Grounding
[0031]Service Grounding描述服務(wù)的調(diào)用信息和規(guī)范,包括訪問服務(wù)的協(xié)議、消息格式、端口等信息。OWL-S并沒有單獨(dú)定義描述調(diào)用信息的語法,而是引入了已經(jīng)成熟和完善的WSDL規(guī)范。OWL-S與WSDL之間存在兩個(gè)部分的映射關(guān)系:
[0032]OffL-S中的原子過程映射到WSDL中的操作(Operation)。
[0033]OffL-S中的輸入和輸出信息映射到WSDL中的消息(Message)。其中,ServiceGrounding支持服務(wù)的實(shí)際運(yùn)行,與驗(yàn)證工作無關(guān)。
[0034]在OWL-S所描述的各類語義要素中,與服務(wù)組合驗(yàn)證相關(guān)的包括:服務(wù)的輸入(Input)、輸出(Output)、執(zhí)行前提(Preconditon)、執(zhí)行效果(Effect)、控制結(jié)構(gòu)、服務(wù)質(zhì)量信息。其中,IOPEs與控制結(jié)構(gòu)用于進(jìn)行功能性驗(yàn)證,S卩服務(wù)是否能夠正確性執(zhí)行,并滿足預(yù)期的功能性需求;而服務(wù)質(zhì)量信息則是用于非功能性驗(yàn)證,即服務(wù)的質(zhì)量是否達(dá)到了預(yù)期要求。已有的技術(shù)方案實(shí)現(xiàn)的都是功能性的驗(yàn)證。[0035]映射轉(zhuǎn)換分為三個(gè)部分:
[0036]( I) 一個(gè)變遷對應(yīng)一個(gè)原子服務(wù)。
[0037](2)用一個(gè)變遷的前置庫所中,不同顏色的令牌及令牌的數(shù)量來表示服務(wù)的輸入與執(zhí)行前提;后置庫所中的令牌表示輸出;前置與后置庫所的令牌數(shù)量的變化表示執(zhí)行效
果O
[0038](3)通過組合原子服務(wù)的Petri網(wǎng)模型來表示控制結(jié)構(gòu)。
[0039]驗(yàn)證方法:利用Petri網(wǎng)模型的各類矩陣及相應(yīng)的算法,可判定組合服務(wù)能否正常運(yùn)行,以及能否到達(dá)到預(yù)期的目標(biāo)。
[0040]上述的現(xiàn)有技術(shù)方案存在以下缺點(diǎn):
[0041](I)只能夠描述先輸入后輸出的兩類消息傳輸模式,而不能描述另外先輸出后輸入的另兩類消息傳輸模式。
[0042](2)沒有系統(tǒng)給出將執(zhí)行前提轉(zhuǎn)化為有色令牌的方法。
[0043](3)所描述的執(zhí)行效果只涉及消息數(shù)量的變化,對于其它類型的執(zhí)行效果(例如對環(huán)境的改變)則無法描述。
[0044](4)驗(yàn)證過程需要人工參與,容易引入新的錯(cuò)誤。
[0045](5)組合運(yùn)算的對象都是原子服務(wù),而沒有給出對內(nèi)部具有多個(gè)控制結(jié)構(gòu)的復(fù)合服務(wù)進(jìn)行組合的方法。
[0046](6)沒有對組合服務(wù)運(yùn)行所需的良好性質(zhì)進(jìn)行分析,只是簡單地歸結(jié)到其所用技術(shù)的安全性或活性分析上,不僅其合理性值得商榷,也無法根據(jù)實(shí)際需求設(shè)定安全性的強(qiáng)度,增大了服務(wù)組合的難度。
【發(fā)明內(nèi)容】
[0047]本發(fā)明要解決的技術(shù)問題,在于提供一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法及其系統(tǒng),對OWL-S中的原子過程與組合過程的描述更具體完整,并保持了兩者的形式一致,可以無差異地參加組合運(yùn)算,支持邏輯公式和表達(dá)式,描述能力更強(qiáng),尤其是對執(zhí)行前提、執(zhí)行效果與組合服務(wù)性質(zhì)的描述,并且驗(yàn)證過程自動(dòng)化,不僅降低了驗(yàn)證技術(shù)的應(yīng)用門檻,也能夠避免在驗(yàn)證過程中引入新的錯(cuò)誤。
[0048]本發(fā)明方案一是這樣實(shí)現(xiàn)的:一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,包括如下步驟:
[0049]步驟10、將OWL-S描述的Web服務(wù)即原子過程轉(zhuǎn)化為一臺(tái)原子過程自動(dòng)機(jī),然后根據(jù)不同的控制結(jié)構(gòu),將原子過程自動(dòng)機(jī)組合為組合過程自動(dòng)機(jī);
[0050]步驟20、消除組合過程自動(dòng)機(jī)的冗余并發(fā)和同步遷移,獲得優(yōu)化模型;
[0051]步驟30、依據(jù)用戶限定的相容性要求,確定組合過程自動(dòng)機(jī)的可接受位置集合;
[0052]步驟40、依據(jù)用戶限定的有效性要求,確定有效的邏輯公式CSV ;
[0053]步驟50、將所述獲得優(yōu)化模型轉(zhuǎn)換為UPPAAL的建模語言;
[0054]步驟60、將可接受位置集合和邏輯公式CSV表示為CTL公式;
[0055]步驟70、將建模語言描述的組合服務(wù)模型與CTL公式輸入U(xiǎn)PPAAL進(jìn)行驗(yàn)證;若驗(yàn)證結(jié)果為完全相容且有效,則該組合服務(wù)滿足用戶需求;若驗(yàn)證結(jié)果為部分相容且有效,則可根據(jù)驗(yàn)證結(jié)果生成信息交互引擎,引導(dǎo)組合服務(wù)的運(yùn)行軌跡,達(dá)到用戶要求;若驗(yàn)證結(jié)果是不滿足相容且有效,則該組合服務(wù)無法滿足用戶需求。
[0056]進(jìn)一步地,所述步驟10進(jìn)一步具體為:
[0057]步驟11,若控制結(jié)構(gòu)為Sequence控制結(jié)構(gòu),則進(jìn)行Sequence組合運(yùn)算,即將所有的所述原子過程自動(dòng)機(jī)按照排列的先后順序依次將前一個(gè)原子過程自動(dòng)機(jī)的終止位置連接后一個(gè)原子過程自動(dòng)機(jī)的起始位置轉(zhuǎn)化為組合過程自動(dòng)機(jī);
[0058]步驟12,若控制結(jié)構(gòu)為AnyOrder控制結(jié)構(gòu),貝U進(jìn)行AnyOrder組合運(yùn)算,即構(gòu)造一組邏輯公式
【權(quán)利要求】
1.一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:包括如下步驟: 步驟10、將OWL-S描述的Web服務(wù)即原子過程轉(zhuǎn)化為一臺(tái)原子過程自動(dòng)機(jī),然后根據(jù)不同的控制結(jié)構(gòu),將原子過程自動(dòng)機(jī)組合為組合過程自動(dòng)機(jī); 步驟20、消除組合過程自動(dòng)機(jī)的冗余并發(fā)和同步遷移,獲得優(yōu)化模型; 步驟30、依據(jù)用戶限定的相容性要求,確定組合過程自動(dòng)機(jī)的可接受位置集合; 步驟40、依據(jù)用戶限定的有效性要求,確定有效的邏輯公式CSV ; 步驟50、將所述獲得優(yōu)化模型轉(zhuǎn)換為UPPAAL的建模語言; 步驟60、將可接受位置集合和邏輯公式CSV表示為CTL公式; 步驟70、將建模語言描述的組合服務(wù)模型與CTL公式輸入U(xiǎn)PPAAL進(jìn)行驗(yàn)證;若驗(yàn)證結(jié)果為完全相容且有效,則該組合服務(wù)滿足用戶需求;若驗(yàn)證結(jié)果為部分相容且有效,則可根據(jù)驗(yàn)證結(jié)果生成信息交互引擎,引導(dǎo)組合服務(wù)的運(yùn)行軌跡,達(dá)到用戶要求;若驗(yàn)證結(jié)果是不滿足相容且有效,則該組合服務(wù)無法滿足用戶需求。
2.根據(jù)權(quán)利要求1所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟10進(jìn)一步具體為: 步驟11,若控制結(jié)構(gòu)為Sequence控制結(jié)構(gòu),則進(jìn)行Sequence組合運(yùn)算,即將所有的所述原子過程自動(dòng)機(jī)按照排列的先后順序依次將前一個(gè)原子過程自動(dòng)機(jī)的終止位置連接后一個(gè)原子過程自動(dòng)機(jī)的起始位置轉(zhuǎn)化為組合過程自動(dòng)機(jī); 步驟12,若控制結(jié)構(gòu)為AnyOrder控制結(jié)構(gòu),則進(jìn)行AnyOrder組合運(yùn)算,即構(gòu)造一組邏`輯公式“...,φη, %),初始時(shí)辦的值為true,外=么1,其中&表示將第I到第η個(gè)邏輯公式合取,Vp本q\ %與不含相同命題變元,之后將所有原子過程自動(dòng)機(jī)的起始位置合并為一個(gè)新的起始位置K,從原起始位置出發(fā)的遷移都改為從新起始位置出發(fā),并且遷移標(biāo)號(hào)的Pre部分并入一個(gè)%從所有原終止位置引出一條到達(dá)Is的遷移,該遷移使得Ψρ假,從而保證該組合過程不會(huì)被重復(fù)執(zhí)行;增加一個(gè)新的位置I6并作為終止位置,同時(shí)增加一個(gè)從Is到Ie的單步遷移e,其執(zhí)行前提是公式外為真,只有當(dāng)所有的組合過程都被執(zhí)行完后,才能到達(dá)Ie ; 步驟13,若控制結(jié)構(gòu)為Choice控制結(jié)構(gòu),則進(jìn)行Choice組合運(yùn)算,即將所有組合過程的起始位置合并為一個(gè)新的起始位置Isl,之后將所有組合過程的終止位置合并為一個(gè)新的終止位置1ε1 ; 步驟14,若控制結(jié)構(gòu)為If-then-Else控制結(jié)構(gòu),貝U進(jìn)行If_then_Else組合運(yùn)算,即將選擇條件表示成邏輯公式φ2,而后將所有組合過程的起始位置合并為一個(gè)新的起始位置Is2,從原起始位置出發(fā)的遷移改為從新起始位置出發(fā),并用ψ2和修改遷移標(biāo)號(hào)的Pre部分,最后將所有組合過程的終止位置合并為一個(gè)新的終止位置I62 ; 步驟15,若控制結(jié)構(gòu)為Repeat-Until控制結(jié)構(gòu),則進(jìn)行Repeat-Until組合運(yùn)算,即將終止條件用邏輯公式供3表示,之后修改從起始位置出發(fā)的遷移,將并入遷移標(biāo)號(hào)的Pre部分,使該組合過程只有在終止條件為假時(shí)可進(jìn)行,增加一個(gè)新的位置Ie3作為終止位置,并從起始位置引出一個(gè)新的單步遷移e3到達(dá)其執(zhí)行前提是表示終止條件的邏輯公式供J為真;步驟16,若控制結(jié)構(gòu)為Repeat-while控制結(jié)構(gòu),則進(jìn)行Reneat-while組合運(yùn)算,即將終止條件用邏輯公式表示,修改從起始位置出發(fā)的遷移,將并入遷移標(biāo)號(hào)的Pre部分,使該組合過程只有在終止條件為假時(shí)可進(jìn)行,增加一個(gè)新的位置U作為終止位置,并從起始位置引出一個(gè)新的單步遷移e4到達(dá)U,其執(zhí)行前提是表示終止條件的邏輯公式 為真; 步驟17,若控制結(jié)構(gòu)為Split-Join控制結(jié)構(gòu),則進(jìn)行Split-Join組合運(yùn)算,即將并發(fā)條件和匯合條件分別表示為邏輯公式P 5和Ψρ,增加一個(gè)新的位置Is5并作為起始位置,從它引出一個(gè)并發(fā)遷移到達(dá)所有組合過程的起始位置,其執(zhí)行前提為并發(fā)條件堦加一個(gè)新的位置I65并作為終止位置,從所有組合過程的終止位置引出一個(gè)到達(dá)I65的同步遷移,其執(zhí)行前提為同步條件抑。
3.根據(jù)權(quán)利要求2所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述Sequence組合運(yùn)算、所述AnyOrder組合運(yùn)算、所述Choice組合運(yùn)算及所述If-then-Else組合運(yùn)算為因果約束,所述Repeat-Unti組合運(yùn)算及所述Repeat-while組合運(yùn)算為重復(fù)約束,所述Split-Join組合運(yùn)算為分支約束,所述因果約束、所述重復(fù)約束及所述分支約束為組合約束。
4.根據(jù)權(quán)利要求3所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟30進(jìn)一步具體為: 步驟31,第一可接受位置集合WFL:其中原子服務(wù)的WFL為其起始位置和終止位置為該原子服務(wù)的第一可接受位置,對η臺(tái)組合過程自動(dòng)機(jī)CPAi,進(jìn)行組合運(yùn)算后得到的新組合過程自動(dòng)機(jī)CPA,其第一可接受位置集合WFL為各CPAi的第一可接受位置集合WFLi的并集,并且從WFL中移除組合過程中被剔除`的位置,若組合過程中增加了新的位置,且該位置為起始位置或終止位置,則應(yīng)添加到WFL中; 步驟32,組合過程自動(dòng)機(jī)CPAi的第一可接受位置為WFLi,當(dāng)在組合過程中出現(xiàn)組合約束時(shí),獲得的可接受位置組成第二可接受位置集合: 對η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Sequence組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAseq,若出現(xiàn)組合約束語義:若CPAi執(zhí)行則CPAj也必須執(zhí)行,其中i〈j,則普通可接受位置集合OFLseq為CPAi~CPAp1,及CPAj+1~CPAn的第一可接受位置的并集,再加上CPAi的起始位置SLoci和CPAj的終止位置eLoCj ; 或者對η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行AnyOrder組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAm,若出現(xiàn)組合約束語義:組合服務(wù)的運(yùn)行不能停止在CPAj,則普通可接受位置集合OFLaq是在其第一可接受位置集合WFLaJ^基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLao=WFLao-WFLj ; 或者對于η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Choice組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAa。,若出現(xiàn)組合約束語義:若CPA^被選中執(zhí)行則必須執(zhí)行完成,則普通可接受位置集合OFLcho是在其第一可接受位置集合WFLqto基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLcho=WFLcho-WFLj ;或者對于兩臺(tái)組合過程自動(dòng)機(jī)CPA1和CPA2進(jìn)行If-then-Else組合運(yùn)算得到新的組合過程CPAItE,若出現(xiàn)組合約束語義:若CPA^被選中執(zhí)行則必須執(zhí)行完成,則普通可接受位置集合OFLItE是在其第一可接受位置集合WFL1 tE中去除CPAj的第一可接受位置集合WFLj,即OFL^^WFUo-WFLj ; 或者對于組合過程自動(dòng)機(jī)CPA進(jìn)行Repeat-Until組合運(yùn)算得到新組合過程自動(dòng)機(jī)CPAku,若出現(xiàn)組合約束語義:CPA必須重復(fù)執(zhí)行直到終止條件成立,則普通可接受位置集合OFLeu= {1J,即只有終止位置可接受; 或者對于組合過程自動(dòng)機(jī)CPA進(jìn)行Repeat-while組合運(yùn)算得到新組合過程自動(dòng)機(jī)CPAkw,若出現(xiàn)組合約束語義:CPA必須重復(fù)執(zhí)行直到循環(huán)條件不成立,則普通可接受位置集合OFLkw= {1J,即只有終止位置可接受; 或者對于η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Split-Join組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAsi,若出現(xiàn)組合約束語義:分支組件CPA^必須執(zhí)行完成,則普通可接受位置集合OFLa是在其第一可接受位置集合WFLsJ^基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLsj=WFLsj-WFLj ; 當(dāng)組合過程中不存在組合約束語義時(shí),第二可接受位置集合即等于第一可接受位置集合; 步驟33,組合過程自動(dòng)機(jī)的第三可接受位置集合為SFL為組合過程自動(dòng)機(jī)的起始位置和終止位置,或者是組合過程自動(dòng)機(jī)的終止位置。
5.根據(jù)權(quán)利要求4所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述相容性為: 若組合服務(wù)由η臺(tái)組合過程自動(dòng)機(jī)組成,Si為第i臺(tái)組合過程自動(dòng)機(jī)的位置集合,則組合服務(wù)的全局狀態(tài)向量gsv·Ksp s2, , sn),若有全局狀態(tài)向量gsvKsu S2, , Sn)和gsv/ =(s/ ,S2' ,..., sn/ ),其中一臺(tái)組合過程自動(dòng)機(jī)發(fā)生遷移,使得gsv中的某個(gè)Si變化為gSV'中的Si',而其它的Sj保持即Vj' # /: ~ = ^/,則稱gsv發(fā)生遷移到達(dá)gsv',記為gsv — gsv/ ;對于全局狀態(tài)向量gsv:若滿足▽&.e gsv: Si = {sLoc},則稱gsv為起始全局狀態(tài)向量,記為gsvQ ;若不存在gsv',使得gsv —gsv'成立,則稱gsv為終止全局狀態(tài)向量,記為gsve ; 將組合服務(wù)從起始全局狀態(tài)向量開始的一系列遷移稱為組合服務(wù)的一次運(yùn)行:gsv。一 gSVi — gsv2 —...— gsv,簡記為 gsvQ[ — ]tr gsv,對于組合服務(wù)的一次運(yùn)行g(shù)svQ [ — ] gsv..若Nsi G g-S'v: s丨c WFLp則稱該次運(yùn)行滿足弱相容性,記為wc(gsv0[ — ]tr gsv);若e gsv: Si c (?7?,則稱該次運(yùn)行滿足普通/自定義相容性,記為0C(gsV(l[ — ]tr gsv);若/& e gsv: Si C SFL/,則稱該次運(yùn)行滿足強(qiáng)相容性,記為SC(gsvQ[ — ]tr gsv);將gsv0 [― ]tr gsve稱為組合服務(wù)的一次完整運(yùn)行; 一個(gè)組合服務(wù)CS是完全強(qiáng)/普通/弱相容的,當(dāng)且僅當(dāng)任意gsvj — ]tr gsve都是強(qiáng)/普通/弱相容的;一個(gè)組合服務(wù)CS是部分強(qiáng)/普通/弱相容的,當(dāng)且僅當(dāng)至少存在一個(gè)gsv0[ —]tr gsve是強(qiáng)/普通/弱相容的。
6.根據(jù)權(quán)利要求1所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟20進(jìn)一步具體為:步驟21,若對于一個(gè)并發(fā)遷移6(1,810=讓={11,...,111},其源位置I屬于另一個(gè)并發(fā)遷移e' (I',slt' )=tL' ={1/,…,In' }的目標(biāo)位置集合,且兩個(gè)并發(fā)遷移的并發(fā)條件相同,同時(shí)不存在以I為源位置或目標(biāo)位置的單步遷移,則I是冗余位置,e-asltktL=!^,...,、}為冗余并發(fā)遷移,此時(shí)將冗余并發(fā)遷移e(l,sit)的目標(biāo)位置集合tL并入另一并發(fā)遷移e' (I',slt')的目標(biāo)位置集合tL',同時(shí)移除冗余位置I和冗余并發(fā)遷移e (I, sit);否則位置I不是冗余位置,并發(fā)遷移e (I, sit)不是冗余并發(fā)遷移; 步驟22,若對于一個(gè)同步遷移e (SL=Il1,...,1J, jn)=l,其目標(biāo)位置I屬于另一個(gè)同步遷移e' (sL' ={1/,...,ln' },jn' )=1'的源位置集合,且兩個(gè)同步遷移的同步條件相同,同時(shí)不存在以I為源位置或目標(biāo)位置的單步遷移,則I是冗余位置,e (SL=Il1,..., IJ , jn)=l為冗余并發(fā)遷;此時(shí)將冗余同步遷移e (SL=Il1,..., IJ , jn)的源位置集合sL并入另一同步遷移e' (sL' ={1/ ,...,I/ },jn)的源位置集合sL',同時(shí)移除冗余位置I和冗余同步遷移e (SL=U1,1J, jn);否則位置I不是冗余位置,并發(fā)遷移e(l,slt)不是冗余并發(fā)遷移。
7.根據(jù)權(quán)利要求1所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟50進(jìn)一步具體為: 步驟51,組合過程自動(dòng)機(jī)CPA中的單步遷移esin(l,a)=l’直接轉(zhuǎn)換為一臺(tái)符合UPPAAL語法的時(shí)間自動(dòng)機(jī)UTA的遷移離散遷移e = (/,g = 0, r = 0, /’),遷移標(biāo)號(hào)a= (In, Out, Pre, Eft)轉(zhuǎn)換為a’,其中g(shù)是由時(shí)鐘變量表示的約束條件,r是需要被重置為O的時(shí)鐘變量集合; 步驟52,CPA中的并發(fā)遷移esin(l,jit) = U1,...,ln}轉(zhuǎn)換為η臺(tái)UTA和一個(gè)遷移e = (l,g = 0,a,r=0, Sli),其中:當(dāng)UTA處于Sli位置時(shí),說明它進(jìn)入了并發(fā)執(zhí)行的分`支;a包含并發(fā)條件及一個(gè)廣播通道的發(fā)射動(dòng)作ConChni!; 步驟53,而與并發(fā)遷移對應(yīng)的同步遷移e-Gli,...,、},^)=〗’,則轉(zhuǎn)換為遷移e = (.S'/;, g=0,b,r = 0, /'), b中包含廣播通道的發(fā)射動(dòng)作SynChni!,使得多個(gè)分支能在同一時(shí)刻終結(jié),同時(shí),為了保證同步遷移在所有分支都執(zhí)行各自的操作后才能發(fā)生,增加一個(gè)同步變量SynVari,初值為O,并將“SynVari==]^并入遷移標(biāo)號(hào)b的Guard部分,其中η為分支數(shù)量,每個(gè)分支執(zhí)行所有操作后都使其值加I ; 步驟54,新創(chuàng)建的η臺(tái)UTAi是用于述η個(gè)并發(fā)執(zhí)行的分支,在首尾各增加一個(gè)新的位置bl和el,當(dāng)UTAi處于bl時(shí),說明還沒有進(jìn)入該分支;當(dāng)UTAi處于el時(shí),說明該分支已執(zhí)行完畢山1到對應(yīng)分支的第一個(gè)狀態(tài)的遷移標(biāo)號(hào)包含廣播通道的接收動(dòng)作ConChni?;而對應(yīng)分支的最后一個(gè)狀態(tài)到達(dá)el的遷移標(biāo)號(hào)包含表達(dá)式SynChni?;每個(gè)分支的最后一個(gè)遷移標(biāo)號(hào)的Update部分,增加一個(gè)表達(dá)式SynVari++,使同步變量的值加I。
8.根據(jù)權(quán)利要求7所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟51進(jìn)一步具體為: 組合過程自動(dòng)機(jī)CPA中的單步遷移esin(l,a)=l’直接轉(zhuǎn)換為一臺(tái)符合UPPAAL語法的時(shí)間自動(dòng)機(jī)UTA的遷移離散遷移e = (/,g = 0 a / =0, /'),遷移標(biāo)號(hào)a =(0, Guard, Sync, Update),其中,Guard是一個(gè)邏輯表達(dá)式,表示遷移執(zhí)行的條件;Sync是一組通道的發(fā)射或接受動(dòng)作,用于實(shí)現(xiàn)同步遷移;Update是一組表達(dá)式或用戶函數(shù),用于表達(dá)遷移的效果;語義信息緩沖區(qū)SIB=(SI,V, f),SI是語義信息集合,V是整型變量集合,映射f:SI — V,f是雙射的;遷移標(biāo)號(hào)被擴(kuò)展為一個(gè)四元組(In,Out, Pre, Eft),其中Pre和Eft表示執(zhí)行前提和執(zhí)行效果,邏輯公式和表達(dá)式組成,直接并入到建模語言遷移標(biāo)號(hào)的Guard和Update的部分;In是輸入信息的集合,將其表不為:一個(gè)合取公式Λ f (Ci)并且并入遷移標(biāo)號(hào)的Guard部分,合取項(xiàng)的數(shù)量與In的元素?cái)?shù)量相等,其中f是信息緩沖區(qū)中的映射,Ci e In ;將其表示為一組表達(dá)式{f(Ci)-|Ci e In},并且并入遷移標(biāo)號(hào)的Update部分;0ut是輸入信息的集合,將其表示為一組表達(dá)式R(Ci)++Ici e Out}}并且并入遷移標(biāo)號(hào)的Update部分。
9.根據(jù)權(quán)利要求1所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述有效性邏輯公式CSV=(INFOs,EFFECTs),其中:INF()S為一組要求組合服務(wù)產(chǎn)生的語義信息集合;EFFECTS為一組邏輯公式,該邏輯公式描述要求組合服務(wù)必須達(dá)到的限定效果。
10.根據(jù)權(quán)利要求9所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述步驟60進(jìn)一步具體為:
相容性變量 CptyVari e {unconcerned, incompatible, weak, ordinary, strong},表不UTAi當(dāng)前的相容性:unconcerned表示該UPAi所描述的并行分支還未被激活或已經(jīng)結(jié)束,incompatible表示不相容,weak表示弱相容,ordinary表示普通/自定義相容,strong表示強(qiáng)相容,可以用取值范圍為[0,4]的整型變量來表示相容性變量,數(shù)值O~4依次代表incompatible、weak、ordinary、strong、unconcerned,三種相容性在 UPPAAL 中可描述為:
McptyVar1: CptyVari > 3 ^ CPA 滿足強(qiáng)相容性; ^cptyVar1: CptyVari >2 ^ CPA滿足普通/自定義相容性; cptyVarf.CptyVari > I I CPA 滿足弱相容性; 當(dāng)組合服務(wù)完成一次 完整運(yùn)行后沒有遷移再發(fā)生,組合服務(wù)進(jìn)入死鎖狀態(tài),在UPPAAL中以deadlock關(guān)鍵字表示,故可將完全/部分相容性表示為CTL公式F1,如下:
A (deadlock CptyVar1: CptyVari > m)), n e {I, 2,3};
EO {deadlock λ (VcptyVar1: CptyVari > m)),n e {I, 2,3},其中 CptyVari 為相容性變量; 對于有效性CSV= (INFO5, EFFECT5),完全/部分有效且強(qiáng)/普通/弱相容,表示為CTL公Sf2,如下:
AO ((Vc e INFOs: /(c) > 0) λ (V滬 e EFFECTs: φ = true) λ ^cptyVar-.cpty Vari > m)), m ε {1, 2, 3};
EO ((Vc G INFOs: /(c) > 0) λ (V滬 e EFFECT、., φ = true) λ (VcptyVar1:cpty Vari > m)), m e {1, 2, 3) ?
11.根據(jù)權(quán)利要求1所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證方法,其特征在于:所述信息交互引擎為一臺(tái)信息交互引擎IEE=CexcFac1, excFac2,..., excFacn>,excFaCi=(type, obj, {cj)稱為是一個(gè)交互因子,其中:type ∈{!,?},表示交互的類型,“ !”表示由IEE向Service發(fā)送信息,“?”表示由IEE接收Service發(fā)送的信息;obj ∈ {Servicei}稱為交互對象是一個(gè)組件服務(wù);{ci}是交互的信息集合。
12.—種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:包括如下模塊: 原子過程轉(zhuǎn)換模塊,將OWL-S描述的Web服務(wù)即原子過程轉(zhuǎn)化為一臺(tái)原子過程自動(dòng)機(jī),然后根據(jù)不同的控制結(jié)構(gòu),將原子過程自動(dòng)機(jī)組合為組合過程自動(dòng)機(jī); 優(yōu)化模型模塊,消除組合過程自動(dòng)機(jī)的冗余并發(fā)和同步遷移,獲得優(yōu)化模型; 可接受位置集合模塊,依據(jù)用戶限定的相容性要求,確定組合過程自動(dòng)機(jī)的可接受位置集合; 邏輯公式模塊,依據(jù)用戶限定的有效性要求,確定有效的邏輯公式CSV ; 轉(zhuǎn)換建模語言模塊,將所述獲得優(yōu)化模型轉(zhuǎn)換為UPPAAL的建模語言; CTL模塊,將可接受位置集合和邏輯公式CSV表示為CTL公式; 驗(yàn)證模塊,將建模語言描述的組合服務(wù)模型與CTL公式輸入U(xiǎn)PPAAL進(jìn)行驗(yàn)證;若驗(yàn)證結(jié)果為完全相容且有效,則該組合服務(wù)滿足用戶需求;若驗(yàn)證結(jié)果為部分相容且有效,則可根據(jù)驗(yàn)證結(jié)果生成信息交互引擎,引導(dǎo)組合服務(wù)的運(yùn)行軌跡,達(dá)到用戶要求;若驗(yàn)證結(jié)果是不滿足相容且有效,則該組合服務(wù)無法滿足用戶需求。
13.根據(jù)權(quán)利要求12所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述原子過程轉(zhuǎn)換模塊進(jìn)一步具體為: Sequence組合運(yùn)算單元,若控制結(jié)構(gòu)為Sequence控制結(jié)構(gòu),則進(jìn)行Sequence組合運(yùn)算,即將所有的所述原子過程自動(dòng)機(jī)按照排列的先后順序依次將前一個(gè)原子過程自動(dòng)機(jī)的終止位置連接后一個(gè)原子過程自動(dòng)機(jī)的起始位置轉(zhuǎn)化為組合過程自動(dòng)機(jī); AnyOrder組合運(yùn)算單元,若控制結(jié)構(gòu)為AnyOrder控制結(jié)構(gòu),則進(jìn)行AnyOrder組合運(yùn)算,即構(gòu)造一組邏輯公式φ1,...,φn, φe),初始時(shí)&的值為true,φe=nΛp=1-φp其中八表示將第1到第n個(gè)邏輯公式合取,
14.根據(jù)權(quán)利要求13所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述Sequence組合運(yùn)算、所述AnyOrder組合運(yùn)算、所述Choice組合運(yùn)算及所述If-then-Else組合運(yùn)算為因果約束,所述Repeat-Unti組合運(yùn)算及所述Repeat-whiIe組合運(yùn)算為重復(fù)約束,所述Split-Join組合運(yùn)算為分支約束,所述因果約束、所述重復(fù)約束及所述分支約束為組合約束?!?br>
15.根據(jù)權(quán)利要求14所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述可接受位置集合模塊進(jìn)一步具體為: 第一可接受位置集合單元,第一可接受位置集合WFL:其中原子服務(wù)的WFL為其起始位置和終止位置為該原子服務(wù)的第一可接受位置,對η臺(tái)組合過程自動(dòng)機(jī)CPAi,進(jìn)行組合運(yùn)算后得到的新組合過程自動(dòng)機(jī)CPA,其第一可接受位置集合WFL為各CPAi的第一可接受位置集合WFLi的并集,并且從WFL中移除組合過程中被剔除的位置,若組合過程中增加了新的位置,且該位置為起始位置或終止位置,則應(yīng)添加到WFL中; 第二可接受位置集合單元,組合過程自動(dòng)機(jī)CPAi的第一可接受位置為WFLi,當(dāng)在組合過程中出現(xiàn)組合約束時(shí),獲得的可接受位置組成第二可接受位置集合: 對η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Sequence組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAseq,若出現(xiàn)組合約束語義:若CPAi執(zhí)行則CPAj也必須執(zhí)行,其中i〈j,則普通可接受位置集合OFLseq為CPAi~CPAp1,及CPAj+1~CPAn的第一可接受位置的并集,再加上CPAi的起始位置SLoci和CPAj的終止位置eLoCj ; 或者對η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行AnyOrder組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAm,若出現(xiàn)組合約束語義:組合服務(wù)的運(yùn)行不能停止在CPAj,則普通可接受位置集合OFLaq是在其第一可接受位置集合WFLaJ^基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLao=WFLao-WFLj ; 或者對于η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Choice組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAa。,若出現(xiàn)組合約束語義:若CPA^被選中執(zhí)行則必須執(zhí)行完成,則普通可接受位置集合OFLcho是在其第一可接受位置集合WFLqto基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLcho=WFLcho-WFLj ; 或者對于兩臺(tái)組合過程自動(dòng)機(jī)CPA1和CPA2進(jìn)行If-then-Else組合運(yùn)算得到新的組合過程CPAItE,若出現(xiàn)組合約束語義:若CPA^被選中執(zhí)行則必須執(zhí)行完成,則普通可接受位置集合0FLItE是在其第一可接受位置集合WFL1 tE中去除CPAj的第一可接受位置集合WFLj,即OFL^^WFUo-WFLj ; 或者對于組合過程自動(dòng)機(jī)CPA進(jìn)行Repeat-Until組合運(yùn)算得到新組合過程自動(dòng)機(jī)CPAku,若出現(xiàn)組合約束語義:CPA必須重復(fù)執(zhí)行直到終止條件成立,則普通可接受位置集合OFLeu= {1J,即只有終止位置可接受; 或者對于組合過程自動(dòng)機(jī)CPA進(jìn)行Repeat-while組合運(yùn)算得到新組合過程自動(dòng)機(jī)CPAkw,若出現(xiàn)組合約束語義:CPA必須重復(fù)執(zhí)行直到循環(huán)條件不成立,則普通可接受位置集合OFLkw= {1J,即只有終止位置可接受; 或者對于η臺(tái)組合過程自動(dòng)機(jī)CPAi進(jìn)行Split-Join組合運(yùn)算得到新的組合過程自動(dòng)機(jī)CPAsi,若出現(xiàn)組合約束語義:分支組件CPA^必須執(zhí)行完成,則普通可接受位置集合OFLa是在其第一可接受位置集合WFLsJ^基礎(chǔ)上,去除CPAj的第一可接受位置集合WFLj,即OFLsj=WFLsj-WFLj ; 當(dāng)組合過程中不存在組合約束語義時(shí),第二可接受位置集合即等于第一可接受位置集·合; 第三可接受位置集合單元,組合過程自動(dòng)機(jī)的第三可接受位置集合為SFL為組合過程自動(dòng)機(jī)的起始位置和終止位置,或者是組合過程自動(dòng)機(jī)的終止位置。
16.根據(jù)權(quán)利要求15所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述相容性為: 若組合服務(wù)由η臺(tái)組合過程自動(dòng)機(jī)組成,Si為第i臺(tái)組合過程自動(dòng)機(jī)的位置集合,則組合服務(wù)的全局狀態(tài)向量gsvKsp s2, , sn),若有全局狀態(tài)向量gsvKsu S2, , Sn)和gsv/ =(s/ ,S2' ,..., sn/ ),其中一臺(tái)組合過程自動(dòng)機(jī)發(fā)生遷移,使得gsv中的某個(gè)Si變化為gsv '中的Si',而其它的Sj保持即Vj'#= --/,則稱gsv發(fā)生遷移到達(dá)gsv',記為gsv — gsv/ ;對于全局狀態(tài)向量gsv:若滿足.Va ε gsv: s: = {sLoc},則稱gsv為起始全局狀態(tài)向量,記為gsvQ ;若不存在gsv',使得gsv —gsv'成立,則稱gsv為終止全局狀態(tài)向量,記為gsve ;將組合服務(wù)從起始全局狀態(tài)向量開始的一系列遷移稱為組合服務(wù)的一次運(yùn)行:gsv。一 gSVi — gsv2 —...— gsv,簡記為 gsvQ[ — ]trgsv,對于組合服務(wù)的一次運(yùn)行g(shù)svQ[ — JtrgSV:若Vs, e gsv: s: C= WFLi,則稱該次運(yùn)行滿足弱相容性,記為wc(gsv0[ — ]tr gsv);若/& e gsv: Si c OFLi,則稱該次運(yùn)行滿足普通/自定義相容性,記為OC(gSV(l[ — ]t, gsv)
17.根據(jù)權(quán)利要求12所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述優(yōu)化模型模塊進(jìn)一步具體為: 并發(fā)遷移優(yōu)化單元,若對于一個(gè)并發(fā)遷移e(l,sit) ZtL=U1,...,IJ,其源位置I屬于另一個(gè)并發(fā)遷移e' (I',slt' )=tL' ={1/,...,ln' }的目標(biāo)位置集合,且兩個(gè)并發(fā)遷移的并發(fā)條件相同,同時(shí)不存在以I為源位置或目標(biāo)位置的單步遷移,則I是冗余位置,e-asltktL=!^,...,、}為冗余并發(fā)遷移,此時(shí)將冗余并發(fā)遷移e(l,sit)的目標(biāo)位置集合tL并入另一并發(fā)遷移e' (I',slt')的目標(biāo)位置集合tL',同時(shí)移除冗余位置I和冗余并發(fā)遷移e (I, sit);否則位置I不是冗余位置,并發(fā)遷移e (I, sit)不是冗余并發(fā)遷移; 同步遷移優(yōu)化單元,若對于一個(gè)同步遷移e (SL=U1,ln},jn)=l,其目標(biāo)位置I屬于另一個(gè)同步遷移e' (sL' ={1/},jn' )=1’的源位置集合,且兩個(gè)同步遷移的同步條件相同,同時(shí)不存在以I為源位置或目標(biāo)位置的單步遷移,則I是冗余位置,e (SL=Il1,..., IJ , jn)=l為冗余并發(fā)遷;此時(shí)將冗余同步遷移e (SL=Il1,..., IJ , jn)的源位置集合sL并入另一同步遷移e' (sL' ={1/ ,...,I/ },jn)的源位置集合sL',同時(shí)移除冗余位置I和冗余同步遷移e (SL=U1,1J, jn);否則位置I不是冗余位置,并發(fā)遷移e(l,slt)不是冗余并發(fā)遷移。
18.根據(jù)權(quán)利要求12所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述轉(zhuǎn)換建模語言模塊進(jìn)一步具體為: 單步遷移轉(zhuǎn)換單元,組合過程自動(dòng)機(jī)CPA中的單步遷移esin(l, a)=l’直接轉(zhuǎn)換為一臺(tái)符合UPPAAL語法的時(shí)間自動(dòng)機(jī)UTA的遷移離散遷移
19.根據(jù)權(quán)利要求18所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述單步遷移轉(zhuǎn)換單元進(jìn)一步具體為: 組合過程自動(dòng)機(jī)CPA中的單步遷移esin(l,a) =1’直接轉(zhuǎn)換為一臺(tái)符合UPPAAL語法的時(shí)間自動(dòng)機(jī)UTA的遷移離散遷移
20.根據(jù)權(quán)利要求12所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述有效性邏輯公式CSV=(INFOs,EFFECTs),其中:INF()S為一組要求組合服務(wù)產(chǎn)生的語義信息集合;EFFECTS為一組邏輯公式,該邏輯公式描述要求組合服務(wù)必須達(dá)到的限定效果。
21.根據(jù)權(quán)利要求20所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述CTL模塊進(jìn)一步具體為:
相容性變量 CptyVari e {unconcerned, incompatible, weak, ordinary, strong},表不UTAi當(dāng)前的相容性:unconcerned表示該UPAi所描述的并行分支還未被激活或已經(jīng)結(jié)束,incompatible表示不相容,weak表示弱相容,ordinary表示普通/自定義相容,strong表示強(qiáng)相容,可以用取值范圍為[0,3]的整型變量來表示相容性變量,數(shù)值O~4依次代表incompatible、weak、ordinary、strong、unconcerned,三種相容性在 UPPAAL 中可描述為:
22.根據(jù)權(quán)利要求12所述的一種語義Web服務(wù)組合的自動(dòng)驗(yàn)證系統(tǒng),其特征在于:所述信息交互引擎為一臺(tái)信息交互引擎IEE=CexcFac1, excFac2,..., excFacn>,excFaCi=(type, obj, {cj)稱為是一個(gè)交互因子,其中:type e {!,?},表示交互的類型,“ !”表示由IEE向Service發(fā)送信息,“?”表示由IEE接收Service發(fā)送的信息;obj e {ServiceJ稱為交互對象是一個(gè)組件服務(wù);IcJ是交互的信息集合。
【文檔編號(hào)】G06F9/44GK103853559SQ201410089115
【公開日】2014年6月11日 申請日期:2014年3月12日 優(yōu)先權(quán)日:2014年3月12日
【發(fā)明者】唐鄭熠, 王穎, 胡文瑜, 陳義, 王金水 申請人:福建工程學(xué)院