APP下载

基于粗粒度程序切片的软件度量

2011-08-01朱海林

关键词:程序方法

杜 林,朱海林

(齐鲁师范学院计算机系,山东 济南 250014)

内聚性反映了一个模块内部各元素彼此结合的紧密程度,耦合性反映了模块间互相连接的紧密程度,优秀的软件结构应该具有高内聚、低耦合的特点。为了客观地度量面向对象程序,研究人员设计了许多度量准则和方法来量化内聚性和耦合性,通过简单的统计方法或基于信息流的方法来度量耦合,如基本度量、CK度量和AoKi度量等。CHIDAMBER提出了LCOM,即内聚缺乏度,基于方法的相似性,利用相似方法与非相似方法的差异计算内聚度。CHAE等引入了胶水的方法度量类内聚度。笔者以面向对象程序为研究对象,提出了基于粗粒度程序切片技术的度量类内聚性和模块耦合性的方法。

程序切片技术是一种根据控制流分析和数据流分析而引入的系统理解方法,针对一个切片标准,提取程序中影响关注点变量值的所有语句,通过计算源程序中关注点的切片来达到对整个程序的分析和理解。程序切片存在粒度问题,不同粒度的程序切片的作用是不同的。细粒度切片到达语句级,可用于程序调试,程序测试等;粗粒度切片到达方法级,可用于提取程序结构、软件的构件和构架等,从而对逆向工程、软件理解和维护等起到一定的辅助作用。为了更好地反映面向对象语言的特性,完善面向对象程序的语义,降低利用系统依赖图计算切片的复杂度,笔者扩展了粗粒度切片的含义,基于粗粒度程序切片技术进行面向对象程序的度量,所提出的度量方法对模块耦合度和类内聚度进行了量化,度量结果符合BRIAND提出的优秀度量方法具有的特点。……

登录APP查看全文

猜你喜欢

程序方法
学习方法
试论我国未决羁押程序的立法完善
失能的信仰——走向衰亡的民事诉讼程序
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
用对方法才能瘦
创卫暗访程序有待改进
四大方法 教你不再“坐以待病”!
赚钱方法
捕鱼