大规模软件可信性度量分析原理及其方法的研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
软件是人类的智慧通过计算机来表达的一种有效手段,其产品质量不像一般的工业产品那样有严格的检测标准,因而难以得到有效的控制和保障。当软件系统在我们的生活中发挥着越来越大的作用的同时,软件的规模和复杂程度随着其功能的日益强大而剧增,软件系统中大量的底层元素及它们之间错综复杂的交互关系已逐渐超出了开发人员的理解能力,软件开发常处于失控状态,致使系统难以维护。如何理解和量化软件日益增长的复杂性,保证软件正确可靠的运行,是软件度量学要解决的关键问题,也是软件工程面临的一个极大的挑战。
     生理学家丹特-恰尔夫认为:“人类的大脑结构是一个复杂网络,表现出非常强烈的小世界特征,能够形成最有效的连结。”作为人类大脑思维活动的产物,软件网络成为大脑结构的一个分形,其内部结构也表现出了明显的复杂网络特征。通过对系统中元素间纷繁复杂的交互关系的描述,软件网络有助于从全局的角度了解软件结构的基本性质和规律,进而反映出结构特征对系统质量的影响。基于这种思想,本文对软件的内部结构进行抽象,在有向加权的软件网络模型上对影响软件可信属性的结构特征进行研究,从而对相关的可信属性进行分析和度量。
     本文首先分析了传统软件度量方法在大规模软件度量应用上的不足,结合软件结构特征对软件质量的影响,提出了一个多维度的软件度量方法体系,从软件网络的宏观拓扑、微观构成及基础结构三个角度分别对相应的结构特征进行分析,阐述了这些结构特征在软件结构的复杂性、稳定性及可靠性等方面的影响作用,并根据分析结果确定各维度的基本度量参数和度量手段。
     接下来,本文依次从度量体系的三个维度上对软件可信性度量分析的原理及相应的方法进行了详细的论述。首先,在软件的宏观拓扑结构上,对大量样本软件的基本宏观拓扑特征值进行了统计分析,并采用K-S检验方法对其分布检验,在此基础上,提出了基于特征值偏差率的软件度量方法,根据特征值对软件的结构复杂性、执行效率和有序性的影响,并通过与相同规模软件的平均水平进行比较,对软件的相对规模质量特征进行度量。另一方面,针对软件的构造方式与特点,提出了一种基于构造特征的结构度量方法,通过对节点辐射度和辐射圈比等概念的定性描述和定量分析,反映出软件系统的构造复杂性及其在结构上存在的设计缺陷,为软件开发人员提供理论指导和数据参考,以降低软件测试和维护的代价。
     其次,本文从软件的微观构成角度对软件的结构稳定性进行了分析和度量。利用设计模式在面向对象软件中作为典型的微观结构对整个软件网络的影响作用,提出了一种基于设计模式的软件结构稳定性度量方法,从微观结构的稳定性入手,对系统的整体结构稳定性进行分析。论文首先通过对23种设计模式在大量样本软件中应用情况的统计,总结出设计模式的应用规律,然后利用Lyapunov方法对由设计模式构成的微观结构稳定性进行分析,结果发现所有设计模式都具有稳定的结构特征。进一步地,结合软件系统中对设计模式的应用情况,提出模式覆盖率的概念,根据设计模式的微观结构对软件整体结构的影响,反映软件的整体结构稳定性。
     再次,本文提出了面向对象软件的基础结构——软件的核结构的概念,由于基础结构的可靠性对系统的整体可靠性起到了绝对的影响作用,因此,通过分析软核结构中节点的度分布情况,并结合继承关系的使用对系统可靠性的影响,对软核结构的可靠性进行了分析和度量。基于继承关系的软核结构提取过程反映了系统中继承树的分布及各类节点的继承深度情况,进一步根据类节点的入度,定义了节点的继承依赖属性,用于对系统中对继承深度较深的节点产生过度依赖的结构缺陷进行检测。
     最后,在上述研究的基础上,本文设计并实现了一个软件可信性度量分析平台。通过该度量平台,可以直接对开源软件的结构进行分析,从三个维度对软件的可信属性进行度量,并通过可视化界面直观的了解软件的内在组织结构及其相关的结构特征,有助于理解和掌握大规模软件的结构的复杂性及其对软件质量的影响,为软件开发和维护提供指导。
As one of the effective means of expressing human intelligence, software is different from the general industry product whose quality can be constrained by strict testing standards. So, it is hardly to control and ensure the quality of a software product. When software systems play more and more important role in our life, there is a leap of the scale and complexity of them with the increasing function demand. As for the software developers, to grasp the whole internal structure consisted of quantities of component elements and their relationships between each other is too difficult to control the developing course, which lead to high cost for maintenance cost. How to master and control the increasing complexity of software system and ensure its dependability is the key problem for software metric to resolve and is also a great challenge for software engineering.
     Donte Chalf, a physiologist of Northwestern University in USA, believes that human cerebral structure is a complex network, which present strong small-world characteristic, and form effective connection. As product of human intelligence, software network is a fractal of cerebral structure, and its internal structure also present significant characteristics of complex network. The characters and regularities of internal structure can be understood from view of the whole system by describing the complex composition of software with network model. In this dissertation, a directed and weighted network model is established by abstracting the software internal structure. Based on this model, the structural characteristics which have effect on software dependability are discussed and the further research on dependable properties is carried out.
     Firstly, after analyzing the lacks of traditional software metrics applied for large-scale systems, a multi-dimension method system on software metric is presented according to the structural characteristics'effect on the quality of software. In this system, metrics for the structural complexity, stability and reliability of a software system are discussed separately in three dimensions which are macro-topology, micro-composition and foundation structure. According to the analysis on structural characteristics in these three dimensions, the metric parameters and methods for quality of software are determined.
     And then, the metric methodology of dependability of software system based on three dimensions of software structure is discussed in detail in the following parts of this dissertation. On the dimension of micro-topology, the statistics of main eigenvalues in a large number of sample software systems and their distribution test by K-S method are analyzed in the first step. According to the eigenvalues'effect on the structural complexity, executing efficiency and orderliness, a metric method based on deviation of eigenvalues is proposed, by which the quality characteristic relative scale of software system can be measured. On the other hand, according to the mode and characteristics of the system composition, a metric method based on composition characteristics is proposed. The definitions of radiation degree and radio of radiation cycle play a role in metrics for complexity of system composition and structural defects. The result of this metrics will provide guidance for software developer during testing or maintaining the system.
     Secondly, the structural stability of software system is analyzed and measured on the dimension of micro-composition. Because of the reusability of design patterns in object-oriented software system, the structure of design patterns is studied as typical micro structure which have effect on the whole software network. So a metric method for structural stability based on design patterns is presented in this dissertation. Using Lyapunov method, the stability of local structure abstracted from design patterns'composition is measured, and the result shows that all of the patterns have high structural stability. According to the application of23design patterns in sample software systems, coverage of design patterns is defined as the main metric parameter for the stability of whole structure, which reflects the effect on the stability of software system by design patterns.
     Thirdly, the definition of software-core structure, which presents the foundation structure of software network, is proposed. Because of the critical effect on the reliability of software system, the reliability of software-core structure deserve for research. The distribution of degree in software-core structure is analyzed in order to determine the reliability of it according to the effect of inheritance on dependability of system. During the course of extracting software-core structure from software network, the distribution of inheritance trees and the inheritance depth of each node in software network can be gathered. According to the relationship between inheritance depth and degree, inheritance dependency of class node is defined to detect the structural defects in design which have deep inheritance and large in-degree at the meantime.
     Eventually, based on the multi-dimension metric system discussed in this dissertation, a platform of metric and analysis on software dependability is designed and implemented. Using this platform, the internal structure of open source software systems can be analyzed directly and the dependability characteristics of software are measured on three dimensions. Further more, the platform provides visual internal structure of software. It is helpful to master the structural complexity and its effect on system quality, which presents guiding significance to development or maintenance of software system.
引文
1. 软件危机[EB/OL], http://www.miiceic.org.cn/phrase/200603112323405.html.
    2. Shari Lawrence Pfleeger,Joanne M. Atlee,杨卫东(译).软件工程[M],北京:人民邮电出版社,2007,3-19.
    3.张海藩.软件工程导论(第三版)[M],北京:清华大学出版社,1998,5-25.
    4. Software Errors Cost U.S. Economy $59.5 Billion Annually [EB/OL], http://ww w.nist.gov/public_affairs/releases/n02-10.htm.
    5. Robert B, Elaine W,Thomas O. Predicting the Location and Number of Faults in Large Software Systems[J], IEEE Transactions on Software Engineering Archive,2005,31(4): 340-355.
    6. Arun S, Rajesh K, Grover P S. Estimation of Quality for Software Components:an empirical approach[J], ACM SIGSOFT Software Engineering Notes,2008,33(6):1-10.
    7. Reith M, Niu J, Winsborough W H. Engineering trusted management into software models[C]. In Proceedings of the International Workshop on Modeling in Software Engineering. Washington, IEEE CS Press,2007,9-15.
    8. Littlewood B, Wright D. The use of multi-legged arguments to increase confidence in safety claims for software-based systems:a study based on a BBN of an idealized example[J], IEEE Transactions on Software Engineering,2007,33(5):347-365.
    9. Musa J D, Iannino A, Okumoto K. Software Reliability: Measurement, Prediction, Application, Professional Edition:Software Engineering Series[M], New York: McGraw-Hill Press,1990,1-58.
    10. Littlewood B, Strigani L. Software reliability and dependability: a roadmap[C]. In Proceedings of the Conference on the Future of Software Engineering, New York:ACM Press,2000,175-288.
    11. Castro M, Rodrigues R, Liskov B. BASE:using abstraction to improve fault tolerance[J], ACM Transactions on Computer System,2003,21(3):236-269.
    12. Triantafyllos G, Vassiliadis S, Kobrosly W. On the prediction of computer implementation faults via static error prediction models[J], Journal of System Software,1995,28(2): 129-142.
    13. Gashi I, Popov P, Strigini S. Fault tolerance via diversity for Off-The-Shelf products:a study with SQL database servers[J], IEEE Transactions on Dependable and Secure Computing,2007,4(4):280-294.
    14. Banerjee S, Mattmann C A, Medvidovic N, et al. Leveraging architectural models to inject trust into software systems[C], In Proceedings of the Workshop on Software Engineering for Secure Systems-Building Trustworthy Applications, New York: ACM Press,2005.1-7.
    15. Kurzyniec D, sunderam V, Migliardi M. On the viability of component frameworks for high performance distributed computing: a case study[C]. In Proceeding of the 11th IEEE International Symposium on High Performance Distributed Computing, Edinburgh: IEEE Press,2002,275-283.
    16. Hasselbring W, Ruessner R. Toward Trustworthy Software Systems[J], Computing,2006, 39(4):91-92.
    17. Kirovski D, Drinic M, Protkonjak M. Enabling trusted software integrity[J]. Operating System Review,2003,36(5):108-120.
    18. Barry B, Sunita C, June V, et al. Companion of the 30th International Conference on Software Engineering[C], In Proceedings of the 6th Workshop on Software Quality,2008, 1035-1036.
    19. Nachiappan N, Brendan M, Victor B. The Influence of Organizational Structure on Software Quality: An Empirical Case Study[C], In Proceedings of the 30th International Conference on Software Engineering,2008,521-530.
    20. Klimanov V, Yermakov A. Complex Network Cluster Reliability Evolution[C], In Proceedings of the 3rd International Conference on Dependability of Computer Systems, 2008,189-194.
    21. Lian W, Kirk D, Dromey R.G. Software Systems as Complex Networks[C], In Proceedings of the 6th IEEE International Conference on Cognitive Informatics,2007, 106-115.
    22. Victor B, Lionel B, Walcelio M. A Validation of Object-Oriented Design Metrics as Quality Indicators[J], IEEE Transactions on Software Engineering,1996,22(10): 751-761.
    23. Kpodjedo S, Ricca F, Antoniol G, et al. Evolution and Search Based Metrics to Improve Defects Prediction[C], In Proceedings of thelst International Symposium on Search Based Software Engineering, Windsor, UK,2009,23-32.
    24. Selvarani R, Nair T R G, Prasad V K. Estimation of Defect Proneness Using Design Complexity Measurements in Object-Oriented Software [C], In Proceedings of International Conference on Signal Processing Systems, Singapore,2009,766-770.
    25. Chen Jing, Liu Xuyan. Software Maintainability Metrics Based on the Index System and Fuzzy Method[C], In Proceedings of the 1st International Conference on Information Science and Engineering, Nanjing, China,2009,5117-5120.
    26. Alsultanny Y A, Wohaishi A M. Requirements of Software Quality Assurance Model[C], In Proceedings of the 2nd International conference on Environmental and Computer Science, Dubai,2009,19-23.
    27. Jimin Hwa, Sukhee Lee, Yong Rae Kwon. Hierarchical Understandability Assessment Model for Large-Scale OO System[C], In Proceedings of Asia-Pacific Software Engineering Conference, Penang, Malaysia,2009,11-18.
    28. Panchenko O, Mueller S H, Zeier A. Measuring the quality of interfaces using source code entropy[C]. In Proceedings of the 16th International Conference on Industrial Engineering and Engineering Management, Beijing, China,2009,1108-1111.
    29. Joon-Sang Lee, Oksoon Jeong, Jewhi Ryu. Performance Evaluation Framework for Software Quality Engineering[C], In Proceedings of the 9th International Conference on Quality Software, Jeju, Korea,2009,438-443.
    30. Umarji M, Seaman C. Gauging acceptance of software metrics:Comparing perspectives of managers and developers[C], In Proceedings of the 3rd International Symposium on Empirical Software Engineering and Measurement, Lake Buena Vista, FL,2009, 236-247.
    31. Zeman J, Tanuska P, Kebisek M. The Utilization of Metrics Usability to Evaluate the Software Quality[C], In Proceedings of the International Conference on Computer Technology and Development, Kota Kinabalu, Malaysia,2009,243-246.
    32. Lajios, G. Software Metrics Suites for Project Landscapes[C], In Proceedings of the 13th European Conference on Software Maintenance and Reengineering, Kaiserslautern, Germany,2009,317-318.
    33. Wei Peng, Lan Yao, Qiang Miao. An approach of software quality prediction based on relationship analysis and prediction model[C], In Proceedings of the 8th International Conference on Reliability, Maintainability and Safety, Chengdu, China,2009,713-717.
    34. Yuming Zhou, Leung H, Baowen Xu. Examining the Potentially Confounding Effect of Class Size on the Associations between Object-Oriented Metrics and Change-Proneness [J], IEEE Transactions on Software Engineering,2009,35(5):607-623.
    35. Gousios G, Spinellis D. Alitheia Core:An extensible software quality monitoring platform[C], In Proceedings of the 31st International Conference on Software Engineering, Vancouver, BC,2009,579-582.
    36. Beckhaus A, Karg L M, Hanselmann G. Applicability of Software Reliability Growth Modeling in the Quality Assurance Phase of a Large Business Software Vendor[C], In Proceedings of the 33rd Annual IEEE International Computer Software and Applications Conference, Seattle, WA,2009,209-215.
    37. Ruhroth T, Voigt H, Wehrheim H. Measure, Diagnose, Refactor: A Formal Quality Cycle for Software Models[C], In Proceedings of the 35th Euromicro Conference on Software Engineering and Advanced Applications, Patras, Greece,2009,360-367.
    38. Gayatri N, Nickolas S, Reddy A V, et al. Performance Analysis of Datamining Algorithms for Software Quality Prediction[C], In Proceedings of International Conference on Advances in Recent Technologies in Communication and Computing, Kottayam, Kerala, 2009,393-395.
    39. Cong Jin, Shu-Wei Jin, Jun-Min Ye, Qing-Guo Zhang. Quality prediction model of object-oriented software system using computational intelligence[C], In Proceedings of the 2nd International Conference on Power Electronics and Intelligent Transportation System, Shenzhen, China,2009,120-123.
    40.郑志明,马世龙,李未,等.软件可信性动力学特征及其演化复杂性[J],中国科学,2009,39(9):964-950.
    41.石莉,余本功,杨颖,等.基于FAHP和FMCDM构建软件可信性评估模型[J],计算 机应用研究,2010,27(3):933-937.
    42.郭树行,兰雨晴,金茂忠.基于目标的软件可信性需求规约方法研究[J],计算机工程,2007,33(11):37-41.
    43.杨静.软件可信性评估工具的研究与实现[D],兰州:西北大学,2009.
    44. C V Ramamoorthy, W-T Tsai, T Yamaura, et al.. Metrics Guided Methodology[C], In Proceedings of the 9th Annual International Computer Software and Applications Conference,1985,111-120.
    45. Norman E. Fenton, Shari Laawrence Pfleeger. Software Metrics A Rigorous and practical Approach (Second Edition)[M]. Thomson,2003,1-17.
    46. McCabe T. A software complexity measure[J], IEEE Transactions on Software Engineering,1976,2(4):308-320.
    47. Halstead MH. Elements of Software Science [M], Amsterdam:Elsevier Press,1977, 28-154.
    48. Henry S M, Kafura D. Software Structure Metrics Based on Information Flow[J], IEEE Transactions on Software Engineering,1981,7(7):510-518.
    49. Chen J Y, Lu J F. New metric for object-oriented design [J], Information and Software Technology,1993,35(4):232-240.
    50. Chidamber S R, Kemerer C F. A metrics suite for object oriented design [J], IEEE Transactions on Software Engineering,1994,20(6):476-493.
    51. Brito F, Abreu E. The MOOD metric set[C], In:Proceedings of the ECOOP'95 Workshop on Metrics, Berlin, Germany,1995.
    52. Bieman J M, Kang B K. Cohesion and reuse in an object-oriented system[C],In Proceedings of the 1995 Symposium on Software reusability,1995,259-262.
    53. Manso M E,Genero M, Piattini M. No-redundant Metrics for UML Class Diagram Structural Complexity[C], In Proceedings of the 15th International Conference on Advanced Information Systems Engineering,2003,127-142.
    54. Vasa R, Schneider J G, Woodward C, et al. Detecting Structural Changes in Object Oriented Software Systems[C], In Proceedings of the 2005 International Symposium on Empirical Software Engineering,2005,479-486.
    55. Vasa R, Schneider J-G, Nierstrasz O. The inevitable stability of software change [C]. In Proceedings of the International Conference on Software Maintenance, France,2007, 4-13.
    56. Girolamo A, Newman L I, Rao R. the structure and behavior of class networks in object-oriented software design [EB/OL]. www.eecs.umich.edu/-leenewm/ documents /classnetworks.pdf.2005.
    57. Liu J, He K Q, Ma Y T, et al. Scale Free in Software Metrics[C], In Proceedings of the 30th Annual International Computer Software and Applications Conference (Volume 1), 2006,229-235.
    58. Liu J, He K Q, Peng R, et al. A Study on the Weight and Topology Correlation of Object Oriented Software Coupling Network [C], In Proceedings of the 1st International Conference on Complex Systems and Applications,2006,955-959.
    59. Ma Y T, He K Q, Du D H, et al. A Complexity Metrics Set for Large-scale Object-Oriented Software Systems[C], In Proceedings of the 6th International Conference on Computer and Information Technology,2005,189.
    60. Jenkins S, Kirk S R. Software Architecture Graphs as Complex Networks:A Novel Partitioning Scheme to Measure Stability and Evolution [J], Information Sciences,2007, 177(12):2587-2601.
    61. Liu J, Lu J H, He K Q, et al. Characterizing the Structure Quality of General Complex Software Networks [J], International Journal of Bifurcation and Chaos,2008,18(2):605-613.
    62. Concas G, Locci M F, Marchesi M. Fractal Dimension in Software Networks[J], Europhysics Letters,2006,76(6):1221-1227.
    63. Zhang H H, Zhao H, Cai W, et al. A Qualitative Method for Analysis the Structure of Software Systems Based on k-core[J], Special Issue on Software Engineering and Complex Networks of Dynamics of Continuous, Discrete and Impulsive Systems Series B,2007,14(S6):18-24.
    64. Cai W, Zhao H, Zhang H H, et al. Static Structural Complexity Metrics for Large-scale Software[J], Special Issue on Software Engineering and Complex Networks of Dynamics of Continuous, Discrete and Impulsive Systems Series B,2007,14(S6):12-17.
    65. Brooks P F. No silver bullet:essence and accidents of software engineering [J], IEEE computer,1987,20(4):10-19.
    66. Zuse H. Software complexity-measures and methods [M], Berlin:Walter de Gruyter &. Co.,1991,30-50.
    67. Brain H S. Object-oriented metrics:measures of complexity [M], Englewood Cliffs, N.J.: Prentice-Hall PTR,1996,150-170.
    68. Fenton N E, Whitty R and Lizuka Y. Software quality assurance and measurement: worldwide perspective [M], London:International Thomson Computer Press,1995, 20-30.
    69. Watts D J, Strogatz S H. Collective dynamics of small-world networks [J], Nature,1998, 393(6684):440-442.
    70. Barabsi A L, Albert R. Emergence of scaling in random networks [J], Science,1999, 286(5439):509-512.
    71.何克清,马于涛,刘婧等.软件网络[M],北京:科学出版社,2008,41-152.
    72. Valverde S, Cancho R F, SoleR. Scale Free Networks from Optimal Design [J], Europhysics Letters,2002,60(4):512-517.
    73. Myers C R. Software systems as complex networks:Structure, function, and evolvability of software collaboration graphs [J], Physics Review E,2003,68:1-15.
    74. LaBelle N, Wallingford E. Inter-package dependency networks in open-source software [J], CoRR:Software Engineering,2004, arXiv: cs.SE/0411096.
    75. Hyland-Wood D, Carrington D, Kaplan S. Scale-Free Nature of Java Software Package, Class and Method Collaboration Graphs[R], Technical Report of MIND Laboratory, University of Maryland College Park, No. TR-MS1286,2006.
    76. Wheeldon R and Counsell S. Power law distributions in class relationships [C], In Proceedings of the 3rd IEEE International Workshop on Source Code Analysis and Manipulation, Amsterdam,2003,45-54.
    77. Baxter G, Frean M, Noble J, et al. Understanding the shape of Java software [J], ACM SIGPLAN Notices,2006,41(10):397-412.
    78. Potanin A, Noble J, Frean M, et al. Scale-free geometry in OO programs [J], Communications of the ACM,2005,48(5):99-103.
    79. Moura A P S, Lai Y-C and Motter A E. Signatures of small-world and scale-free properties in large computer programs [J], Physical Review E,2003,68:017102.
    80. Liu B, Li D Y, Liu J, et al. Classifying Class and Finding Community in UML Metamodel Network[C]. In Proceedings of ADMA 2005, Springer-Verlag LNAI 3584:690-695.
    81. Zhang H H, Zhao H, Cai W, et al. A Metrics Suite for Static Structure of Large-Scale Software Based on Complex Networks[C], In Proceedings of International Conference on Intelligent Information Hiding and Multimedia Signal Processing,2008,512-515.
    82. Sudeikat, Jan; Renz, Wolfgang. On complex networks in software: How agent-Orientation effects software structures[C], In Proceedings of Multi-Agent Systems and Applications V-5th International Central and Eastern European Conference on Multi-Agent Systems,2007,215-224.
    83. Chen T, Gu Q, Wang S S, et al. Module-based Large-scale Software Evolution Based on Complex Networks[C], In Proceedings of the 8th IEEE International Conference on Computer and Information Technology,2008,798-803.
    84. Dorogovtsev S N and Mendes J F F and Samukhin A N. Structure of growing networks with preferential linking [J]. Physical Review Letters,2000,85(21):4633-4636.
    85. Krapivsky P L, Redner S and Leyvraz F. Connectivity of growing random networks [J]. Physical Review Letters,2000,85(21):4629-4632.
    86. Dorogovtsev S N and Mendes J F F. Scaling properties of scale-free evolving networks: continuous approach [J]. Physical Review E,2001,63:056125.
    87. Bianconi G and Barabasi A L. Competition and multiscaling in evolving networks [J]. Europhysics Letters,2001,54:436-442.
    88. Zheng X L, Daniel Zeng, Li H Q. Analyzing Open-source Software Systems as Complex Networks[J], Physica A:Statistical Mechanics and Its Applications,2008,387(24): 6190-6200.
    89. Sole R V, Ferrer-Cancho R, Montoya J M, et al. Selection, tinkering, and emergence in complex networks [J], Complexity,2002,8(1):20-33.
    90. Valverde S and Sole R V. Logarithmic growth dynamics in software networks [J], Europhysics Letters,2005,72(5):858-864.
    91. Valverde S and Sole R V. Network motifs in computational graphs:a case study in software architecture[R], Working paper of Santa Fe Institute,2005, SFI/05-04-008.
    92. He K Q, Peng R, Liu J, et al. Design Methodology of Networked Software Evolution Growth Based on Software Patterns[J], Journal of Systems Science and Complexity,2006, 19(2):157-181.
    93. Jenkins S and Kirk S R. Software architecture graphs as complex networks; A novel partitioning scheme to measure stability and evolution [J], Information Sciences,177(12): 2587-2601.
    94.刁成嘉.UML系统建模与分析设计[M],北京:机械工业出版社,2007,22-48.
    95.张钹.网络与复杂系统[J],科学中国人,2004,2004(10):37.
    96. Zhou Y, Xu B. Measuring structure complexity of UML class diagrams [J], Journal of Electronics (China),2003,20(3):227-231.
    97. Ma Y T, He K Q and Du D H. A qualitative method for measuring the structural complexity of software systems based on complex networks[C], In proceedings of the 12th Asia-Pacific Software Engineering Conference, Taiwan,2005,257-263.
    98. Valverde S and Sole R V. Hierarchical small worlds in software architecture [R], Working paper of Santa Fe Institute,2003, SFI/03-07-44.
    99. Newman M E J. Detecting community structure in networks [J], Euro. Phys. J. B,2004, 38(2):321-330.
    100.Milgram S. The small world program [J], Psychrology Today,1967,1(2):60-67.
    101.Guare J. Six degree of separation:a play [M], New York: Vintage Books,1990,45-102.
    102.汪小帆,李翔,陈关荣著.复杂网络理论及其应用[M],北京:清华大学出版社,2006,3-70.
    103.D. J. Watts and S. H. Strogatz. Collective dynamics of small-world networks[J], Nature, 1998, (393):440-442.
    104.张君.互联网宏观拓扑结构之k-核解析及其建模[D],沈阳:东北大学,2009.
    105Jones C B. Software development based on formal methods [C]. In Proceedings of Software Development and Ada, CRAI Workshop on Software Factories and Ada,1986, Springer-Verlag LNCS 275:153-172.
    106.Gamma Erich, Helm Richard, Johnson Ralph, Vlissides John. Design patterns:elements of reusable object-oriented software [M], Addison-Wesley Longman Publishing Co., Inc.Boston, MA, USA,1995,45-134.
    107.Huhns M N, Holderfield V T. Robust software [J], IEEE Internet Computing,2002,25(1): 17-25.
    108.Elish M O, Rine D. Indicators of structural stability of object-oriented designs:a case study [C]. In proceedings of 29th Annual IEEE/NASA Software Engineering Workshop, Marriott Greenbelt, MD,2005,183-192.
    109.余建英,何旭宏编著.数据统计分析与SPSS应用[M],北京:人民邮电出版,2003,322-323.
    110.Duncan J. Watts, Steven H. Strogatz. Collective dynamics of small-world'networks [J], Nature,1998,393(4):440-442.
    111.F.J.Bueche,殷大钧等译.物理学导论[M],北京:人民教育出版社,1980,88-95.
    112.谭跃进,吴俊.网络结构嫡及其在非标度网络中的应用[J],系统工程理论与实践,2004,(6):1-3.
    113.张文波.Internet宏观拓扑结构的生命特征研究[D],沈阳:东北大学,2006.
    114.林锐,韩永泉.高质量程序设计指南[M],北京:电子工业出版社,2008,1-26.
    115.马于涛.基于复杂网络的软件结构特征度量方法的研究[D],武汉:武汉大学,2007.
    116.Norman E.Fenton, Shari Laawrence Pfleeger著,杨海燕等译.软件度量[M],北京:机械工业出版社,2003,3-50.
    117.Syed Mansoor Sarwar, Robert Koretsky等著,李善平,施韦等译.Linux教程[M],北京:清华大学出版社,2005,9-15.
    118.范磊.Linux内核源代码[M],北京:人民邮电出版社,2002.
    119.卿斯汉,等.操作系统安全[M],北京:清华大学出版社,2004,3-16.
    120.Boehm B W, Brown J R and Lipow M. Quantitative evaluation of software quality [C]. In Proceedings of 2nd International Conference on Software Engineering, California,1976, 592-605.
    121.Elish M O and Rine D. Indicators of structural stabilitu of object-oriented designs:a case study [C]. In Proceedings of 29th Annual IEEE/NASA Software Engineering Workshop, Marriott Greenbelt, MD,2005,183-192.
    122.Gamma Erich, Helm Richard, Johnson Ralph, Vlissides John. Design patterns:elements of reusable object-oriented software [M], Addison-Wesley Longman Publishing Co., Inc.Boston, MA, USA,1995,1-198.
    123.Lehma M M and Rmail J F. Software evolution and software evolution processes [J]. Annals of Software Engineering,2002,14(1):275-309.
    124.Lehma M M and Rmail J F. Software Evolution-Background, theory, practice [J]. Information Processing Letters,2003,88(1/2):33-44.
    125.Na Zhao, Tong Li, Lingling Yang, Yong Yu, Fei Dai, Wei Zhang. The resource optimization of software evolution processes [C]. In Proceedings of International Conference on Advanced Computer Control,2009,332-336.
    126.Dougherty B, White J, Thompson C, Schmidt D C. Automating Hardware and Software Evolution Analysis [C]. In Proceedings of 16th Annual IEEE International Conference and Workshop on Engineering of Computer Based Systems,2009,265-274.
    127.Milo R, Itzkovitz S, Kashtan N, et al. Superfamilies of evolved and designed networks [J]. Science,2004,303(5663):1538-1542.
    128.Milo R, Shen-Orr S, Itzkovitz S, et al. Network motifs:simple building blocks of complex networks [J]. Science,2002,298(5594):824-827.
    129.Khalil H K. Nonlinear systems[M]. Englewood Cliffs, NJ:Prentice Hall,2002,34-88.
    130.Variano E A, McCoy J H and Lipson H. Networks, dynamics, and modularity [J]. Physical Review Letters.2004,92:188701.
    131.Prill R J, Iglesias P A and Levchenko A. Dynamic properties of network motifs contribute to biological network organization [J]. PLos Biology,2005,3(11):1881-1892.
    132.Parnas D L. Designing software for ease of extension and contraction[C]. In Proceedings of 3rd International Conference on Software Engineering, Atlanta, USA,1976,264-277'.
    133.Melton H and Tempero E. An empirical study of cycles among classes in Java[R]. Technical Report UoASE-2006-1, Department of Computer Science at University of Auckland,2006.
    134.Valverde S and Sole R V. On the nature of design[C]. A chapter of the book entitled Complex Engineered Systems:Science Meets Technology, Springer-Verlag New York Inc, 2006.
    135.中华人民共和国国家标准.软件工程术语[S].GB/T-1 1457-1989,1989.
    136.IEEE. Standard glossary of software engineering terminology[S]. IEEE Std 729-1983, 1983.
    137.Denson W. The history of reliability prediction [J]. IEEE Transactions On Reliability, 1998,47(3):321-328.
    138.Trivedi K S. Probability and statistics with reliability, queueing and computer science applications (2nd Edition)[M]. New York: John Wiley & Sons,2001,34-189.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700