[发明专利]一种面向对象软件系统类间耦合性度量方法有效
申请号: | 201410054230.6 | 申请日: | 2014-02-18 |
公开(公告)号: | CN103761336B | 公开(公告)日: | 2017-02-22 |
发明(设计)人: | 顾爱华;周晓峰 | 申请(专利权)人: | 河海大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京苏高专利商标事务所(普通合伙)32204 | 代理人: | 李玉平 |
地址: | 210098 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种基于复杂网络的面向对象软件系统类间耦合性的度量方法。在面向对象的软件系统中,耦合性是软件中各个类之间相互关联程度的一种度量。为了能够较好地对软件系统中类之间的耦合性进行度量,首先对面向对象的软件系统进行形式化表示,利用波及度对软件系统中的类之间的耦合关系进行分析类在系统中的影响力;然后将劳伦茨曲线与基尼系数的概念并推广至复杂网络中,分析软件网络的异质性;最后提出一种基于复杂网络的软件系统耦合度的度量方法并以抽象实例进行分析。 | ||
搜索关键词: | 一种 面向 对象 软件 系统 耦合 度量 方法 | ||
【主权项】:
一种面向对象软件系统类间耦合性度量方法,其特征在于,包括以下步骤:步骤A、对基于面向对象的软件系统进行形式化表示,利用波及度对软件系统中的类之间的耦合关系进行分析类在系统中的影响力;步骤B、引用劳伦茨曲线与基尼系数的概念,并将其并推广至复杂网络中,分析软件网络的异质性;步骤C、根据步骤A和步骤B,计算软件系统的耦合性;一个软件系统S=(C1,C2,…,CN),其中Ci表示面向对象系统的类,i=1,2,…,N;对每一个类Ci=(Ai,Mi),其中为类Ci的属性,为类Ci的方法集;则类与类之间的属性集与方法集存在着如下2种耦合关系:(1)不同类之间方法与属性的耦合关系如果类Ci中有方法调用类Cj中属性则方法与属性之间的耦合关系表示为其中kj=1,2,…mj,li=1,2,…ni;(2)不同类之间方法与方法的耦合关系如果类Ci中有方法调用类Cj中方法则方法与方法之间的耦合关系表示为其中li=1,2,…ni,lj=1,2,…nj;一个软件系统网络S=(C1,C2,…,CN),类Ci和类Cj为一个软件系统中任意两个类:Ci=(Ai,Mi),其中为类Ci的属性集,并且ki=1,2,...,mi,为类Ci的方法集,并且li=1,2,...,ni;Cj=(Aj,Mj),其中为类Cj的属性集,并且kj=1,2,...,mj;为类Cj的方法集,并且lj=1,2,...,nj;对类Ci的每个属性ki=1,2,...,mi,引入一个集合MAID来记录与属性Ai有耦合关系的类Cj中方法的集合:MAID(Ai)={Mjlj|Aiki-Mjlj}---(1)]]>其中ki=1,2,…mi,lj=1,2,…nj;对类Cj的每个属性引入一个集合MAID来记录与属性Aj有耦合关系的类Ci中方法的集合:MAID(Aj)={Mili|Ajkj-Mili}---(2)]]>其中kj=1,2,…mj,li=1,2,…ni;对类Ci的每个方法li=1,2,...,ni,引入一个集合MMID来记录与方法Mi有耦合关系的类Cj中方法的集合:MMID(Mi)=MMID(Mj)={Mjlj|Miki-Mjlj}={Mili|Mjkj-Mili}---(3)]]>其中li=1,2,…ni,lj=1,2,…nj;类Ci和类Cj之间的耦合程度为:ID=|MAID(Ai)|/mi+|MAID(Aj)|/mj+|MMID(Mi)|/ni (4)其中,|MAID(Ai)|,|MAID(Aj)|、MMID(Mi)|分别表示集合MAID(Ai)、MAID(Aj)和MMID(Mi)中元素的个数。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410054230.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种固封极柱装配及检测线控制系统
- 下一篇:一种磁动力传送清污刷的高压过滤器