计算机科学 ›› 2019, Vol. 46 ›› Issue (2): 166-170.doi: 10.11896/j.issn.1002-137X.2019.02.026
潘浩1, 郑巍1,2, 张紫枫1, 芦超群1
PAN Hao1, ZHENG Wei1,2, ZHANG Zi-feng1, LU Chao-qun1
摘要: 随着互联网技术的发展,软件系统的规模也在日益扩大,软件功能的变化使得软件网络的结构呈现差异化。软件网络的分形结构体现出软件网络整体和局部对象类之间依赖调用的自相似性,可以从代码层面上对软件系统结构以及功能进行分析。文中对软件网络分形结构特征进行研究:首先,综合类之间的依赖关系,对软件网络进行加权;然后利用基于网络中心性的盒子算法计算加权软件网络结构的分形维度,以分析其分形结构特征;最后,利用上述方法对spring和struts2这两款具有代表性的java软件框架进行分析。实验表明,这两款软件以及它们的子模块都具有分形结构特征,软件网络的分形维数随着模块功能复杂程度的增加而增加,功能综合性较强的软件网络分形维数要大于功能专一的软件网络;并且在版本演化过程中,软件网络的分形维数随着软件功能的丰富也呈现上升的趋势。
中图分类号:
[1]WILFREDO T.Software Fault Tolerance:A Tutorial[J].Pomales,2000,1(2):220-232. [2]BRIAND L C,DALY J W,WÜST J.A Unified Framework for Cohesion Measurement in Object-Oriented Systems[J].IEEE Transactions on Software Engineering,2002,25(1):91-121. [3]MYERS C R.Software systems as complex networks:structure,function,and evolvability of software collaboration graphs[J].Physical Review E Statistical Nonlinear & Soft Matter Physics,2003,68(2):046116. [4]DONG Y,QI G N.The scale-free feature and evolving model of largescale software systems[J].Acta Physica Sinica,2006,55(8):3799-3804.(in Chinese) 闫栋,祁国宁.大规模软件系统的无标度特性与演化模型[J].物理学报,2006,55(8):3799-3804. [5]HAN M C,LI D Y,LIU C Y.Networked characteristics in software and its contribution to software quality[J].Computer Engineering & Applications,2006,42(20):29-32. [6]MA Y T,HE K Q,LI B,et al.Empirical Study on the Characteristics of Complex Networks in Networked Software[J].Journal of Software,2011,22(3):381-407. [7]GAO Y,PENG Y,XIE F,et al.Software Metrics for complex networks[J].Journal of Tsinghua University(Science and Technology),2012,52(10):1474-1481.(in Chinese) 高洋,彭勇,谢丰,等.基于复杂网络的软件结构度量[J].清华大学学报(自然科学版),2012,52(10):1474-1481. [8]CHONG C Y,LEE S P.Analyzing maintainability and reliability of object-oriented software using weighted complex network[J].Journal of Systems & Software,2015,110(C):28-53. [9]WANG B Y,LV J H.Software Networks Nodes Impact Analysis of Complext Software Systems[J].Journal of Software,2013,24(12):2814-2829.(in Chinese) 汪北阳,吕金虎.复杂软件系统的软件网络结点影响分析[J].软件学报,2013,24(12):2814-2829. [10]KUANG L,ZHENG B J,LI D Y,et al.A fractal and scale-free model of complex networks with hub attraction behaviors[J].Science China Information Sciences,2015,58(1):1-10. [11]CONCAS G,LOCCI M F,MARCHESI M,et al.Fractal dimension in software networks[J].Europhysics Letters,2006,76(6):1221-1227. [12]CONCAS G,MARCHESI M,MURGIA A,et al.Assessing traditional and new metrics for object-oriented systems[C]∥Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics.ACM,2010:24-31. [13]TURNU I,CONCAS G,MARCHESI M,et al.The fractal dimension of software networks as a global quality metric[J].Information Sciences,2013,245(10):290-303. [14]CHIDAMBER S R,KEMERER C F.A metrics suite for object oriented design[J].IEEE Transactions on SoftwareEnginee-ring,1994,20(11):197-211. |
[1] | 张久杰, 陈超, 聂宏轩, 夏玉芹, 张丽萍, 马占飞. 基于类粒度的克隆代码群稳定性实证研究 Empirical Study on Stability of Clone Code Sets Based on Class Granularity 计算机科学, 2021, 48(5): 75-85. https://doi.org/10.11896/jsjkx.200900062 |
[2] | 刘胜久, 李天瑞, 谢鹏, 刘佳. 带权图的多重分形度量 Measure for Multi-fractals of Weighted Graphs 计算机科学, 2021, 48(3): 136-143. https://doi.org/10.11896/jsjkx.200700159 |
[3] | 王继文, 吴毅坚, 彭鑫. 基于演化和语义特征的上帝类检测方法 Approach of God Class Detection Based on Evolutionary and Semantic Features 计算机科学, 2021, 48(12): 59-66. https://doi.org/10.11896/jsjkx.210100077 |
[4] | 张健雄, 宋坤, 何鹏, 李兵. 基于图神经网络的软件系统中关键类的识别 Identification of Key Classes in Software Systems Based on Graph Neural Networks 计算机科学, 2021, 48(12): 149-158. https://doi.org/10.11896/jsjkx.210100200 |
[5] | 何鹏, 喻绿君. 面向群体协作开发的开源软件峭壁分析 Analysis of Open Source Software Cliff Walls for Group Collaborative Development 计算机科学, 2020, 47(6): 51-58. https://doi.org/10.11896/jsjkx.190300140 |
[6] | 张静宣, 江贺. 代码标识符归一化研究现状及发展趋势 Research Status and Development Trend of Identifier Normalization 计算机科学, 2020, 47(3): 1-4. https://doi.org/10.11896/jsjkx.200200009 |
[7] | 钟林辉, 扶丽娟, 叶海涛, 齐杰, 徐静. 软件演化历史的逆向工程生成方法研究 Study on Reverse Engineering Generation Method of Software Evolution History 计算机科学, 2020, 47(11A): 549-556. https://doi.org/10.11896/jsjkx.200200067 |
[8] | 张晶晶, 张爱华, 纪海峰. 基于小波与分形相结合的图像压缩编码 Image Compression Encoding Based on Wavelet Transform and Fractal 计算机科学, 2019, 46(8): 310-314. https://doi.org/10.11896/j.issn.1002-137X.2019.08.051 |
[9] | 刘胜久, 李天瑞, 刘小伟. 网络维数:一种度量复杂网络的新方法 Network Dimension:A New Measure for Complex Networks 计算机科学, 2019, 46(1): 51-56. https://doi.org/10.11896/j.issn.1002-137X.2019.01.008 |
[10] | 唐倩文, 陈良育. 基于复杂网络理论的Java开源系统演化分析 Analysis of Java Open Source System Evolution Based on Complex Network Theory 计算机科学, 2018, 45(8): 166-173. https://doi.org/10.11896/j.issn.1002-137X.2018.08.030 |
[11] | 李佳星,赵书良,安磊,李长镜. 基于分形理论的多尺度分类尺度上推算法 Scaling-up Algorithm of Multi-scale Classification Based on Fractal Theory 计算机科学, 2018, 45(6A): 453-459. |
[12] | 刘甜甜,包芳勋,张云峰,范清兰,杨晓梅. 有理分形曲面造型及其在图像超分辨中的应用 Rational Fractal Surface Modeling and Its Application in Image Super-resolution 计算机科学, 2018, 45(3): 35-45. https://doi.org/10.11896/j.issn.1002-137X.2018.03.006 |
[13] | 郑交交, 李彤, 林英, 谢仲文, 王晓芳, 成蕾, 刘妙. 构件系统演化一致性的判定方法 Judgement Method of Evolution Consistency of Component System 计算机科学, 2018, 45(10): 189-195. https://doi.org/10.11896/j.issn.1002-137X.2018.10.035 |
[14] | 赵会群,黄榆涵. 软件模型代数性质的程序化验证 Program Verification of Software Model’s Algebraic Properties 计算机科学, 2017, 44(11): 240-245. https://doi.org/10.11896/j.issn.1002-137X.2017.11.036 |
[15] | 李文莉,高宏伟,冀大雄,李岩. 基于遗传算法的海底沉积物纹理特征优化方法 Optimization Method of Seabed Sediment Texture Feature Based on Genetic Algorithm 计算机科学, 2016, 43(Z6): 130-133. https://doi.org/10.11896/j.issn.1002-137X.2016.6A.031 |
|