ABSTRACT To search for the Design Patterns’ influence on the software, the paper abstracts the feature models of 9 kinds of classic exiting design patterns among the 23 kinds and describes the features with algorithm language. Meanwhile, searching for the specific structure features in the network, the paper designs 9 matching algorithms of the 9 kinds design patterns mentioned above to research on the structure of the design patterns in the software network. At last, the paper analyzes the evolving trends of the software scale and the application frequency of the 9 kinds of design patterns as the software evolves, and search for the rules how these design patterns are applied into 4 kinds of typical software.
Cite this paper
nullW. WANG, H. ZHAO, H. LI, P. LI, D. YAO, Z. LIU, B. LI, S. YU, H. LIU and K. YANG, "Application of Design Patterns in Process of Large-Scale Software Evolving," Journal of Software Engineering and Applications, Vol. 3 No. 1, 2010, pp. 58-64. doi: 10.4236/jsea.2010.31007.
 E. Gamma, R. Helm, R. Johnson, and J. Vlissides, “Design patterns: Elements of reusable object-oriented software [M],” Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA, 1995.
M. M. Lehma, and J. F. Rmail, “Software evolution and software evolution processes [J],” Annals of Software Engineering, Vol. 14, No. 1, pp. 275–309, 2002.
B. Dougherty, J. White, C. Thompson, and D. C. Schmidt, “Automating hardware and software evolution analysis [A],” Engineering of Computer Based Systems, ECBS 2009. 16th Annual IEEE International Conference and Workshop on the [C], Vol. 35, No. 5, pp. 265–274, 2009.
S. N. Dorogovtsev, and J. F. Mendes, “Scaling properties of scale-free evolving networks: continuous approach [J],” Physical Review E, Vol. 63, No. 5, pp. 56125.
N. Zhao, T. Li, L. L. Yang, Y. Yu, F. Dai, and W. Zhang, “The resource optimization of software evolution processes [A],” Advanced Computer Control, ICACC’09, International Conference on [C], pp. 332–336, 2009.
B. Behm, “Some future trends and implications for systems and software engineering processes [J],” Systems Engineering, Vol. 9, No. 1, pp. 1–19, 2006.
L. Paolo, B. Andrea, and D. G. Felicita, “A decom- position-based modeling framework for complex systems [J],” IEEE Transaction on Reliability, Vol. 58, No. 1, pp. 20–33, 2009.
Y. Ma, and K. A. He, “Complexity metrics set for large-scale object-oriented software systems, in procee- dings of 6th international conference on computer and information technology [J],” pp. 189–189, 2006.
K. Madhavi, and A. A. A. Rao, “Framework for visua- lizing model-driven software evolution [A], Advance Computing Conference IACC’09 IEEE International [C],” pp. 1628–1633, 2009.
S. Valverde, and R. V. Sole, “Network notifs in com- putational graphs: a case study in software architecture [J],” Physical Review E, Vol. 72, No. 2, pp. 26107, 2005.
C. R. Myers, “Software systems as complex networks: structure, function, and evolvability of software collaboration graphs [J],” Physical Review E, Vol. 68, No. 4, pp. 46116, 2003.
A. Potanin, et al. “Scale-free geometry in OO programs [J],” Communications of ACM, Vol. 48, No. 5, pp. 99–103, 2005.
S. Meyers, “Effective C++ (3rd Edition) [M],” Addison- Wesley Professional, pp. 10–50, 2005.
C. A. Conley, and L. Sproull, “Easier said than done: an empirical investigation of software design and quality in open source software development [A],” System Sciences, HICSS’09 42nd Hawaii International Conference on [C], pp. 1–10, 2009.
W. Lian, R. G. Dromey, and D. Kirk, “Software Engineering and Scale-free Networks [J],” IEEE Trans- actions on Systems, Vol. 39, No. 3, pp. 648–657, 2009.
M. M. Lehma, and J. F. Rmail, “Software evolution background, theory, practice [J],” Information Processing Letters, Vol. 88, No. 1/2, pp. 33–44, 2003.