用户名: 密码: 验证码:
基于复杂网络的软件结构复杂性分析与建模
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着软件系统的规模和复杂度的不断增长,如何认识、管理、控制和降低软件系统的复杂性就成为软件工程面临的巨大挑战。经过长期的工程实践,软件开发者认识到大规模的复杂软件系统的结构与其功能、质量之间的关系十分密切。如何构建软件良好的结构、系统维护时如何对软件的结构进行优化,一直都是软件工程领域研究的重要问题。
     传统的软件工程方法通常关注于软件的局部或者微观层面结构特征,忽略了一些重要的反映全局结构的整体特性。这使得研究人员难以习惯从整体和全局的角度来研究大规模的软件系统,导致长期以来对软件的本质缺乏清晰的认识,也不能了解的软件整体结构的复杂性的演化规律。最近几年,许多研究人员发现抽象为网络模型的软件系统的结构展现出小世界和无标度的复杂网络特性,认为软件系统是一种人工复杂网络,突破了软件的传统思维方式。通过软件工程与复杂系统的学科交叉研究,用网络的观点来重新审视软件,形成软件的网络观,从整体和全局的角度来探索和发现复杂软件系统的结构特性、演化规律和由此产生的行为特征,将有助于正确、全面地认识和理解软件的本质特征,为解决软件的复杂性问题奠定基础。虽然近年来复杂网络与软件工程的交叉研究取得了一些成果,但是由于关于软件结构的研究刚刚起步,也存在下面的一些问题:缺乏针对包括系统演化和实时运行两个动态过程的软件结构动态行为的研究;目前研究人员还普遍存在着单纯采用点和边形式的图来抽象软件的结构是否会能全面或者充分描绘软件系统的困惑;度量软件部件之间相互作用的复杂性是否准确、合理和全面;缺乏针对软件系统的复杂网络模型;如何才能真正建立软件整体结构特性与软件质量之间关系?
     针对上述问题,本文以学科交叉融合为背景、以探索软件结构的复杂性为目标,分析其结构的复杂性的演化规律和其动态活动的动力学行为,建立结构复杂性的演化模型,度量软件部件之间相互作用的复杂性,为量化软件的复杂性提供基础,也为提高软件系统的质量提供一种思路与方法。围绕上述研究目标和内容,本文所做工作的主要工作归纳如下:
     (1)综合采用复杂网络的理论与方法和软件工程的度量指标从系统的层次上详细分析和研究了软件系统在系统演化和版本升级过程中所表现出来的系统特性和系统结构的变化规律,从系统层次上详细分析了他们源代码的演化过程,从理论上深刻揭示了一类面向对象软件系统的演化动力学特性和规律。这些规律的发现对于从宏观的角度去深刻认识、理解、控制面向对象软件系统的结构和演化特性提供了的理论基础。
     (2)根据软件演化的动力学分析所得到的结论,采用复杂网络的相关理论进行了解释,提出了面向对象软件系统的无标度(无向的和有向的)演化模型,深刻解释了作为软件复杂性之一的无标度特性的演化机理。
     (3)探索和设计了面向对象软件的动态网络的分析方法,通过实例发现了面向对象的软件系统在实时运行过程中生成的动态网络具有复杂网络所特有的小世界特性和无标度特性。这些特性的发现可以用在系统测试、软件质量的评价、系统资源的回收利用等方面,对于丰富面向对象的程序设计具有重要的意义。
     (4)为了能够更加全面的度量软件系统部件间的复杂关系,首先采用复杂网络的方法对软件系统进行了抽象,本文提出了一对能够反映软件质量的耦合因子——影响耦合因子和错误影响耦合因子。
     目前,软件工程与复杂系统的学科交叉研究才刚刚起步。用复杂网络的方法来研究和认识软件,形成软件网络观,有助于我们深刻认识软件的本质行为和特征,从而开辟一条软件工程学研究的新途径,为推动软件工程彻底解决软件复杂性问题做出应有的贡献。
As scale and complexity of software increase rapidly, how to understand, mea-sure, manage and control software complexity is a great challenge for software engineering. After many years of software engineering practice, software designers have acknowledged that software structure is closely related to software quality. Good structure is the key to the success of software design. Therefore, how to project well structured software is one of the most researched problems in software engineering.
     The traditional research on software structure pay much attention on rather small granularity and the local structural characteristics, while on larger scales average approach is not usually considered. As a result, much information is lost. In the long run, this situation obstructs us from understanding and explaining the evolution of software structure and reusing successful development experiences on the system level.
     Recent research achievements in complex networks introduce new mathemat-ical foundations and software engineering methods for software complex systems and find that the structures of these systems share small world and scale free prop-erties of complex networks. These achievements emphasize understanding system as a whole instead of focusing on local structure and behaviors. This new approach helps us to see software system from a different angle. Although the researches on complex network mainly aim at exploring the common characteristics in various complex networks and their formation rules, some problem exist. For example, there is a, lack of analysis of evolution processes from system level; there is a lack of complex software network model for evolution; there is a kind of puzzle whether the approach that is used to abstract software network is reasonable, etc.
     To address the above mentioned problems, the objective of this paper is to explore the complex of software structural, to analyze the dynamical evolution processes of software system from system level, to construct models that can pre-dict the emergence of scale-free state of software network, and to measure coupling interactions of software components that induce complexity. In the follows, the primary contributions of this paper will be summarized.
     (1) software evolution plays a vital role in software engineering. On the one hand, the continuous evolution and development of software may improve the effi-ciency of development project. On the other hand, software evolution can decrease the system maintenance costs and also enhance the normal development of soft-ware systems. Based on the theories and methods of complex networks, we select three sets of representative object-oriented software complex systems and then fur-ther analyze the dynamical evolution processes of their source codes from system level. It is the first time in literature to report the discovery of the underlying evolution dynamics and rules of a class of object-oriented software systems from theory. All these rules provide a theoretical basis for the recognizing, understand-ing, and control of system structure and evolving characteristic of object-oriented software systems from macroscopic view.
     (2) Basing on analyzing evaluative structure of the software networks we con-sider accelerating growth of network as power-law growth, which can be easily generalized to real systems as better than linear growth. For accelerating growth via a power law and scale-free state with preferential linking, we focus on exploring the generic property of complex networks. Generally, two scenarios are possible. In one of them, the links are undirected. In the other scenario, the links are directed. We propose two models that can predict the emergence of power-law growth and scale-free state in good agreement with these two scenarios and can simulate much more real systems than existing scale- free network models. Moreover, we use the obtained predictions to fit accelerating growth and the connectivity distribution of software networks describing scale- free structure. The combined analytical and numerical results indicate the emergence of a novel set of models that consider-ably enhance our ability to understand and characterize complex networks, whose applicability reaches far beyond the quoted examples.
     (3) We explore the approach and tool to analyze dynamic software network. By analytical experiment, we conclude that the world of real time software net-works is indeed small world and scale free, just like the Web, the Internet, and many other networks we routinely use in our everyday lives. The unexpected dis-covery bring important meanings for OO program design, debugging costs, and garbage collection, etc.
     (4) How to measure and control coupling interactions of software compo-nents is a largely explored research problem in software network. In terms of graph theory and linear algebra, this paper investigates a pair of coupling metrics to evaluate coupling interactions between the classes of object-oriented systems. These metrics differ from the majority of existing metrics in three aspects:taking into account the strength that one class depends on other ones, reflecting indirect coupling, and distinguishing various coupling interaction. An empirical compar-ison of the novel measures with one of the most widely used coupling metrics is described. Specifically, an experiment about the relationships of this pair metrics is conducted. The result shows that software complexity derived from coupling interaction could not be accurately reflected by one dimension of coupling metric for negative correlation.
     This conception will help deepen our understanding of the essential of software complexity. At present the interdisciplinary research between complex networks and software engineering just grow. The approach that adopt complex network will help deepen our understanding of the essential of software complexity and provide a new insight into software engineering and raise the profile for dealing with software crisis.
引文
[1]Li H, Huang B, Lii J. Dynamical evolution analysis of the object-oriented software systems. In:Proceedings of the 2008 IEEE Congress on Evolutionary Computation (IEEE CEC 2008). Hong Kong,2008,3030-3035
    [2]Li H. Scale-free network models with accelerating growth. Accepted by Frontiers of Computer Science in China.
    [3]Li H, Lu J. A scale-free network model with accelerating growth. In:Accepted by Proceedings of the 2009 IEEE International Symposium on Circuits and Systems (ISCAS 2009),2009
    [4]Li H, He K, Li B. A pair of coupling metrics for software networks. Accepted by Journal of System Science and Complexity.
    [5]Li H. A novel coupling metric for object-oriented software systems. In:Proc. IEEE International Symposium on Knowledge Acquisition and Modeling Work-shop KAM Workshop 2008,2008,609-612
    [6]史定华.网络——探索复杂性的新途径.系统工程学报,2005,(02)
    [7]李兵,马于涛,刘婧,丁琦伟.软件系统的复杂网络研究进展.力学进展,2008,38(6):805-814
    [8]布鲁克斯Brooks F P.人月神话.Mythical man-month:essays on software engineering.北京:人民邮电出版社,2007
    [9]Zuse H.Software Complexity-Measures and Methods.Berlin:Walter de Gruyter& Co,1991
    [10]Fenton N E, Iizuka Y, Whitty R W. Software Quality Assurance and Measurement. London:International Thomson Computer Press,1996
    [11]张钹.网络与复杂系统.科学中国人,2004,(10):37
    [12]Newman M. The structure and function of complex networks. SIAM Review, 2003,45(2):167-256
    [13]Albert R, Barabasi A L. Statistical mechanics of complex networks. Reviews of Modern Physics,2002,74(1):47-97
    [14]Barabasi A L, Albert R. Emergence of scaling in random networks. Science,1999, 286(5439):509-512
    [15]Watts D J, Strogatz S H. Collective dynamics of 'small-world'networks. Nature, 1998,393(6684):440-442
    [16]吕金虎,王红春,何克清.复杂动力网络及其在软件工程中的应用.计算机研究与发展,2008,45(12):2052-2059
    [17]Erdos P. Renyi A. On the evolution of random graphs. Pupl. Math. Inst. Hungar Acad. Sci., 1960,7:17-61
    [18]Adamic L. Six degrees:The science of a connected age. Nature,2003,422(6929): 265-265
    [19]张海藩.软件工程导论.北京:清华大学出版社,1998
    [20]Dijkstra E W. The structure of the "the" -multiprogramming system. Commu-nications of the ACM,1968,11(5):341-346
    [21]Parnas D L. On the criteria to be used in decomposing systems into modules. Communications of the ACM,1972,15(12):1053-1058
    [22]Parnas D L. On a "buzzword":hierarchical structure. Berlin:West Germany:Springer-Verlag,1974
    [23]Parnas D L. On the Design and Development of Program Familes. TSE,1976
    [24]Gamma E, Helm R, Johnson R, Vlissides J. Design patterns:elements of reusable object-oriented software. Boston, MA, USA.:Addison-Wesley Longman Publish-ing Co., Inc.,1995
    [25]Brooks F P. No silver bullet:Essence and accidents of software engineering. IEEE Computer,1987,20(4):10-19
    [26]Feiler P. Ultra-Large-Scale Systems The Software Challenge of the Future. Tech. rep., Software Engineering Institute, Carnegie Mellon Technical Report,2006
    [27]Brooks F P. Three greate challenges for half-century-old computer science. Journal of the ACM,2003,50(1):25-25
    [28]Rubey R J, Hartwick R D. Quantitative measurement of program quality. In:the 23rd ACM national conference. ACM Press,1968,671-677
    [29]Boehm B, Gilb T, Parnas D, et al. Software engineering-old problems, new problems, and unsolved problems. Software Engineering-Esec/fse '97,1997, 1301:530-530. Source Series:Lecture Notes In Computer Science
    [30]DeMarco T. Controlling Software Projects:Management, Measurement, and Es-timates. NJ, USA:Prentice Hall PTR Upper Saddle River,1982
    [31]Briand L C, Morasca S, Basili V R. Property-based software engineering measure-ment. IEEE Transactions on Software Engineering,1996,22(1):68-86
    [32]Berry R. Trends, challenges and opportunities for performance engineering with modern business software. IEE Proceedings-Software,2003,150(4):223-229
    [33]Hartmanis J. Turing award lecture:On computational complexity and the nature of computer science. ACM Computing Surveys,1995,27(1):7-16
    [34]Adamov R, Richter L. A proposal for measuring the structural complexity of programs. Journal of Systems and Software,1990,12(1):55-70
    [35]Gorla N, Ramakrishnan R. Effect of software structure attributes on software development productivity. The Journal of Systems & Software,1997,36(2):191-199
    [36]Chidamber S R, Darcy D P, Kemerer C F. Managerial use of metrics for object-oriented software:an exploratory analysis. IEEE Transactions on Software Engi-neering,1998,24(8):629-639
    [37]Darcy D P, Kemerer C F, Slaughter S A, Tomayko J E. The structural complexity of software an experimental test. IEEE Transactions on Software Engineering, 2005,31(11):982-995
    [38]McCabe T J. A complexity measure. IEEE Transactions on Software Engineering, 1976, (4):308-320
    [39]Henry S, Kafura D. Software structure metrics based on information flow. IEEE Transactions on Software Engineering,1981, (5):510-518
    [40]Robillard P N, Boloix G. The interconnectivity metrics:a new metric showing how a program is organized. The Journal of systems and software,1989,10(1): 29-39
    [41]Kavitha A, Shanmugam A. Dynamic coupling measurement of object oriented software using trace events. In:Proc.6th International Symposium on Applied Machine Intelligence and Informatics (SAMI 2008),2008,255-259
    [42]Chidamber S R, Kemerer C F. A metrics suite for object oriented design. IEEE Transactions on Software Engineering,1994,20(6):476-493
    [43]Brito F, Abreu E. The mood metrics set. In:ECOOP'95 Workshop on Metrics, 1995
    [44]Li W, Henry S. Object-oriented metrics that predict maintainability. Journal of Systems and Software,1993,23(2):111-122
    [45]Lee LBSWSFYS, Wang F J. Measuring the coupling and cohesion of an object-oriented program based on information flow. In:Proceedings of International Conference on Software Quality. Maribor, Slovenia,1995
    [46]Hitz M, Montazeri B. Measuring coupling and cohesion in object-oriented systems. In:Proceeding of International Symposium on Applied Corporate Computing. Monterrey, Mexico,1995
    [47]Briand L, Devanbu P, Melo W. An investigation into coupling measures for c++. In:Proceedings of the 19th international conference on Software engineering, Pro-ceedings of the 19th international conference on Software engineering. Boston, Massachusetts, United States:ACM,1997,412-421
    [48]Bieman J M, Kang B K. Cohesion and reuse in an object-oriented system. In:Pro-ceedings of the 1995 Symposium on Software reusability, Proceedings of the 1995 Symposium on Software reusability. Seattle, Washington, United States:ACM, 1995,259-262
    [49]Lake A, Cook C. Use of factor analysis to develop oop software complexity metrics. In:Proceeding of 6th Annual Oregon Workshop on Software Metrics. Silver Falls, Oregon,1994
    [50]Lorenz M, Kidd J. Object-oriented software metrics:a practical guide. Upper Saddle River, NJ, USA:Prentice-Hall, Inc.,1994
    [51]Tegarden D P, Sheetz S D, Monarchi D E. A software complexity model of object-oriented systems. Decision Support Systems,1995,13(3):241-262
    [52]Newman M. Detecting community structure in networks. European Physical Journal B,2004,38(2):321-330
    [53]Milgram S. The small world problem. Psychology Today,1967,2:60-67
    [54]Dodds P S, Muhamad R, Watts D J. An experimental study of search in global social networks. Science,2003,301(5634):827-829
    [55]Barrat A, Weigt M. On the properties of small-world network models. European Physical Journal B,2000,13(3):547-560
    [56]Newman M, Watts D J. Renormalization group analysis of the small-world network model. Physics Letters A,1999,263(4-6):341-346
    [57]方锦清,汪小帆,刘曾荣.略论复杂性问题和非线性复杂网络系统的研究.科技导报,2004,2(2):9-12
    [58]方锦清,汪小帆,郑志刚等.一门崭新的交叉科学:网络科学(上).物理学进展,2007,27(3):239-343
    [59]Albert R, Jeong H, Barabasi A L. Error and attack tolerance of complex networks. Nature,2000,406(6794):378-382
    [60]Crucitti P, Latora V, Marchiori M, Rapisarda A. Error and attack tolerance of complex networks. Physica A-statistical Mechanics And Its Applications,2004, 340(1-3):388-394
    [61]Li Z, Chen G. Global synchronization and asymptotic stability of complex dy-namical networks. IEEE Transactions on Circuits and Systems Ⅱ:Express Briefs, 2006,53(1):28-33
    [62]项林英,陈增强,刘忠信等.复杂动态网络的建模、分析与控制研究综述.自然科学进展,2006,16(12):1543-1551
    [63]Wang X F, Chen G R. Pinning control of scale-free dynamical networks. Physica A-statistical Mechanics And Its Applications,2002,310(3-4):521-531
    [64]姚静,关治洪.拓扑切换网络的脉冲控制.复杂系统与复杂性科学,2005,2(2):24-29
    [65]Li Z, Chen G R. Robust adaptive synchronization of uncertain dynamical net-works. Physics Letters A,2004,324(2-3):166-178
    [66]Valverde S, Cancho R F, Sole R V. Scale-free networks from optimal design. Europhysics Letters,2002,60(4):512-517
    [67]Myers C R. Software systems as complex networks:structure, function, and evolvability of software collaboration graphs. Physical Review E,2003,68(4): 046116
    [68]LaBelle N, Wallingford E. Inter-package dependency networks in open-source software. ArXiv:Cs SE/0411096,
    [69]Hyland-Wood D, Carrington D, Kaplan S. Scale-Free Nature of Java Software Package, Class and Method Collaboration Graphs. Tech. rep., MIND Laboratory (No. TR-MS1286), University of Maryland College Park,2006
    [70]SoleR V, Valverde S. Information theory of complex networks:On evolution and architectural constraints. In:Proceedings Of International Conference On Complex Networks. Springer-Verlag Lect Notes Phys,2004,189-207
    [71]Potanin A, Noble J, Frean M, Biddle R. Scale-free geometry in oo programs. Communications of the ACM,2005,48(5):99-103
    [72]Wheeldon R, Counsell S. Power law distributions in class relationships. In:Proc. Third IEEE International Workshop on Source Code Analysis and Manipulation, 2003,45-54
    [73]Liu B, Li D Y, Liu J. Classifying class and finding community in uml metamodel network. In:Proceedings of ADMA 2005. Wuhan,2005,690-695
    [74]Baxter G, Frean M, Noble J, et al. Understanding the shape of java software. ACM Sigplan Notices,2006,41(10):397-412
    [75]Concas G, Marchesi M, Pinna S, Serra N. Power-laws in a large object-oriented software system. IEEE Transactions on Software Engineering,2007,33(10):687-708
    [76]Chatzigeorgiou A, Tsantalis N, Stephanides G. Application of graph theory to oo software engineering. In:Proceedings of the 2006 International Workshop on Workshop on Interdisciplinary Software Engineering Research. Shanghai,2006, 29-36
    [77]闫栋,祁国宁.大规模软件系统的无标度特性与演化模型.物理学报,2006,55(8):3799-3084
    [78]韩明畅,李德毅,刘常昱,李华.软件中的网络化特征及其对软件质量的贡献.计算机工程与应用,2006,42(20):29-31
    [79]Dorogovtsev S N, Mendes J, Samukhin A N. Structure of growing networks with preferential linking. Physical Review Letters,2000,85(21):4633-4636
    [80]Krapivsky P L, Redner S, Leyvraz F. Connectivity of growing random networks. Physical Review Letters,2000,85(21):4629-4632
    [81]Dorogovtsev S N, Mendes J. Scaling properties of scale-free evolving networks: Continuous approach. Physical Review E,2001,63(5):056125
    [82]Bianconi G, Barabasi A L. Competition and multiscaling in evolving networks. Europhysics Letters,2001,54(4):436-442
    [83]Ricard V S, Ramon F, Jose M M, Sergi V. Selection, tinkering and emergence in complex networks. Complexity,2003,8(1):20-33
    [84]Cancho R F, SoleR V. Optimization in complex networks. arXiv:cond-mat/0111222,2001,
    [85]Puniyani A R, Lukose R M. Growing random networks under constraints. arXiv: cond-mat/0107391,2001,
    [86]Krapivsky P L, Redner S. Network growth by copying. Physical Review E,2005, 71(3):036118
    [87]Valverde S, SoleR V. Network motifs in computational graphs:a case study in software architecture. Working paper of Santa Fe Institute, SFI/05-04-008,2005,
    [88]Valverde S, Sole R V. Logarithmic growth dynamics in software networks. Euro-physics Letters,2005,72(5):858-864
    [89]Robles G, Amor J J, Gonzalez-Barahona J M, et al. Evolution and growth in large libre software projects. In:Proceedings of 8th International Workshop on Principles of Software Evolution. Lisbon,2005,165-174
    [90]Gamma E, Helm R, Johnson R, et al. Design patterns:elements of reusable object-oriented software. Addison-Wesley, Reading, MA,1994
    [91]He K Q, R P, Liu J, et al Design methodology of networked software evolution growth based on software patterns. Journal of Systems Science & Complexty, 2006,19:157-181
    [92]Concas G, Locci M F, Marchesi M, et al. Fractal dimension in software networks. Europhysics Letters,2006,76(6):1221-1227
    [93]李兵,王浩,李增扬等.基于复杂网络的软件复杂性度量研究.电子学报,2006,34(12A):2371-2375
    [94]Jenkins S, Kirk S R. Software architecture graphs as complex networks:A novel partitioning scheme to measure stability and evolution. Information Sciences, 2007,177(12):2587-2601
    [95]Sudeikat J, Renz W. On complex networks in software:How agent orientation ef-fects software structures. In:Proceedings of 5th International Central and Eastern European Conference on Multi-Agent Systems. LNCS 4696,2007,215-224
    [96]Vasa R, Schneider J G, Woodward C, et al. Detecting structural changes in object oriented software systems. In:Proceedings of the 2005 International Symposium on Empirical Software Engineering. Australia,2005,479-486
    [97]Vasa R, Schneider J G, Nierstrasz O. The inevitable stability of software change. In:Proc. IEEE International Conference on Software Maintenance ICSM 2007, 2007,4-13
    [98]Ma Y T, He K Q, Du D H. A qualitative method for measuring the structural complexity of software systems based on complex networks. In:Proceedings of 12th Asia-Pacific Software Engineering Conference. Taiwan,2005,257-263
    [99]Ma Y T, He K Q, Du D H, et al. A complexity metrics set for large-scale object-oriented software systems. In:Proceedings of 6th International Conference on Computer and Information Technology. Seoul,2006,189
    [100]Girolamo A, Newman L I, Rao R. The structure and behavior of class networks in object-oriented software design. www.eecs.umich.edu/lee-newm/documents/classnetworks.pdf,2005,
    [101]Liu J, He K Q, Ma Y T, et al. Scale free in software metrics. In:Proceedings of 30th Annual International Computer Software and Applications Conference, vol. 1. USA,2006,229-235
    [102]Liu J, He K Q, Peng R, et al. A study on the weight and topology correlation of object oriented software coupling network. In:Proceedings of 1st International Conference on Complex Systems and Applications. Inner Mongolia, China,2006, 955-959
    [103]Melton H, Tempero E. Static members and cycles in java software. In:Proceed-ings of First International Symposium on Empirical Software Engineering and Measurement. Madrid,2007,136-145
    [104]Ma Y T, He K Q, Liu J. Network motifs in object-oriented software systems. Dynamics of Continuous, Discrete and Impulsive Systems (Series B:Applications and Algorithms) Special Issue on Software Engineering and Complex Networks, 2007,14(S6):166-172
    [105]Kruchten P. Putting the "engineering" into "software engineering". In:Proceed-ings of 15th Australian Software Engineering Conference. Melbourne,2004,2-9
    [106]Bennett K, Burd E, Kemerer C F, et al. Empirical studies of evolving systems. Empirical Software Engineering,1999,4(4):370-380
    [107]Mens T, Wermelinger M, Ducasse S, et al. Challenges in software evolution. In: Proceedings of IWPSE'05. Lisbon,2005,13-22
    [108]Belady L A, Lehman M M. A model of large program development. IBM Systems Journal,1976,15(1):225-252
    [109]Lehman M M. Programs, life cycles, and laws of software evolution. Proceedings of the IEEE,1980,68(9):1060-1076
    [110]Eick S G, Graves T L, Karr A F, et al. Does code decay? assessing the evidence from change management data. IEEE Transactions on Software Engineering,2001, 27(1):1-12
    [111]Hassan A E, Holt R C. Studying the chaos of code development. In:Proc.10th Working Conference on Reverse Engineering (WCRE 2003),2003,123-133
    [112]Eick S G, Graves T L, Karr A F, et al. Visualizing software changes. IEEE Transactions on Software Engineering,2002,28(4):396-412
    [113]Xing Z C, Stroulia E. Analyzing the evolutionary history of the logical design of object-oriented software. IEEE Transactions on Software Engineering,2005, 31(10):850-868
    [114]Kemerer C F, Slaughter S. An empirical approach to studying software evolution. IEEE Transactions on Software Engineering,1999,25(4):493-509
    [115]MacCormack A, Rusnak J, Baldwin C Y. Exploring the structure of complex software designs:An empirical study of open source and proprietary code. Man-agement Science,2006,52(7):1015-1030
    [116]Zhou J, Lu J, Lu J. Adaptive synchronization of an uncertain complex dynamical network. IEEE Transactions on Automatic Control,2006,51(4):652-656
    [117]Lu J, Chen G. A time-varying complex dynamical network model and its controlled synchronization criteria. IEEE Transactions on Automatic Control,2005,50(6): 841-846
    [118]Lu J, Yu X, Chen G, Cheng D. Characterizing the synchronizability of small-world dynamical networks. IEEE Transactions on Circuits and Systems Ⅰ,2004,51(4): 787-796
    [119]Zhou J, Lu J, Lu J. Pinning adaptive synchronization of a general complex dy-namical network. Automatica,2008,44(4):996-1003
    [120]Chen L, Lu J, Lu J, Hill D J. Local asymptotic coherence of time-varying discrete ecological networks. Automatica,2009,45(2):546-552
    [121]Basili V R, Briand L C, Melo W L. A validation of object-oriented design metrics as quality indicators. IEEE Transactions on Software Engineering,1996,22(10): 751-761
    [122]Emam K E, Benlarbi S, Goel N, Rai S N. The confounding effect of class size on the validity of object-oriented metrics. IEEE Transactions on Software Engineering, 2001,27(7):630-650
    [123]Subrarmanyam R, Krishnan M S. Empirical analysis of ck metrics for object-oriented design complexity:implications for software defects. IEEE Transactions on Software Engineering,2003,29(4):297-310
    [124]Harrison R, Counsell S J, Nithi R V. An evaluation of the mood set of object-oriented software metrics. IEEE Transactions on Software Engineering,1998, 24(6):491-496
    [125]Liu J, He K, Peng R, Ma Y. A study on the weight and topology corrlation of object oriented software coupling network. Dynamics of Continuous, Discrete and Impulsive Systems Ser. B,2006,13:955-959
    [126]Hethcote H W. The mathematics of infectious diseases. SIAM Review,2000, 42(4):599-653
    [127]Lloyd A L, May R M. Epidemiology-how viruses spread among computers and people. Science,2001,292(5520):1316-1317
    [128]Barabasi A L, Bonabeau E. Scale-free networks. Scientific American,2003,288(5): 60-69
    [129]Holme P, Kim B J, Yoon C N, Han S K. Attack vulnerability of complex networks. Physical Review E,2002,65(5):056109
    [130]Faloutsos M, Faloutsos P, Faloutsos C. On power-law relationships of the internet topology. ACM SIGCOMM Computer Communications Review,1999,29(4):251-262
    [131]Lawrence S, Giles C L. Accessibility of information on the web. Nature,1999, 400(6740):107-109
    [132]Wasserman S, Faust K. Social Network Analysis. Cambridge, UK:Cambridge University Press,1994
    [133]Fell D A, Wagner A. The small world of metabolism. Nature Biotechnology,2000, 18(11):1121-1122
    [134]Zhang Z Z, Zhou S G, Zou T, et al. Incompatibility networks as models of scale-free small-world graphs. European Physical Journal B,2007,60(2):259-264
    [135]Amaral L A N, Scala A, Barthelemy M, Stanley H E. Classes of small-world networks. Proceedings of the National Academy of Sciences of the United States of America,2000,97(21):11149-11152
    [136]Dorogovtsev S N, Mendes J F. Effect of the accelerating growth of communications networks on their structure. Physical Review E,2001,63(2):025101
    [137]Shi D, Chen Q, Liu L. Markov chain-based numerical method for degree distrib-utions of growing networks. Physical Review E,2005,71(3):036140
    [138]Price D J d S. Networks of scientific papers. Science,1965,149:510-515
    [139]Price D J d S. A general theory of bibliometric and other cumulative advantage processes. Amer. Soc. Inform. Sci.,1976,27:292-306
    [140]刘蜻.基于复杂网络的软件结构分析及优化研究:[博士论文].武汉:武汉大学,2007,
    [141]马于涛.基于复杂网络的软件结构特性度量方法的研究:[博士论文].武汉:武汉大学,2007,
    [142]邱小侠,吕晶.深入Java调试体系.http://www.ibm.com/developerworks/cn/java/j-lo-jpdal/
    [143]Hutchens D H, Basili V R. System structure analysis:Clustering with data bind-ings. IEEE Transactions on Software Engineering,1985, (8):749-757
    [144]Stevens W P, Myers G, Constantine L L. Structured design. IBM Journal of Research and Development,1974,13(2):115
    [145]Yourdon E, Constantine L L. Structured Design:Fundamentals of a Discipline of Computer Program and Systems Design. Upper Saddle River, NJ, USA.:Prentice-Hall, Inc.,1979
    [146]Sarkar S, Rama G M, Kak A C. Api-based and information-theoretic metrics for measuring the quality of software modularization. IEEE Transactions on Software Engineering,2007,33(1):14-32
    [147]Purao S, Vaishnavi V. Product metrics for object-oriented systems. ACM Com-puting Surveys,2003,35(2):191-221
    [148]Briand L C, Daly J W, Wust J K. A unified framework for coupling measurement in object-oriented systems. IEEE Transactions on Software Engineering,1999, 25(1):91-121
    [149]Li W. Another metric suite for object-oriented programming. Journal of Systems and Software,1998,44(2):155-162
    [150]Talbi T, Meyer B, Stapf E. A metric framework for object-oriented development. In:Proc.39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems TOOLS 39,2001,164-172
    [151]Briand L C, Daly J W, Wust J. A unified framework for cohesion measurement in object-oriented systems. In:Proc. Fourth International Software Metrics Sym-posium,1997,43-53
    [152]Briand L C, Morasca S, Basili V R. Defining and validating measures for object-based high-level design. IEEE Transactions on Software Engineering,1999,25(5): 722-743
    [153]Selby R W, Basili V R. Analyzing error-prone system structure. IEEE Transac-tions on Software Engineering,1991,17(2):141-152
    [154]Pfleeger S L, Atlee J M. Software Engineering:Theory and Practice 3rd ed. Pearson Prentice Hall,2006
    [155]Myers G. Software Reliability:Principles and Practice. Wiley,2003
    [156]Binkley A B, Schach S R. Validation of the coupling dependency metric as a predictor of run-time failures and maintenance measures. In:Proc. International Conference on Software Engineering,1998,452-455
    [157]Chidamber S R, Kemerer C F. Towards a metrics suite for object oriented design. In:Proceedings Of Sixth ACM Conference On Object Oriented Programming, Systems Languages And Applications,1991,197-211
    [158]Abreu F, Goula M, Esteves R. Toward the design quality evaluation of object-oriented software systems. In:Proceedings of the 5th International Conference on Software Quality,1995
    [159]Briand L C, Wust J, Lounis H. Using coupling measurement for impact analysis in object-oriented systems. In:Proc. IEEE International Conference on Software Maintenance (ICSM'99),1999,475-482
    [160]Briand L C, Wust J, Daly J W, Porter D V. Exploring the relationships be-tween design measures and software quality in object-oriented systems. Journal of Systems and Software,2000,51(3):245-273
    [161]Eder J, Kappel G, Schrefl M. Coupling and cohesion in object-oriented systems. In:Technical Report. University of Klagenfurt,1994
    [162]Bryan K, Leise T. The $25,000,000,000 eigenvector:The linear algebra behind google. SIAM Review,2006,48(3):569-581

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

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

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