欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法

文檔序號:6537932閱讀:501來源:國知局
一種面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法
【專利摘要】本發(fā)明公開一種基于復(fù)雜網(wǎng)絡(luò)的面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法。該方法結(jié)合復(fù)雜網(wǎng)絡(luò)的小世界模型和結(jié)構(gòu)熵理論,即集群系數(shù)越大、平均距離越小,并且度分布越均勻,則內(nèi)聚度越大。同時對不連通的子圖,按各個子圖節(jié)點(diǎn)數(shù)在總子圖節(jié)點(diǎn)數(shù)比例的乘積計算整個網(wǎng)絡(luò)的內(nèi)聚度。通過上述方法分別分析面向?qū)ο筌浖到y(tǒng)的類中的屬性與屬性之間網(wǎng)絡(luò)的內(nèi)聚度;方法與方法之間網(wǎng)絡(luò)的內(nèi)聚度;方法與屬性之間網(wǎng)絡(luò)的內(nèi)聚度,最后根據(jù)軟件系統(tǒng)的情況設(shè)定上述三種關(guān)系的權(quán)重計算該類的內(nèi)聚度。相比現(xiàn)有技術(shù),本發(fā)明具有更好的度量效果和實(shí)際的應(yīng)用價值。
【專利說明】一種面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種軟件度量方法,具體是一種利用復(fù)雜網(wǎng)絡(luò)的小世界模型和結(jié)構(gòu)熵進(jìn)行類的內(nèi)聚度度量方法,屬于軟件工程技術(shù)和復(fù)雜網(wǎng)絡(luò)交叉領(lǐng)域。
【背景技術(shù)】
[0002]軟件工程的目標(biāo)是開發(fā)新技術(shù)和工具提高軟件質(zhì)量,使其更加穩(wěn)定并且易于維護(hù)。為了評估和提高在開發(fā)過程中的軟件質(zhì)量,程序開發(fā)人員和管理人員使用一些指標(biāo),這些指標(biāo)估計不同軟件的一些屬性,比如內(nèi)聚度、耦合度和復(fù)雜度。內(nèi)聚度是指模塊內(nèi)部各成分之間的聯(lián)結(jié)強(qiáng)度,是一種主要的軟件質(zhì)量指標(biāo),內(nèi)聚度越高,越容易理解、修改和維護(hù)。然而內(nèi)聚度本身是主觀的、非形式化的概念,人們很難客觀地評估一個模塊的內(nèi)聚度。
[0003]在面向?qū)ο蟪绦蛟O(shè)計語言中,類支持?jǐn)?shù)據(jù)抽象、封裝和繼承等面向?qū)ο筇卣鞯幕靖拍睢n愂敲嫦驅(qū)ο蟮幕締挝怀绦?,它定義了表示狀態(tài)的屬性集和表示行為的方法集。因此,在面向?qū)ο蟪绦蛑?,?nèi)聚度主要是指一個類或一個對象內(nèi)部屬性和方法之間的聯(lián)結(jié)強(qiáng)度。
[0004]1998 年,Br iand [L.C.Br iand, J.Daly, J.Wuest, A unified frameworkfor cohesion measurement in object-oriented systems,Empirical SoftwareEngineering, An International Journal3(l) (1998)65 - 117]定義了類內(nèi)聚度度量的四種數(shù)學(xué)特征,給內(nèi)聚度度量提供理論支持。(I)Nonnegativity and Normailization,以內(nèi)聚度的度量值屬于特點(diǎn)的區(qū)域[0,ΜΑΧ]。這種理論能夠很容易的比較度量不同類的內(nèi)聚度;(2) Null value and maximum value,如果類中的方法和屬性之間沒有任何關(guān)系,貝丨J為Null value ;如果類中的方法和屬性之間所有可能的聯(lián)結(jié)都用了,則為Maximum value ;
[3]Monotonicity,在已有的類中增加方法與屬性之間的聯(lián)結(jié),不會降低該類的內(nèi)聚度;
[4]Cohesivemodules,合并兩個不相關(guān)的模塊后并不會增加合并后類的內(nèi)聚度。如果度量準(zhǔn)則沒有符合上述任何一種,則類的內(nèi)聚度度量是有缺陷的。
[0005]目前基于上述理論標(biāo)準(zhǔn),國內(nèi)外很多學(xué)者進(jìn)行了類的內(nèi)聚度研究,并提出了很多度量方法,比如:LC0M1, LC0M2, LC0M3, LC0M4, LC0M5, Coh, TCC, LCC, DC, DC, CC, SC0M, LSCC, CAMC, NHD和SNHD等等。這些方法雖然有些能很好的應(yīng)用,但是沒有從復(fù)雜性科學(xué)上加以研究,因此以上的度量方面理論或多或少不夠全面。

【發(fā)明內(nèi)容】

[0006]發(fā)明目的:本發(fā)明所要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)所存在的度量方法的理論欠缺、不完整,提供一種基于復(fù)雜網(wǎng)絡(luò)的面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,該方法充分以圖論為基礎(chǔ)的,把具有復(fù)雜系統(tǒng)的類中方法和屬性簡化成點(diǎn)以及連接點(diǎn)的線段的集合,研究其內(nèi)聚度具有較好的度量效果。
[0007]技術(shù)方案:一種面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,包括以下步驟:
[0008]步驟A、對類中的屬性與屬性之間網(wǎng)絡(luò)進(jìn)行分析計算其內(nèi)聚度;[0009]步驟B、對類中的方法與方法之間網(wǎng)絡(luò)進(jìn)行分析計算其內(nèi)聚度;
[0010]步驟C、對類中的方法與屬性之間網(wǎng)絡(luò)進(jìn)行分析計算其內(nèi)聚度;
[0011]步驟D、根據(jù)步驟A步驟B和步驟C得到的值設(shè)定各個權(quán)重計算類的內(nèi)聚度。
[0012]有益效果:本發(fā)明利用復(fù)雜網(wǎng)絡(luò)的小世界模型和結(jié)構(gòu)熵理論,分析面向?qū)ο筌浖到y(tǒng)的類中的屬性與屬性之間網(wǎng)絡(luò)的內(nèi)聚度;方法與方法之間網(wǎng)絡(luò)的內(nèi)聚度;方法與屬性之間網(wǎng)絡(luò)的內(nèi)聚度,最后根據(jù)軟件系統(tǒng)的情況設(shè)定上述三種關(guān)系的權(quán)重計算該類的內(nèi)聚度。比現(xiàn)有的分析方法更加全面,具有一定的應(yīng)用價值。
【專利附圖】

【附圖說明】
[0013]圖1為本發(fā)明實(shí)施例的內(nèi)聚度度量方法流程圖;
[0014]圖2為本發(fā)明實(shí)施例的簡單JAVA類代碼;
[0015]圖3為本發(fā)明實(shí)施例的方法與屬性之間網(wǎng)絡(luò)關(guān)系圖;
[0016]圖4為本發(fā)明實(shí)施例的屬性與屬性之間網(wǎng)絡(luò)關(guān)系圖。
【具體實(shí)施方式】
[0017]下面結(jié)合具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對本發(fā)明的各種等價形式的修改均落于本申請所附權(quán)利要求所限定的范圍。 [0018]一、面向?qū)ο笙到y(tǒng)的類依賴圖
[0019]在真實(shí)的軟件系統(tǒng)中,對于面向?qū)ο笙到y(tǒng)的類C,其中A= (A1, A2, , AJ為類C的屬性集,M = (M1, M2,, MJ為類C的方法集,則類C的屬性集與方法集之間存在著如下3種依賴關(guān)系:屬性與屬性之間的依賴關(guān)系;方法與方法之間的依賴關(guān)系;方法與屬性之間的依賴關(guān)系。并且各種依賴關(guān)系都存在著傳遞性?;谏鲜?種依賴關(guān)系,可以構(gòu)造類C的依賴圖。定義一個類C的依賴圖(⑶G)是有向圖,⑶G=〈N,E>,其中,N是節(jié)點(diǎn)集,E是邊集。N = Na U Nm, Na是類C的屬性節(jié)點(diǎn)集,每個節(jié)點(diǎn)表示一個屬性;Nm是類C的方法節(jié)點(diǎn)集,每個節(jié)點(diǎn)表示一個方法。
[0020]構(gòu)件依賴圖(⑶G)由三個子圖組成:屬性間依賴子圖(AAG)、方法間依賴子圖(MMG)、方法與屬性間依賴子圖(MG)。
[0021 ] (I)屬性間依賴子圖(AAG )
[0022]AAG =< NA,Ea >,其中Na是類C的屬性節(jié)點(diǎn)集,Ea是邊集,表示類C的屬性之間的依賴關(guān)系,如果Ai, Aj e Na,且Ai互相依賴么」,即這兩個屬性都與某方法有關(guān)系,那么<Ai,Aj
〉G EAo
[0023](2 )方法間依賴子圖(MMG )
[0024]MMG =< NM,Em >,其中Nm是類C的方法節(jié)點(diǎn)集,Em是邊集,表示類C的方法之間的依賴關(guān)系,如果Mi, Mj e ^,且Mi相互依賴Mj,即兩個方法有調(diào)用關(guān)系或者二個方法都與某屬性有關(guān)系,那么< Mi, Mj > e Em。
[0025](3)方法與屬性間依賴子圖(MAG)
[0026]MAG =< N,Ema >,其中N是類C的屬性和方法節(jié)點(diǎn)集,Ema是邊集,表示類C的屬性與方法之間的依賴關(guān)系,如果Ai e Na, Mj e Nm,且Ai依賴于M」,那么< Ai, Mj > e EM。[0027]類C的依賴圖CDG可以看成是類C中屬性與屬性、方法與方法和屬性與方法之間依賴關(guān)系的圖形化描述,它直觀地展現(xiàn)了類C中的各種依賴關(guān)系。
[0028]二、類內(nèi)聚度度量方法(如圖1所示)
[0029]假設(shè)下面三種不同網(wǎng)絡(luò)都是連通的,如下面方法所介紹。如果不是連通的,對不連通的子圖,按子圖節(jié)點(diǎn)數(shù)在整個子圖節(jié)點(diǎn)數(shù)比例的乘積計算其整個網(wǎng)絡(luò)的內(nèi)聚度。如果不考慮小世界的特性,僅僅考慮熵的影響。當(dāng)且僅當(dāng)P (A1) = P (A2)=…=Ι/m時,-P (Ai)InP (Ai)取得最大值為lnm,即網(wǎng)絡(luò)中的節(jié)點(diǎn)度大致相等,內(nèi)聚度越大。但是此網(wǎng)絡(luò)不一定聚集成團(tuán),因此在趨于節(jié)點(diǎn)度相差不大的情況下,若能接近小世界網(wǎng)絡(luò),即大的集群系數(shù)和小的平均距離,則更符合內(nèi)聚性效果更好。
[0030]( I)屬性間的內(nèi)聚度度量
[0031]類的屬性間的內(nèi)聚度主要是指類中屬性之間關(guān)系的密切程度。為了度量這種關(guān)系,對類中的每個屬性Ai (i = 1,2,...,m),引入一個集合AID來記錄屬性Ai所依賴的其它屬性的集合:AID(Ai) = {A」IAjPAj有依賴關(guān)系,且Ai關(guān)A」}。AID(Ai) = (Aj)Ai e A, if< Ai, Aj > e GAA}
[0032]令
【權(quán)利要求】
1.一種面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,包括以下步驟: 步驟A、對類中的屬性與屬性之間網(wǎng)絡(luò),利用復(fù)雜網(wǎng)絡(luò)理論進(jìn)行分析計算其內(nèi)聚度; 步驟B、對類中的方法與方法之間網(wǎng)絡(luò),利用復(fù)雜網(wǎng)絡(luò)理論進(jìn)行分析計算其內(nèi)聚度; 步驟C、對類中的方法與屬性之間網(wǎng)絡(luò),利用復(fù)雜網(wǎng)絡(luò)理論進(jìn)行分析計算其內(nèi)聚度; 步驟D、根據(jù)步驟A步驟B和步驟C得到的值設(shè)定各個權(quán)重計算類的內(nèi)聚度。
2.如權(quán)利要求1所述面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,步驟A中利用復(fù)雜網(wǎng)絡(luò)的小世界模型和結(jié)構(gòu)熵理論,即集群系數(shù)越大、平均距離越小,并且度分布越均勻,則內(nèi)聚度越大;網(wǎng)絡(luò)中的平均最短路徑長度L定義為任何兩個節(jié)點(diǎn)之間距離的平均值,即
3.如權(quán)利要求2所述面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,步驟B采用與步驟A同樣的方法計算類中方法與方法之間網(wǎng)絡(luò)的內(nèi)聚度。
4.如權(quán)利要求2所述面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,步驟C采用與步驟A同樣的方法計算類中方法與屬性之間網(wǎng)絡(luò)的內(nèi)聚度。
5.如權(quán)利要求2所述面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,類的屬性間的內(nèi)聚度主要是指類中屬性之間關(guān)系的密切程度;為了度量這種關(guān)系,對類中的每個屬性AiQ = 1,2,...,m),引入一個集合AID來記錄屬性Ai所依賴的其它屬性的集合=AID(Ai)=(Aj I Ai 和 Aj 有依賴關(guān)系,且 Ai 關(guān) AjI ;AID (Ai) = {A」| Ai e A,if < Ai, Aj > e GAA}

m
令 Ρ(4) = μ/ζχ4)|,,Σ|/?/β(Λ)|


k=.l 式中,IAID(Ai) I表示集合AID (Ai)中元素的個數(shù); 則類C的屬性間結(jié)構(gòu)熵為:
6.如權(quán)利要求1所述面向?qū)ο筌浖到y(tǒng)類的內(nèi)聚度度量方法,其特征在于,步驟D中具體使用步驟A、步驟B和步驟C計算的三個網(wǎng)絡(luò)的內(nèi)聚度,分別設(shè)定權(quán)重;從類的內(nèi)聚度的性質(zhì)可以知道,類C的某一方面的內(nèi)聚度都不能代表類的內(nèi)聚度;類(:的內(nèi)聚度是由類的屬性間的內(nèi)聚度Cohesion (A_A)、方法間的內(nèi)聚度Cohesion (M_M)和方法與屬性的內(nèi)聚度Cohesion(M_A)共同決定,因此,可以定義類C的內(nèi)聚度Cohesion(C)為:
Cohesion (C) = a Cohesion(A_A) + β Cohesion(M_M) + y Cohesion(M_A) 式中,a, β和Y分別代表了類的屬性間的內(nèi)聚度Cohesion(A_A)、方法間的內(nèi)聚度Cohesion(M_M)和方法與屬性的內(nèi)聚度Cohesion(M_A)在類C的內(nèi)聚度中的權(quán)重,且α +β + y = I。
【文檔編號】G06F9/44GK103793230SQ201410054093
【公開日】2014年5月14日 申請日期:2014年2月18日 優(yōu)先權(quán)日:2014年2月18日
【發(fā)明者】顧愛華, 周曉峰 申請人:河海大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
电白县| 宜都市| 旺苍县| 兴山县| 桐城市| 山东省| 沙田区| 健康| 长宁区| 定安县| 天台县| 三亚市| 罗定市| 师宗县| 蒲江县| 永安市| 绥棱县| 嘉兴市| 茶陵县| 商河县| 尖扎县| 彭泽县| 德昌县| 基隆市| 克东县| 黄浦区| 色达县| 永平县| 庆安县| 沽源县| 衡水市| 永宁县| 巩留县| 荆门市| 抚远县| 湘潭市| 鹤庆县| 定州市| 彭阳县| 平罗县| 嘉善县|