面向对象指标分布研究
1. 相关工作概述
软件系统中幂律分布的普遍性已在多项研究中得到积极探索。不同研究聚焦于软件系统不同层面的幂律分布,如Louridas等人深入研究了软件系统在不同抽象层次上幂律的普遍性,发现幂律不仅存在于类和函数层面,还存在于不同系统和语言的包与库的分布中。
部分研究通过不同方法测量软件系统的程序复杂性,如使用扇入和扇出,并通过线性回归拟合幂律分布,以 $R^2$ 作为拟合优度的基准。Baxter等人研究了约56个Java程序的关键结构属性,使用加权最小二乘法拟合幂律,发现大多数属性遵循幂律,但也有少数遵循对数正态或拉伸指数分布。
Concas等人聚焦于Smalltalk系统的CK度量属性,使用最大似然估计验证数据是否遵循对数正态或帕累托分布,发现多数研究指标遵循幂律分布,但部分指标遵循对数正态分布。Shatnawi等人使用最大似然估计将CK指标拟合到幂律分布,并提出基于峰度和偏度的初始统计测试。Herraiz等人基于Qualitas语料库,测量Java项目中每个文件的CK度量套件值,得出不同指标的高值范围遵循幂律分布,其余范围遵循对数正态分布的结论。
在软件系统研究中,除了幂律分布,还考虑了其他特定分布。Grbac等人在研究软件系统故障的概率分布时考虑了威布尔分布和帕累托分布等。Adamic等人通过将幂律转换为排名大小分布,对帕累托80 - 20原则进行了分析推导。
多项研究还尝试探索各种分布的生成模型。Mitzenmacher发现对数正态和幂律分布自然相关,对数正态分布可能是幂律分布的替代方案。Concas等人尝试解释可能导致统计分布的生成过程,考虑了随机独立增量导致正态分布、随机比例增量导致对数正态分布以及优先连
超级会员免费看
订阅专栏 解锁全文
2352

被折叠的 条评论
为什么被折叠?



