Skip to main content
Log in

Design Methodology of Networked Software Evolution Growth Based on Software Patterns

  • Published:
Journal of Systems Science and Complexity Aims and scope Submit manuscript

Abstract

Recently, some new characteristics of complex networks attract the attentions of scientists in different fields, and lead to many kinds of emerging research directions. So far, most of the research work has been limited in discovery of complex network characteristics by structure analysis in large-scale software systems.

This paper presents the theoretical basis, design method, algorithms and experiment results of the research. It firstly emphasizes the significance of design method of evolution growth for network topology of Object Oriented (OO) software systems, and argues that the selection and modulation of network models with various topology characteristics will bring un-ignorable effect on the process of design and implementation of OO software systems. Then we analyze the similar discipline of “negation of negation and compromise” between the evolution of network models with different topology characteristics and the development of software modelling methods. According to the analysis of the growth features of software patterns, we propose an object-oriented software network evolution growth method and its algorithms in succession. In addition, we also propose the parameter systems for OO software system metrics based on complex network theory. Based on these parameter systems, it can analyze the features of various nodes, links and local-world, modulate the network topology and guide the software metrics. All these can be helpful to the detailed design, implementation and performance analysis. Finally, we focus on the application of the evolution algorithms and demonstrate it by a case study.

Comparing the results from our early experiments with methodologies in empirical software engineering, we believe that the proposed software engineering design method is a computational software engineering approach based on complex network theory. We argue that this method should be greatly beneficial for the design, implementation, modulation and metrics of functionality, structure and performance in large-scale OO software complex system.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. D. J. Watts and S. H. Strogatz, Collective dynamics of ‘small world’ networks, Nature, 1998, 393: 400–442.

    Article  Google Scholar 

  2. A. L. Barabási and R. Albert, Emergence of scaling in random networks, Science, 1999, 286: 509–512.

    Article  Google Scholar 

  3. A. L. Barabási, R. Albert, and H. Jeong, Mean-field theory for scale-free random networks, Physica A, 1999, 272: 173–187.

    Article  Google Scholar 

  4. A. L. Barabási, R. Albert, H. Jeong, and G. Bianconi, Power-law distribution of the World Wide Web: response, Science, 2000, 287: 2125a.

    Google Scholar 

  5. R. Albert and A. L. Barabási, Statistical mechanics of complex networks, Reviews of Modern Physics, 2002, 74: 47–97.

    Article  Google Scholar 

  6. G. Bianconi and A. L. Barabási, Topology of evolving networks: local events and universality, Phys. Rev. Lett., 2000, 85: 5234–5237.

    Article  Google Scholar 

  7. G. Bianconi and A. L. Barabási, Competition and multiscaling in evolving networks, Europhysics Letters, 2001, 54(4): 436–442.

    Article  Google Scholar 

  8. J. Jost and M. P. Joy, Evolving networks with distance preferences, Phys. Rev. E, 2002, 66, 036126: 1–7.

    Article  Google Scholar 

  9. P. L. Krapivsky, S. Redner, and F. Leyvraz, Connectivity of growing random networks, Phys. Rev. Lett., 2000, 85: 4629–4632.

    Article  Google Scholar 

  10. S. N. Dorogovstsev and J. F. F. Mendes, Evolution of reference networks with aging, Phys. Rev. E, 2000, 62: 1842–1845.

    Article  Google Scholar 

  11. S. N. Dorogovstsev and J. F. F. Mendes, Scaling behaviour of developing and decaying networks, Europhys. Lett., 2000, 52: 33–39.

    Article  Google Scholar 

  12. S. N. Dorogovstsev and J. F. F. Mendes, Scaling properties of scale-free evolving networks: continuous approach, Phys. Rev. E, 2001, 63, 056125: 1–19.

    Google Scholar 

  13. X. Li and G. R. Chen, A local-world evolving network model, Physica A, 2003, 328(1–2): 274–286.

    Article  Google Scholar 

  14. S. Valverde and Ricard Solé, Hierarchical small-worlds in software architecture, Santa Fe Institute working paper SFI/03-07-044, 2003.

  15. R. S. Chidamber and C. F. Kenerer, A metrics suite for object oriented design, IEEE Transactions on Software Engineering, 1994, 20(6): 476–493.

    Article  Google Scholar 

  16. C. R. Myers, Software systems as complex networks: Structure, function, and evolvability of software collaboration graphs, Physical Review E, 2003, 68, 046116: 1–15.

    Article  Google Scholar 

  17. D. Braha and Y. Bar-Yam, The topology of large-scale engineering problem-solving networks, Physical Review E, 2004, 69, 016113: 1–7.

    Google Scholar 

  18. J. Watson, H. A. Abbass, C. Lokan, and P. Lindsay, Software engineering for artificial life, complex systems, and agent-based distillation, in Proceedings of the 7th Asia-Pacific Conference on Complex Systems Cairns Convention Centre, Cairns, Australia, 6–10th December 2004.

  19. L. Li, D. Alderson, R. Tanaka, J. Doyle, and W. Willinger, Towards a theory of scale-free graphs: definition, properties, and implications, Technical Report CIT-CDS-04-006, Engineering & Applied Sciences Division, California Institute of Technology, Pasadena, CA, USA, 2005.

  20. N. F. Schneidewind, Modularity considerations in real time operating structures, COMPSAC 77: 397–403.

  21. R. W. Wolverton, The cost of developing large-scale software, IEEE Transactions on Computer, 1974, C-23(6): 615–636. Also in: Tutorial on Programming Productivity: Issues for the Eighties, IEEE Computer Society, Second Edition, 1986.

  22. B. Liu, D. Y. Li, J. Liu, and F. He, Classifying Class and Finding Community in UML Metamodel Network, Springer LNCS 3584, 1st International Conference, Proceedings pp. 690–695, Advanced Data Mining and Applications, 2005.

  23. S. Valverde1 and R. V. Sole, Network Motifs in Computational Graphs: A Case Study in Software Architecture, Dynamically Evolving, Large-scale Information Systems Technical Report 0206: 1–9 (DELIS-TR-0206), Santa Fe Institute.

  24. E. Gamma, R. Helm, R. Johson, and J. Vlissides, Design Patterns, Elements of Reusable Object-Oriented Software, Soft-Bank Publishers (in Japanese), 2000, 325–333.

  25. M. Fowler, Analysis Patterns: Reusable Object Models, Addison-Wesley Publishers Japan, Ltd, 1998.

  26. J. S. Wu and Z. R. DI, Complex networks in statistical physics, Progress Physics (in Chinese), 2004, 24(1): 18–44.

    Google Scholar 

  27. C. W. Irving and D. Eichmann, Patterns and design adaptability, Pattern Languages of Programs, 1996, 2: 1–10.

    Google Scholar 

  28. S. N. Dorogovtsev and J. F. F. Mendes, Evolution of Networks From Biological Nets to the Internet and WWW, Oxford University Press, 2003.

  29. S. N. Dorogovtsev, J. F. F. Mendes, and A. N. Samukhin, Structure of growing networks with preferential linking, Phys. Rev. Lett., 2000, 85: 4633–4636.

    Article  Google Scholar 

  30. K. Q. He, S. Ying, and F. He, A constructive state reflective pattern, Journal of Software (in Chinese), 2001, 12(8): 1242–1249.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Keqing He.

Additional information

Supported by the National Natural Science Foundation of China under Grant No. 60373086; ISO/IEC SC32 Standardization Project No. 1.32.22.01.03.00; “Tenth Five-Year Plan” National Key Project of Science and Technology under Grant No. 2002BA906A21; Hubei Province Key Project under Grant No. 2004AA103A02; Wuhan City Key Project under Grant No. 20021002043; Open Foundation of SKLSE under Grant No. SKLSE05-19.

Rights and permissions

Reprints and permissions

About this article

Cite this article

He, K., Peng, R., Liu, J. et al. Design Methodology of Networked Software Evolution Growth Based on Software Patterns. Jrl Syst Sci & Complex 19, 157–181 (2006). https://doi.org/10.1007/s11424-006-0157-6

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11424-006-0157-6

Key Word

Navigation