陳雅莉,艾 萍,姚成霞
(1.長江水利委員會(huì)水文局,湖北 武漢 430010;2.河海大學(xué)水文水資源與水利工程科學(xué)國家重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210098;3.河海大學(xué)水文水資源學(xué)院,江蘇 南京 210098)
隨著軟件技術(shù)的發(fā)展,基于構(gòu)件的軟件應(yīng)用系統(tǒng)的開發(fā)方法成為主流。未來軟件的開發(fā)活動(dòng)將呈現(xiàn)為通過基礎(chǔ)軟件資源組合為基本系統(tǒng)[1]。基于構(gòu)件的軟件開發(fā)技術(shù)的發(fā)展為建立動(dòng)態(tài)定制和演化式系統(tǒng)提供了技術(shù)基礎(chǔ)。
水利信息化建設(shè)的實(shí)踐表明,水利信息系統(tǒng)在滿足一般事務(wù)性處理需求之后,將向支持信息的綜合分析、主題化應(yīng)用方向發(fā)展,其基本特點(diǎn)是需求在一定的問題域內(nèi)變化,需要處理的數(shù)據(jù)在一定類型間不斷重構(gòu)。換言之,需要構(gòu)造一種可支持動(dòng)態(tài)需求和資源配置的軟件平臺(tái),才能滿足水利信息系統(tǒng)從在線事務(wù)處理向分析與決策支持處理發(fā)展的技術(shù)需要。
本文針對(duì)上述需求,依據(jù)基于構(gòu)件和反射機(jī)制的軟件動(dòng)態(tài)演化理論與方法,對(duì)軟件系統(tǒng)的動(dòng)態(tài)配置及其在水利信息系統(tǒng)中的應(yīng)用進(jìn)行了分析研究。
對(duì)軟件系統(tǒng)的配置操作可以分為靜態(tài)和動(dòng)態(tài)配置2種[2]。基于構(gòu)件的軟件系統(tǒng)的動(dòng)態(tài)配置是指運(yùn)行期間對(duì)系統(tǒng)的配置項(xiàng)進(jìn)行改變,強(qiáng)調(diào)運(yùn)行時(shí)的改變不影響整個(gè)系統(tǒng)的運(yùn)行。根據(jù)動(dòng)態(tài)配置對(duì)系統(tǒng)的改變的可預(yù)期性,一般可以將動(dòng)態(tài)配置分為可預(yù)期的和隨時(shí)出現(xiàn)的動(dòng)態(tài)配置2種[3]??深A(yù)期的動(dòng)態(tài)配置對(duì)軟件系統(tǒng)的自動(dòng)再配置至關(guān)重要,隨時(shí)出現(xiàn)的動(dòng)態(tài)配置則適用于軟件系統(tǒng)維護(hù)期間[4]。
顯然,動(dòng)態(tài)配置的對(duì)象是具體的信息系統(tǒng)(簡稱目標(biāo)應(yīng)用系統(tǒng)),一般將能支持動(dòng)態(tài)配置的應(yīng)用系統(tǒng)稱為動(dòng)態(tài)配置系統(tǒng)。動(dòng)態(tài)配置通過對(duì)構(gòu)件的動(dòng)態(tài)刪除、添加、屬性設(shè)置、構(gòu)件間連接的建立與刪除等操作,實(shí)現(xiàn)動(dòng)態(tài)改變目標(biāo)系統(tǒng)功能的目的,因此,動(dòng)態(tài)配置系統(tǒng)應(yīng)由目標(biāo)應(yīng)用系統(tǒng)和支持動(dòng)態(tài)配置的部件2部分組成。典型的動(dòng)態(tài)配置系統(tǒng)的結(jié)構(gòu)如圖1所示。
圖1 典型的動(dòng)態(tài)配置系統(tǒng)的結(jié)構(gòu)
反射(也稱計(jì)算反射)引入計(jì)算機(jī)領(lǐng)域的動(dòng)機(jī),是希望計(jì)算系統(tǒng)能夠根據(jù)自身的狀態(tài)和運(yùn)行環(huán)境隨時(shí)調(diào)整自身以達(dá)到和諧的狀態(tài)[5-6]。一般,支持動(dòng)態(tài)配置的軟件系統(tǒng)的反射體系分為3層,具體結(jié)構(gòu)如圖2所示。
圖2 支持動(dòng)態(tài)配置的軟件系統(tǒng)的反射體系
圖2中,目標(biāo)應(yīng)用系統(tǒng)作為動(dòng)態(tài)配置系統(tǒng)的底層,對(duì)應(yīng)反射系統(tǒng)模型中的“基層”;中間層(動(dòng)態(tài)配置管理器)根據(jù)配置信息的變化,完成動(dòng)態(tài)配置,對(duì)應(yīng)反射系統(tǒng)模型中的“元層”;第1層(圖形化用戶界面)是圖形化的用戶動(dòng)態(tài)配置操作接口,對(duì)應(yīng)反射系統(tǒng)模型的“元元層”。
根據(jù)支持動(dòng)態(tài)配置的系統(tǒng)結(jié)構(gòu)和反射系統(tǒng)的特點(diǎn),構(gòu)造基于反射的動(dòng)態(tài)配置模型 RDRM(ReflectionBased Dynamic Reconfiguration Model)如下式所示:式中:DRSMM 表示動(dòng)態(tài)配置系統(tǒng)的元模型;DRSMD 表示動(dòng)態(tài)配置系統(tǒng)的元數(shù)據(jù):DRSMP 表示動(dòng)態(tài)配置系統(tǒng)的元協(xié)議。
DRSMM,DRSMD,DRSMP的定義分別如下:
式中:ReconfigGUI 表示圖形化的用戶接口;Appsystem 表示動(dòng)態(tài)配置的目標(biāo)應(yīng)用系統(tǒng);DRManager表示動(dòng)態(tài)配置管理器,配置者提交動(dòng)態(tài)配置請(qǐng)求,DRManager 動(dòng)態(tài)配置管理器分析動(dòng)態(tài)配置請(qǐng)求的合理性,將合理的動(dòng)態(tài)配置請(qǐng)求轉(zhuǎn)化為對(duì)系統(tǒng)中配置信息的改變,動(dòng)態(tài)配置引擎根據(jù)元數(shù)據(jù)建立的對(duì)象模型,修改目標(biāo)應(yīng)用系統(tǒng)Appsystem的結(jié)構(gòu)或者行為。
式中:動(dòng)態(tài)配置系統(tǒng)的元數(shù)據(jù)包括動(dòng)態(tài)配置系統(tǒng)的元結(jié)構(gòu)數(shù)據(jù) StructMD 和元語義數(shù)據(jù) SemaMD,StructMD 主要是 Appsystem 的體系結(jié)構(gòu)信息,包括構(gòu)件、構(gòu)件組成和連接關(guān)系等信息,SemaMD 主要包括動(dòng)態(tài)配置關(guān)注的運(yùn)行時(shí) Appsystem 的構(gòu)件狀態(tài)數(shù)據(jù)和行為數(shù)據(jù)的集合,這些數(shù)據(jù)是對(duì)運(yùn)行時(shí)目標(biāo)應(yīng)用系統(tǒng)行為的反映。
式中:動(dòng)態(tài)配置系統(tǒng)元協(xié)議包括元結(jié)構(gòu)協(xié)議 StructP和元行為協(xié)議 BehaP,是訪問或者操作元數(shù)據(jù)的一組規(guī)則。動(dòng)態(tài)配置系統(tǒng)在協(xié)議的執(zhí)行過程中,必須保證對(duì)系統(tǒng)的調(diào)控不會(huì)導(dǎo)致系統(tǒng)進(jìn)入異常狀態(tài),這就是系統(tǒng)一致性約束。實(shí)施對(duì)目標(biāo)應(yīng)用系統(tǒng)的調(diào)控功能必須滿足一致性約束條件。不同的協(xié)議,在不同的系統(tǒng)一致性約束下,對(duì)系統(tǒng)調(diào)控的具體內(nèi)容不同,執(zhí)行的過程也不同。
動(dòng)態(tài)配置模型的元數(shù)據(jù)包括元結(jié)構(gòu)和元語義數(shù)據(jù)。
動(dòng)態(tài)配置模型的元結(jié)構(gòu)數(shù)據(jù)主要包括目標(biāo)應(yīng)用系統(tǒng)的系統(tǒng)結(jié)構(gòu)、構(gòu)件和構(gòu)件關(guān)系等描述信息。
2.2.1 系統(tǒng)結(jié)構(gòu)描述信息
基于反射的動(dòng)態(tài)配置模型中,在描述應(yīng)用系統(tǒng)的結(jié)構(gòu)時(shí),系統(tǒng)被看成是通過連接器綁定在一起的構(gòu)件實(shí)例,軟件體系結(jié)構(gòu)的定義不僅包括目標(biāo)應(yīng)用系統(tǒng)所包含的構(gòu)件實(shí)例的規(guī)約,也包括連接這些構(gòu)件間連接關(guān)系的規(guī)約。通過解釋構(gòu)件和連接等規(guī)約,把原子構(gòu)件組裝成復(fù)合構(gòu)件直至完整的目標(biāo)應(yīng)用系統(tǒng)。因此,描述系統(tǒng)結(jié)構(gòu)的元數(shù)據(jù)主要包括:1)構(gòu)件集合信息,即目標(biāo)應(yīng)用系統(tǒng)的構(gòu)件組成信息;2)構(gòu)件連接信息,即構(gòu)件間各種連接關(guān)系的描述信息。
2.2.2 構(gòu)件描述信息
封閉的構(gòu)件通過接口向外界提供一系列的屬性,構(gòu)件使用者可以通過讀取/修改這些屬性的值來影響構(gòu)件的行為,這些可變的屬性主要包括構(gòu)件在界面表現(xiàn)上的一些功能屬性[7]。因此,描述構(gòu)件的元數(shù)據(jù)主要包括:構(gòu)件的標(biāo)識(shí)、屬性、接口和方法等信息。
2.2.3 構(gòu)件關(guān)系描述信息
在目標(biāo)應(yīng)用軟件系統(tǒng)中,構(gòu)件不是獨(dú)立存在的,構(gòu)件之間具有互操作性。對(duì)構(gòu)件間關(guān)系的研究有利于設(shè)計(jì)出合理的動(dòng)態(tài)配置算法以保證系統(tǒng)的一致性,綜合文獻(xiàn)[8-9] 對(duì)構(gòu)件間的連接關(guān)系的分類,將構(gòu)件間的連接關(guān)系分為3種:調(diào)用、協(xié)作和順序關(guān)系。
設(shè) C1和 C2是目標(biāo)應(yīng)用系統(tǒng)中的2個(gè)不同構(gòu)件,若C1使用了 C2所提供的服務(wù),則構(gòu)件 C1和C2之間是調(diào)用關(guān)系;若 C1和 C2互相協(xié)作完成同一功能,則 C1和 C2之間是協(xié)作關(guān)系;若 C2的執(zhí)行是以 C1執(zhí)行為前提的,即C2的輸入是 C1的輸出,則構(gòu)件 C1和 C2 之間是順序關(guān)系。
根據(jù)對(duì)構(gòu)件連接關(guān)系的分析,描述構(gòu)件關(guān)系的元數(shù)據(jù)主要包括:連接關(guān)系標(biāo)識(shí)信息;與連接關(guān)系相關(guān)的構(gòu)件的標(biāo)識(shí);連接關(guān)系的屬性信息。
動(dòng)態(tài)配置模型的元語義數(shù)據(jù)主要包括目標(biāo)應(yīng)用系統(tǒng)中構(gòu)件的狀態(tài)信息和構(gòu)件的行為信息[10]。如,構(gòu)件是否完成正在響應(yīng)的請(qǐng)求屬于構(gòu)件狀態(tài)信息,構(gòu)件是否可以對(duì)外發(fā)送請(qǐng)求或者接受請(qǐng)求屬于構(gòu)件的行為信息。對(duì)于一個(gè)具體的動(dòng)態(tài)配置系統(tǒng)而言,需要哪些元語義數(shù)據(jù),取決于其提供的動(dòng)態(tài)配置功能、對(duì)系統(tǒng)一致性約束的認(rèn)定和對(duì)動(dòng)態(tài)配置算法的設(shè)計(jì)。一般情況下,對(duì)于水利信息系統(tǒng)這類屬于指定論域的目標(biāo)應(yīng)用系統(tǒng),元語義數(shù)據(jù)的運(yùn)用可以大大簡化。
構(gòu)件的狀態(tài)可以分為激活與靜止2種狀態(tài),若構(gòu)件處于激活狀態(tài),則在此時(shí)的動(dòng)態(tài)配置操作將不被允許,只有在構(gòu)件處于靜止?fàn)顟B(tài)時(shí),動(dòng)態(tài)配置操作才能實(shí)施。
構(gòu)件在運(yùn)行時(shí)刻通常會(huì)存在大量正在進(jìn)行的行為,包括發(fā)送請(qǐng)求、接收應(yīng)答的交互行為及處理數(shù)據(jù)等本地行為。對(duì)行為的任意中斷,可能破壞系統(tǒng)一致性。因此,動(dòng)態(tài)配置必須保證包括交互行為和本地行為在內(nèi)的構(gòu)件行為的完整性。
動(dòng)態(tài)配置系統(tǒng)中,通過實(shí)施動(dòng)態(tài)配置請(qǐng)求可以改變構(gòu)件的狀態(tài),也可以改變構(gòu)件的運(yùn)行行為。無論是改變構(gòu)件狀態(tài)還是行為,反射動(dòng)態(tài)配置模型都是利用元語義數(shù)據(jù),在驅(qū)動(dòng)或者等待構(gòu)件到達(dá)動(dòng)態(tài)配置安全狀態(tài)后,再實(shí)施具體的動(dòng)態(tài)配置請(qǐng)求的。
To ease the calculation, we define angular frequencies and quality factors of primary and secondary sides as:
系統(tǒng)動(dòng)態(tài)配置后,動(dòng)態(tài)配置前系統(tǒng)中正在執(zhí)行的實(shí)例將成功轉(zhuǎn)換到動(dòng)態(tài)配置后的系統(tǒng)中繼續(xù)執(zhí)行,并保證轉(zhuǎn)換后的執(zhí)行過程在動(dòng)態(tài)配置后不出現(xiàn)錯(cuò)誤,這種特性稱為一致性[11]。在動(dòng)態(tài)配置實(shí)施期間,可能有一部分服務(wù)暫時(shí)中斷,但不受動(dòng)態(tài)配置影響的部分應(yīng)當(dāng)仍能提供服務(wù)。動(dòng)態(tài)配置實(shí)施以后,軟件系統(tǒng)無論發(fā)生怎樣的變化,都必須保證系統(tǒng)能正確運(yùn)行,即動(dòng)態(tài)配置模型中無論是元結(jié)構(gòu)協(xié)議還是元行為協(xié)議涉及的動(dòng)態(tài)配置算法必須滿足一定的約束規(guī)則,以維持系統(tǒng)的一致性。
一致性涉及的內(nèi)容較為廣泛,目前認(rèn)為的公共一致性約束大致有6種[12],本文重點(diǎn)討論目標(biāo)應(yīng)用系統(tǒng)的構(gòu)件狀態(tài)一致性和構(gòu)件間交互一致性。
1)構(gòu)件狀態(tài)一致性
在對(duì)系統(tǒng)進(jìn)行動(dòng)態(tài)配置的過程中,動(dòng)態(tài)配置操作必須滿足一定的狀態(tài)約束,規(guī)則是:當(dāng)構(gòu)件處于激活狀態(tài)時(shí),構(gòu)件請(qǐng)求或者提供服務(wù),與其他構(gòu)件進(jìn)行交互,實(shí)現(xiàn)系統(tǒng)的功能,這時(shí)對(duì)構(gòu)件進(jìn)行刪除或者替換是不被允許的,只有當(dāng)構(gòu)件進(jìn)入靜止?fàn)顟B(tài)時(shí)才能對(duì)構(gòu)件進(jìn)行刪除或者替換。
2)構(gòu)件交互一致性
目標(biāo)應(yīng)用系統(tǒng)中的構(gòu)件不是獨(dú)立存在的,構(gòu)件間存在相互操作。根據(jù)構(gòu)件間連接關(guān)系分析,將與構(gòu)件 C1相關(guān)的構(gòu)件劃分為以下3類:
a)與構(gòu)件 C1存在調(diào)用關(guān)系的構(gòu)件的集合 Cu 為Cu∈{C|C1→C};
c)與構(gòu)件 C1存在順序關(guān)系的構(gòu)件的集合 Cd 為Cd∈{C|C1*C} ;
構(gòu)件間的連接關(guān)系體現(xiàn)了構(gòu)件間互操作的影響。如在向系統(tǒng)中添加構(gòu)件 C2時(shí), 必須將構(gòu)件 C2的輸入提供者 C1一起加入系統(tǒng),保證構(gòu)件 C2的運(yùn)行條件;
當(dāng)刪除系統(tǒng)中已存在的構(gòu)件 C1時(shí),應(yīng)該考慮與構(gòu)件 C1相關(guān)的構(gòu)件的集合,若與構(gòu)件 C1存在調(diào)用關(guān)系的集合Cu 中的構(gòu)件僅與構(gòu)件 C1相關(guān)聯(lián)時(shí),刪除構(gòu)件 C1后,Cu 中的這部分構(gòu)件亦應(yīng)該被刪除。以 C1的輸出作為輸入的構(gòu)件集合Cd 中的構(gòu)件,必須另外提供其初始化輸入,否則這些構(gòu)件應(yīng)當(dāng)隨著構(gòu)件 C1的刪除一并刪除。
根據(jù)動(dòng)態(tài)配置目的,動(dòng)態(tài)配置模型中與系統(tǒng)拓?fù)浣Y(jié)構(gòu)相關(guān)的元結(jié)構(gòu)協(xié)議在動(dòng)態(tài)配置功能方面主要負(fù)責(zé)實(shí)現(xiàn)獲取系統(tǒng)的結(jié)構(gòu)信息,增加或者刪除連接件以及替換舊的構(gòu)件。與系統(tǒng)的行為動(dòng)態(tài)配置相關(guān)的元行為協(xié)議則主要負(fù)責(zé)對(duì)系統(tǒng)中各個(gè)組成元素相關(guān)屬性的修改或者構(gòu)件的相關(guān)進(jìn)程的掛起與運(yùn)行。元行為協(xié)議主要是作用于構(gòu)件或者連接件本身,而元結(jié)構(gòu)協(xié)議對(duì)構(gòu)件或者連接件的操作則影響到了整個(gè)目標(biāo)應(yīng)用軟件系統(tǒng)。根據(jù)元行為和元結(jié)構(gòu)協(xié)議所涉及的范圍,可以將動(dòng)態(tài)配置劃分為構(gòu)件和結(jié)構(gòu)2種動(dòng)態(tài)配置,以考慮動(dòng)態(tài)配置對(duì)整個(gè)運(yùn)行時(shí)軟件系統(tǒng)的影響。
在對(duì)動(dòng)態(tài)配置模型中元數(shù)據(jù)和元協(xié)議定義及分析的基礎(chǔ)上,本節(jié)通過1個(gè)支持動(dòng)態(tài)配置的通用雨水情圖示系統(tǒng)實(shí)例,來闡述基于反射的動(dòng)態(tài)配置模型的工作狀況及其在水利信息系統(tǒng)中的應(yīng)用方式。
通用雨水情圖示系統(tǒng)為用戶提供的服務(wù)包括水文過程及對(duì)比示意、水位及對(duì)比示意,以及雨洪過程示意等。支持動(dòng)態(tài)配置的通用雨水情圖示系統(tǒng)支持在各個(gè)復(fù)合構(gòu)件的基礎(chǔ)上,通過修改相關(guān)的配置信息,實(shí)現(xiàn)系統(tǒng)功能的動(dòng)態(tài)演化和用戶數(shù)據(jù)的個(gè)性化表示。
選為例子的系統(tǒng)功能是水位顯示,由“水位示意復(fù)合構(gòu)件”實(shí)現(xiàn)。水位示意圖用1個(gè)平面示意圖來表示水位和壩體的關(guān)系,并可以用動(dòng)畫的形式連續(xù)播放水位變化的情況。對(duì)于圖中的壩頂高程、校核洪水位等特征值線,當(dāng)鼠標(biāo)移動(dòng)到靠近線的位置時(shí),能提示對(duì)應(yīng)線的名稱及相應(yīng)的值,鼠標(biāo)離開某一范圍提示消失。另外,復(fù)合構(gòu)件還實(shí)現(xiàn)了刷新速度設(shè)置、動(dòng)畫演示、保存等功能。水位示意復(fù)合構(gòu)件包含多個(gè)成員構(gòu)件,用于查看水位示意圖的某一時(shí)刻運(yùn)行時(shí)結(jié)構(gòu)如圖3所示,對(duì)應(yīng)的系統(tǒng)結(jié)構(gòu)描述如圖4所示。
圖3 動(dòng)態(tài)配置前的系統(tǒng)結(jié)構(gòu)
圖4 動(dòng)態(tài)配置前系統(tǒng)結(jié)構(gòu)描述
圖5 動(dòng)態(tài)配置后的系統(tǒng)結(jié)構(gòu)
圖6 動(dòng)態(tài)配置后系統(tǒng)的結(jié)構(gòu)描述
設(shè)需要?jiǎng)討B(tài)刪除構(gòu)件 Lineinfo,根據(jù)水位示意圖的結(jié)構(gòu)描述,可以得到 Lineinfo 構(gòu)件與構(gòu)件 Line之間存在順序關(guān)系,與構(gòu)件 Datable 之間存在調(diào)用關(guān)系。根據(jù)動(dòng)態(tài)配置算法對(duì)系統(tǒng)一致性的考慮,構(gòu)件 Line 也應(yīng)當(dāng)被刪除,并且 Line 與 chartpanel 之間的連接也應(yīng)當(dāng)被刪除,Datable 與 Lineinfo 之間的連接也應(yīng)當(dāng)被刪除,在系統(tǒng)的結(jié)構(gòu)描述文件中關(guān)于構(gòu)件 Lineinfo 和 Line 的構(gòu)件信息和構(gòu)件間關(guān)系的信息都應(yīng)被刪除。執(zhí)行此動(dòng)態(tài)配置后的系統(tǒng)結(jié)構(gòu)如圖5所示,對(duì)應(yīng)的系統(tǒng)的結(jié)構(gòu)描述如圖6所示。
圖3和5中系統(tǒng)結(jié)構(gòu)描述對(duì)應(yīng)的水位示意圖的運(yùn)行結(jié)果如圖7和8所示。它們直觀地展示了動(dòng)態(tài)配置前后運(yùn)行結(jié)果的差異。
圖7 動(dòng)態(tài)配置前水位示意圖運(yùn)行結(jié)果
圖8 動(dòng)態(tài)配置后水位示意圖運(yùn)行結(jié)果
本文根據(jù)水利信息系統(tǒng)在向分析型應(yīng)用發(fā)展過程中,急需解決資源和需求動(dòng)態(tài)演化的關(guān)鍵技術(shù)問題,在分析動(dòng)態(tài)配置的軟件系統(tǒng)的反射體系的基礎(chǔ)上,建立了基于反射的動(dòng)態(tài)配置模型。該模型刻畫了動(dòng)態(tài)配置系統(tǒng)的反射本質(zhì),描繪了動(dòng)態(tài)配置的實(shí)施過程和動(dòng)態(tài)配置系統(tǒng)的工作原理,反映了動(dòng)態(tài)配置系統(tǒng)的各構(gòu)成要素。并以此模型為基礎(chǔ),分析動(dòng)態(tài)配置系統(tǒng)各構(gòu)成要素之間的本質(zhì)關(guān)聯(lián),對(duì)動(dòng)態(tài)配置模型的元數(shù)據(jù),包括系統(tǒng)結(jié)構(gòu)、構(gòu)件、構(gòu)件間關(guān)系等描述進(jìn)行了定義;分析了動(dòng)態(tài)配置的元協(xié)議,以保證系統(tǒng)狀態(tài)一致性和交互一致性。
在動(dòng)態(tài)配置模型的基礎(chǔ)上,通過通用雨水情圖示系統(tǒng)中的實(shí)例來驗(yàn)證模型的合理性及應(yīng)用于水文信息系統(tǒng)的實(shí)用性,并說明系統(tǒng)動(dòng)態(tài)配置機(jī)制的實(shí)現(xiàn)。實(shí)踐表明,基于反射的系統(tǒng)動(dòng)態(tài)配置模型及其實(shí)現(xiàn)機(jī)制,能在水利信息系統(tǒng)中有效應(yīng)用,為解決水利信息系統(tǒng)的資源動(dòng)態(tài)配置、支持動(dòng)態(tài)需求等問題,提供了可行的技術(shù)方案。
[1] 楊芙清.軟件工程技術(shù)發(fā)展思索[J].軟件學(xué)報(bào),2005,1(16): 1-7.
[2] Cao J,Chan E,Lee CH,etal.A dynamic recon figuration manager for graph-oriented distributed programs[C]//Proceedings of International Conference on Parallel and Distributed Systems,1997: 216-221.
[3] M Vermelmge.Towards a Chemical Model for Software Architecture Recon figuration[C]// In Proceedings of the 4th International Conference on Con figurable Distributed Systems,1994: 4-6.
[4] Thais Batista,Ackbar Joolia,Geoff Coulson.Managing Dynamic recon figuration of Component based Systems[J].Lecture Notes in computer Science,2005,3527: 1-17.
[5] 胡海洋,馬曉星,陶先平,等.反射中間件的研究與進(jìn)展[J].計(jì)算機(jī)學(xué)報(bào),2005,28(9): 1407-1419.
[6] M Shaw et al..Abstraction for Software Architecture and Tools to Support Them[J].IEEE Trans Software Engineering,1995,21(4): 314-315.
[7] 戰(zhàn)德臣,王忠杰,徐曉飛.基于 XML 的組件標(biāo)準(zhǔn)化描述[J].計(jì)算機(jī)工程與應(yīng)用,2003(4): 89-92.
[8] 張友生.構(gòu)件運(yùn)算與軟件演化研究[J].計(jì)算機(jī)應(yīng)用,2004,24(4): 20-22.
[9] 黃萬艮,陳松喬.基于構(gòu)件運(yùn)算的軟件體系結(jié)構(gòu)及其復(fù)雜性度量[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(14): 66-70.
[10] 龔洪泉.基于形式語義的構(gòu)件組裝與演化研究[D].上海:復(fù)旦大學(xué),2005.
[11] 魏丫丫,林闖,田立勤.用進(jìn)程代數(shù)描述可適應(yīng)工作流的模型方法[J].電子學(xué)報(bào),2002,30(11): 1624-1628.
[12] 竇蕾,王樹鳳,徐田榮.分布式系統(tǒng)動(dòng)態(tài)配置技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)科學(xué),2005,32(12): 8-15.