羅愛民,施 鼎
(國防科技大學(xué)信息系統(tǒng)與管理學(xué)院信息系統(tǒng)工程重點(diǎn)實(shí)驗(yàn)室,湖南 長(zhǎng)沙 410073)
基于聚類分析的C4ISR系統(tǒng)服務(wù)關(guān)鍵要素自動(dòng)提取方法
羅愛民,施鼎
(國防科技大學(xué)信息系統(tǒng)與管理學(xué)院信息系統(tǒng)工程重點(diǎn)實(shí)驗(yàn)室,湖南長(zhǎng)沙 410073)
從業(yè)務(wù)模型中發(fā)現(xiàn)和識(shí)別業(yè)務(wù)層服務(wù)是面向服務(wù)架構(gòu)系統(tǒng)設(shè)計(jì)的關(guān)鍵活動(dòng)。為面向服務(wù)架構(gòu)設(shè)計(jì),提出了一種基于聚類分析的自動(dòng)化服務(wù)提取方法。該方法將服務(wù)提取問題轉(zhuǎn)換為多目標(biāo)優(yōu)化求解的問題,以C/U矩陣業(yè)務(wù)模型為基礎(chǔ),綜合考慮服務(wù)設(shè)計(jì)中耦合度、內(nèi)聚度、重用性、可維護(hù)性等原則,構(gòu)建優(yōu)化設(shè)計(jì)的目標(biāo)函數(shù),并提出模擬退火的求解方法。最后通過案例進(jìn)行驗(yàn)證。
服務(wù);聚類;耦合度;內(nèi)聚度
網(wǎng)址:www.sys-ele.com
信息系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)在系統(tǒng)建設(shè)中發(fā)揮著越來越重要的作用。由于基于面向服務(wù)架構(gòu)(service oriented architecture,SOA)技術(shù)架構(gòu)正在成為系統(tǒng)開發(fā)主流技術(shù)體制、流行的體系結(jié)構(gòu)框架,如美軍國防部體系結(jié)構(gòu)框架(DoD architecture framework,DoD AF)2.0、英國國防部體系結(jié)構(gòu)框架(MoD architecture framework,MoDAF)1.2、TOGAF9.1等都增加了服務(wù)相關(guān)的設(shè)計(jì)內(nèi)容。如DoD AF2.0的服務(wù)視圖中,包括服務(wù)組成、服務(wù)資源流描述、服務(wù)之間關(guān)系、服務(wù)與系統(tǒng)關(guān)系等模型。這些都是體系結(jié)構(gòu)設(shè)計(jì)中服務(wù)視圖的核心內(nèi)容,其中服務(wù)組成更是最基礎(chǔ)的內(nèi)容,它是其他服務(wù)設(shè)計(jì)內(nèi)容或模型的基礎(chǔ)。但是目前的體系結(jié)構(gòu)框架中沒有提供服務(wù)獲得的具體方法。
目前關(guān)于服務(wù)設(shè)計(jì)研究多集中在服務(wù)計(jì)算、服務(wù)標(biāo)準(zhǔn)和服務(wù)實(shí)現(xiàn)等方面,這些研究偏服務(wù)實(shí)現(xiàn)技術(shù)層面,常常忽視對(duì)業(yè)務(wù)層服務(wù)的設(shè)計(jì)與分析。應(yīng)用層服務(wù)與業(yè)務(wù)模型密切相關(guān),從業(yè)務(wù)模型中發(fā)現(xiàn)和提取業(yè)務(wù)層服務(wù)是SOA系統(tǒng)設(shè)計(jì)的關(guān)鍵活動(dòng),服務(wù)提取方法對(duì)體系結(jié)構(gòu)中服務(wù)設(shè)計(jì)有重要的應(yīng)用價(jià)值。
在服務(wù)設(shè)計(jì)中,傳統(tǒng)的服務(wù)識(shí)別和提取方法主要是設(shè)計(jì)人員憑經(jīng)驗(yàn)分析。這種人工分析方法難以滿足復(fù)雜系統(tǒng)的設(shè)計(jì)要求。針對(duì)服務(wù)識(shí)別和提取的問題,近幾年國內(nèi)外學(xué)者也開展了相關(guān)的研究。文獻(xiàn)[1]分析了服務(wù)設(shè)計(jì)的公理化原則;文獻(xiàn)[2]提出了一種面向服務(wù)建模體系架構(gòu)(service oriented modeling and architecture,SOMA)的方法;文獻(xiàn)[3-5]提出了從業(yè)務(wù)模型自動(dòng)識(shí)別服務(wù)的框架,認(rèn)為服務(wù)提取應(yīng)該是一個(gè)多目標(biāo)優(yōu)化問題,但是文中沒有具體的實(shí)現(xiàn)方法;文獻(xiàn)[6-9]提出了基于圖、矩陣元素等半自動(dòng)化服務(wù)提取方法。此外,有不少學(xué)者將聚類方法用于信息系統(tǒng)識(shí)別的研究[10 13],這些研究主要是非自動(dòng)化的方式,或只考慮了單一的影響因素。本文針對(duì)信息系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)中應(yīng)用層服務(wù)提取的問題,綜合考慮服務(wù)設(shè)計(jì)的多種約束規(guī)則,將服務(wù)提取為多目標(biāo)優(yōu)化設(shè)計(jì)的數(shù)學(xué)問題,提出一種基于聚類分析的自動(dòng)化服務(wù)提取方法。該方法能夠?qū)崿F(xiàn)從業(yè)務(wù)模型中提取有效的服務(wù)體系,為信息系統(tǒng)體系結(jié)構(gòu)服務(wù)視圖的產(chǎn)品設(shè)計(jì)提供基礎(chǔ),也為SOA中服務(wù)設(shè)計(jì)提供有力的支持。
一般來說,體系結(jié)構(gòu)層面的服務(wù)設(shè)計(jì)主要是應(yīng)用服務(wù)的設(shè)計(jì)。應(yīng)用服務(wù)與業(yè)務(wù)活動(dòng)和流程是密切相關(guān)的。因此,應(yīng)用服務(wù)體系的設(shè)計(jì)必須以業(yè)務(wù)模型為基礎(chǔ)。為便于后續(xù)分析,業(yè)務(wù)模型采用常用的C/U矩陣建模。
定義1一個(gè)業(yè)務(wù)模型可以定義為M={(BPi,BEj,PEij),i=1,…,#row,j=1,…,#column}。其中,BP表示業(yè)務(wù)活動(dòng)集,BPi是第i個(gè)業(yè)務(wù)活動(dòng);BE表示業(yè)務(wù)實(shí)體集,BEj是第j個(gè)BE;#row和#column分別表示集合BP和BE元素的數(shù)量;PEij表示BPi與BEj之間的操作關(guān)系,操作關(guān)系按照數(shù)據(jù)模型的基本操作創(chuàng)建(C)和使用(U)來表示。
根據(jù)定義1,常用的C/U矩陣是描述業(yè)務(wù)模型的有效方式。其中,矩陣的行表示業(yè)務(wù)活動(dòng),矩陣的列表示業(yè)務(wù)實(shí)體,矩陣中每個(gè)單元表示業(yè)務(wù)活動(dòng)與業(yè)務(wù)實(shí)體之間的操作關(guān)系。該模型稱為業(yè)務(wù)模型的C/U矩陣。
目前信息系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)多采用多視圖設(shè)計(jì)方法。在多視圖體系結(jié)構(gòu)設(shè)計(jì)中,業(yè)務(wù)模型主要體現(xiàn)在業(yè)務(wù)視圖中。因此,可根據(jù)業(yè)務(wù)視圖的內(nèi)容來構(gòu)建相應(yīng)的業(yè)務(wù)模型。其中業(yè)務(wù)活動(dòng)集來自業(yè)務(wù)活動(dòng)模型(OV-5),業(yè)務(wù)實(shí)體模型與邏輯數(shù)據(jù)模型對(duì)應(yīng),邏輯數(shù)據(jù)模型來自數(shù)據(jù)信息視圖的邏輯數(shù)據(jù)模型(DIV-2)。盡管業(yè)務(wù)視圖中沒有模型詳細(xì)描述邏輯數(shù)據(jù)模型與業(yè)務(wù)活動(dòng)之間的具體操作,但是業(yè)務(wù)活動(dòng)模型和業(yè)務(wù)信息交換矩陣都分析了業(yè)務(wù)活動(dòng)模型之間的信息交換關(guān)系。因此,在建立業(yè)務(wù)模型時(shí),可以根據(jù)信息交換關(guān)系、業(yè)務(wù)規(guī)則模型以及需求分析中業(yè)務(wù)活動(dòng)更細(xì)節(jié)的內(nèi)容,定義C/U矩陣中各單元的操作類型。
構(gòu)建業(yè)務(wù)模型C/U矩陣的簡(jiǎn)單流程如下:
步驟1利用業(yè)務(wù)視圖模型,列出所有的業(yè)務(wù)活動(dòng)作為C/U矩陣的行;
步驟2利用數(shù)據(jù)信息視圖模型,列出所有的邏輯數(shù)據(jù)作為C/U矩陣列;
步驟3分析業(yè)務(wù)活動(dòng)與邏輯數(shù)據(jù)模型的操作關(guān)系,定義C/U矩陣中各單元的操作類型。
表1表示一個(gè)業(yè)務(wù)模型的C/U矩陣。
表1 業(yè)務(wù)模型的C/U矩陣示例
服務(wù)體系提取的核心就是按照某種原則對(duì)業(yè)務(wù)活動(dòng)或功能進(jìn)行合理的分組劃分,使其滿足服務(wù)設(shè)計(jì)的要求。
在業(yè)務(wù)模型的C/U矩陣中,業(yè)務(wù)模型明確了業(yè)務(wù)活動(dòng)與邏輯數(shù)據(jù)之間的關(guān)系,因此可以分析C/U矩陣中定義的操作以及操作之間的關(guān)系,按照服務(wù)設(shè)計(jì)原則對(duì)類似或相關(guān)性強(qiáng)的活動(dòng)、數(shù)據(jù)進(jìn)行聚類,根據(jù)聚類結(jié)果提取服務(wù)集。每一個(gè)聚類對(duì)應(yīng)一個(gè)候選服務(wù)。
定義2C/U矩陣的第k個(gè)聚類模塊Clusterk={(BPi,BEj),i。其中,lk1是該聚類模塊在C/U矩陣中的起始行,hk1是該聚類模塊在C/U矩陣中的結(jié)束行,lk2是該聚類模塊在C/U矩陣中的起始列,hk2是該聚類模塊在C/U 矩陣中的結(jié)束列,1≤l1K<hK1≤ #row并且
設(shè)存在聚類模塊
設(shè)M表示業(yè)務(wù)模型對(duì)應(yīng)的C/U矩陣。一個(gè)好的聚類方案至少具有以下特點(diǎn):
(1)非交互性
對(duì)于?K,N,Clusterk∩ClusterN=?。這要求每個(gè)聚類模塊在業(yè)務(wù)活動(dòng)和數(shù)據(jù)模型上沒有交互關(guān)系。
(2)合并性
(3)完整性
如果一個(gè)聚類方案將C/U矩陣劃分并形成N個(gè)聚類模塊,那么這N個(gè)聚類模塊的并集覆蓋了C/U矩陣中BP集與BE集。
(4)唯一性
定義3服務(wù)Sk={Name,I,Msg,Rs}。其中,Name是服務(wù)的名稱;I是與Sk完成的活動(dòng)集;Msg是與Sk相關(guān)的數(shù)據(jù)集;Rs是服務(wù)Sk與其他服務(wù)之間的關(guān)系集。
基于C/U矩陣按照聚類方法提取服務(wù),C/U矩陣中每個(gè)聚類模塊只能唯一地被定義為一個(gè)服務(wù),即?Clusterk,ClusterK?SK。
按照服務(wù)的定義,服務(wù)模型中I對(duì)應(yīng)該聚類模塊中BP的相關(guān)集,Msg對(duì)應(yīng)該聚類模塊中BE的相關(guān)集。
按照面向服務(wù)設(shè)計(jì)的基本原理,服務(wù)設(shè)計(jì)必須有助于最大限度地發(fā)揮服務(wù)的優(yōu)勢(shì)。通常在服務(wù)設(shè)計(jì)中,主要考慮的約束因素為:粒度適中,低耦合度,高內(nèi)聚度,可重用性,便于維護(hù)。
由于影響服務(wù)優(yōu)化設(shè)計(jì)的因素多且相互關(guān)聯(lián),因此對(duì)于復(fù)雜的業(yè)務(wù)模型,依靠人工、定性的方法對(duì)C/U矩陣進(jìn)行聚類分析難以滿足設(shè)計(jì)要求。
根據(jù)基于業(yè)務(wù)模型通過聚類方法提取服務(wù)的特點(diǎn),將多制約因素的聚類問題轉(zhuǎn)化為一個(gè)多目標(biāo)最優(yōu)求解的數(shù)學(xué)問題,通過對(duì)C/U矩陣的定量化處理,綜合考慮服務(wù)設(shè)計(jì)的多個(gè)約束因素,構(gòu)建優(yōu)化的目標(biāo)函數(shù),通過目標(biāo)函數(shù)自動(dòng)化求最優(yōu)解,最終形成最優(yōu)的聚類方案,即服務(wù)提取方案。
為便于定量化計(jì)算,將C/U矩陣各單元的操作變?yōu)榱炕臄?shù)值。量化規(guī)則是:若矩陣單元元素為C或U,則單元的值設(shè)為1,否則設(shè)為0。在實(shí)際應(yīng)用中,建立C/U矩陣也可劃分為創(chuàng)建(Create)、讀?。≧ead)、更新(Update)和刪除(Delete)等4類,并針對(duì)4類操作定量化4個(gè)數(shù)值。
在前面提出的服務(wù)設(shè)計(jì)約束原則中,服務(wù)的重用性與粒度設(shè)計(jì)是相關(guān)的,粒度小的服務(wù)重用性高??删S護(hù)性與耦合度密切相關(guān),耦合度低的服務(wù)可維護(hù)性好。為簡(jiǎn)化求解問題,本文重點(diǎn)考慮耦合度、內(nèi)聚度和粒度3個(gè)測(cè)度因素。
(1)內(nèi)聚度
內(nèi)聚度指服務(wù)內(nèi)部功能以及數(shù)據(jù)關(guān)系緊密程度。服務(wù)內(nèi)聚度越高,服務(wù)設(shè)計(jì)質(zhì)量越高,它與聚類模塊中各單元的相關(guān)性有關(guān)。
設(shè)聚類模塊
定義聚類Clusterk的內(nèi)聚度coh(k)為
式中,mij表示C/U矩陣各單元操作量化后的數(shù)值。
假設(shè)針對(duì)業(yè)務(wù)模型的C/U矩陣形成的聚類方案C中包含N個(gè)聚類模塊,即共提取N個(gè)服務(wù),則該聚類方案的內(nèi)聚度為
根據(jù)式(1)和式(2),0<coh(k)≤1,0<Coh(C)≤1。
(2)耦合度
耦合度主要指服務(wù)之間的關(guān)聯(lián)關(guān)系,即聚類模塊之間的相互關(guān)系。服務(wù)之間關(guān)聯(lián)性越小,則耦合度越低,服務(wù)設(shè)計(jì)質(zhì)量越高。對(duì)于表2所示的服務(wù)聚類結(jié)果來說,假設(shè)S1和S2是兩個(gè)聚類,表中的兩個(gè)陰影部分體現(xiàn)S1和S2之間的關(guān)系,S1和S2的耦合程度由這兩個(gè)陰影部分單元的操作決定。如果陰影部分單元值全為0,則S1和S2之間沒有數(shù)據(jù)交互關(guān)系,則它們的耦合度為0。同理,如果陰影部分區(qū)域內(nèi)非0的單元數(shù)越多,說明S1和S2之間的關(guān)聯(lián)性越大,即耦合度越大。
表2 服務(wù)聚類結(jié)果示例
根據(jù)式(3)和式(4),0<Cou(m,n)≤1,0<Cou(C)≤1。
(3)粒度
粒度主要反映聚類中包含的業(yè)務(wù)活動(dòng)和邏輯數(shù)據(jù)的多少。粒度直接影響服務(wù)的重用性。
服務(wù)包含的業(yè)務(wù)活動(dòng)和邏輯數(shù)據(jù)數(shù)量越多,說明服務(wù)的粒度越大,Gk越小。如果聚類Clusterk只包含1個(gè)業(yè)務(wù)活動(dòng)和1個(gè)邏輯數(shù)據(jù)實(shí)體時(shí),聚類對(duì)應(yīng)的服務(wù)粒度越小,則Gk=1,達(dá)到最大值。
假設(shè)聚類方案中共包括N個(gè)服務(wù),則這種聚類方案的粒度為
根據(jù)式(5)和式(6),0<Gk≤1,0<G≤1。
上面討論的3個(gè)因素相互制約和影響?;跇?gòu)建的C/U矩陣通過聚類來提取服務(wù)體系,就是要綜合考慮上述影響因素,在這些影響因素中找到一個(gè)最佳的折中點(diǎn)。為此,將聚類提取服務(wù)問題轉(zhuǎn)換為一個(gè)多目標(biāo)求最優(yōu)解的問題。耦合度最小最優(yōu),內(nèi)聚度最大最優(yōu),粒度最小最優(yōu)。
構(gòu)建優(yōu)化目標(biāo)函數(shù)
式中,C表示聚類方案;Z(C)為目標(biāo)函數(shù)??紤]到耦合度、內(nèi)聚度和粒度目標(biāo)值的特點(diǎn),定義函數(shù)f為
針對(duì)目標(biāo)函數(shù)的特點(diǎn),采用模擬退火算法進(jìn)行優(yōu)化求解[9]。模擬退火算法求解步驟如下所示。
輸入C/U矩陣,指標(biāo)權(quán)重ωi(i=1,2,3)。
總之,文山州農(nóng)村地區(qū)因受社會(huì)經(jīng)濟(jì)、文化教育、傳播工具和交通條件等諸多因素影響,農(nóng)村居民較少有機(jī)會(huì)接受無償獻(xiàn)血知識(shí)方面的宣傳,所以對(duì)無償獻(xiàn)血認(rèn)識(shí)不足。只有加大農(nóng)村無償獻(xiàn)血的宣傳力度,采取形式多樣的宣傳方式對(duì)農(nóng)村進(jìn)行宣傳,重點(diǎn)普及血液生理知識(shí)和無償獻(xiàn)血優(yōu)惠政策,以提高無償獻(xiàn)血知曉率,破除舊思想、轉(zhuǎn)變新觀念、消除獻(xiàn)血染病等顧慮,才能提高農(nóng)民無償獻(xiàn)血的積極性,壯大農(nóng)民無償獻(xiàn)血隊(duì)伍,全面協(xié)調(diào)地推動(dòng)文山州無償獻(xiàn)血工作的發(fā)展。
輸出聚類方案,滿足特定需求的聚類集合。
步驟1設(shè)置輸入?yún)?shù)和迭代次數(shù)。
步驟2隨機(jī)生成一個(gè)解決方案,作為Current方案
在1~#row之間生成一個(gè)隨機(jī)數(shù)作為服務(wù)的個(gè)數(shù)并賦值給變量CurrentSerυice;
等概率為每一行分配一個(gè)服務(wù)編號(hào);
等概率為每一列分配一個(gè)服務(wù)編號(hào);
掃描每一列分配的服務(wù)編號(hào),若該服務(wù)編號(hào)不屬于行服務(wù)編號(hào)集,則重新分配該列服務(wù)號(hào)直至滿足條件;
將最終的服務(wù)個(gè)數(shù)更新給CurrentSerυice。
步驟3隨機(jī)生成一個(gè)相對(duì)于當(dāng)前方案的候選方案
在0~CurrentSerυice之間隨機(jī)生成一個(gè)數(shù),加1后賦值給變量NextSerυice;
隨機(jī)選擇一行和一列做為候選行和候選列;
將選擇的候選行和候選列的服務(wù)號(hào)更新為NextSerυice;
掃描每一列分配的服務(wù)編號(hào),若該服務(wù)編號(hào)不屬于行服務(wù)編號(hào)集,則重新分配該列服務(wù)編號(hào)直至滿足條件;
掃描每一行分配的服務(wù)編號(hào),若該服務(wù)編號(hào)不屬于列服務(wù)編號(hào)集,則重新分配該行服務(wù)編號(hào)直至滿足條件。
步驟4分析目標(biāo)函數(shù)的變化,ΔE=Z(next)-Z(cuurent)。
步驟5若ΔE≥0,則用候選方案取代當(dāng)前方案;若ΔE<0,則候選方案以概率eΔE/T取代當(dāng)前方案。
步驟6T=1/迭代次數(shù)。
步驟7對(duì)于給定的迭代次數(shù)重復(fù)步驟3~步驟6。
為驗(yàn)證上述方法的可行性,選用文獻(xiàn)[1]中表1定義的CRUD矩陣進(jìn)行案例分析。該CRUD矩陣是以美軍后勤業(yè)務(wù)為背景建立的,其中定義了Create、Read,Update,Delete等4種操作。該CRUD矩陣具體值可參看文獻(xiàn)[1]。
在案例研究中,不區(qū)分文獻(xiàn)[1]表1中單元的Read,Update,Delete 3種操作,將這3種操作統(tǒng)一定義為Use操作,這樣將原來的CRUD矩陣簡(jiǎn)化為C/U矩陣。針對(duì)修改后的C/U矩陣,利用前面提供的算法進(jìn)行最優(yōu)化求解。優(yōu)化求解采用Matlab平臺(tái)實(shí)現(xiàn),聚類結(jié)果如圖1所示。其中圖1中第一行和第一列的數(shù)字N表示對(duì)應(yīng)文獻(xiàn)[1]表1中第N行(或列)的過程或數(shù)據(jù),設(shè)ω1=0.4,ω2=0.3,ω3=0.4。
通過聚類計(jì)算后得到服務(wù)數(shù)量為5個(gè)(對(duì)應(yīng)圖中5個(gè)陰影區(qū)域),如圖1所示。圖2是最優(yōu)化求解算法的收斂速度。
圖1 聚類后的C/U矩陣
圖2 最優(yōu)化求解算法的收斂速度
本文提出一種通過聚類分析提取服務(wù)的方法,將聚類分析提取服務(wù)轉(zhuǎn)化為多目標(biāo)優(yōu)化求解的問題,建立了目標(biāo)函數(shù),給出求解方法。這種方法能夠?yàn)榉?wù)提取提供自動(dòng)化的、定量化分析方法,提高服務(wù)體系設(shè)計(jì)的科學(xué)性和效率。
服務(wù)提取是面向服務(wù)設(shè)計(jì)中的核心問題。本文提出的聚類分析方法是以業(yè)務(wù)活動(dòng)與邏輯數(shù)據(jù)模型之間的關(guān)系為基礎(chǔ),主要是從數(shù)據(jù)關(guān)系測(cè)角度來進(jìn)行聚類分析。業(yè)務(wù)活動(dòng)執(zhí)行的過程對(duì)服務(wù)設(shè)計(jì)有較強(qiáng)的影響,在內(nèi)聚度、耦合度、粒度等方面都應(yīng)該考慮。因此充分結(jié)合數(shù)據(jù)和流程兩方面建立目標(biāo)函數(shù)能夠更高效地設(shè)計(jì)服務(wù)體系。同時(shí),在現(xiàn)有方法的基礎(chǔ)上,可以探索服務(wù)接口關(guān)系的自動(dòng)化生成方法。
[1]Nyamekye K.Methodology of designing and evaluating reliability of the DoD net_centric ecosystem[J].International Test and Eυaluation Association Journal,2010,31(3):399-409.
[2]Arsanjani A,Ghosh S,AllamA,et al.SOMA:a method for developing service-oriented solutions[J].IBMSystems Journal,2008,47(3):377-396.
[3]Jamshidi P,Teimourzadegan R,Nikravesh A,et al.An automated method for service specification[C]//Proc.of the ACM/ IEEE International Conference on Software Engineering and Warm up Workshop,2009:25-28.
[4]Jamshidi P,Khoshnevis S,Teimourzadegan R,et al.Toward automatic transformation of enterprise business model to service model[C]//Proc.of the International Conference on Software Engineering Workshop on Principles of Engineering Serυice Oriented System,2009:70-74.
[5]Khoshnevis S,Jamshidi P,Nikravesh A,et al.ASMEM:a method for automating model evolution of service-oriented systems[R].CMU/SEI-2010SR004.
[6]Zhang L J,Zhou N,Chee YM,et al.SOMA-ME:a platform for the model-driven design of SOA solutions[J].IBM Systems Journal,2008,47(3):397-413.
[7]Jain H,Zhao H,Chinta N R.A spanning tree based approach to identifying web services[J].Web Serυice Research,2004,1(1):1-20.
[8]Wang X Z,Wang Z J,Xu X F.Semi-empirical service composition:a clustering based approach[C]//Proc.of the IEEE International Conference on Web Serυices,2011:219-226.
[9]Jamshidi P,Mansour S,Sedighiani S,et al.An automated service identification method[R].TR-ASER-2012-01.
[10]Jain H,Chalimeda N,Lvaturi N,et al.Business component identification:a formal approach[C]//Proc.of the 5th IEEE International Conference on Enterprise Distributed Object Computing,2001:183-187.
[11]Fayad M E.Accomplishing software stability[J].Communications of the ACM,2002,45(1):111-115.
[12]Lee J K,Jung S J,Kim S D.Component identification method with coupling and cohesion[C]//Proc.of the 8th Asia-Pacific Software Engineering,2001:79-86.
[13]MenascéD A,Casalicchio E,Dubey V.On optimal service selection in service oriented architectures[J].Performance Eυaluation,2010,67(8):659-675.
Research on automatic identification method for key elements of service in C4ISR based on clustering
LUO Ai-min,SHI Ding
(Department of Information System and Management,Science and Technology on Information Systems Engineering Laboratory,National Uniυersity of Defense Technology,Changsha 410073,China)
A key process in the design of the service oriented architecture(SOA)system is to identify application level service from business models.An automated service identification method is provided based on clustering.Based on the business model of the C/U matrix,service identification is formulated as a multi-objective optimization problem.An optimization objective function is presented that derives service design principles,such as coupling,cohesion,reusability and maintainability,and the solving method of the simulated annealing optimization is provided.A case is given to illustrate the method.
service;clustering;coupling;cohesion
TP 303
A
10.3969/j.issn.1001-506X.2016.05.17
1001-506X(2016)05-1081-05
2015-02-02;
2015-08-16;網(wǎng)絡(luò)優(yōu)先出版日期:2015-12-23。
網(wǎng)絡(luò)優(yōu)先出版地址:http://www.cnki.net/kcms/detail/11.2422.TN.20151223.1111.024.html
國家自然科學(xué)基金(71171197)資助課題
羅愛民(1970-),女,教授,博士,主要研究方向?yàn)樾畔⑾到y(tǒng)工程。
E-mail:amluo@nudt.edu.cn
施鼎(1991-),男,碩士研究生,主要研究方向?yàn)樾畔⑾到y(tǒng)工程。
E-mail:1148307406@qq.com