A Software-Reuse Method from Model1 to SSH2

Evolution is a natural phenomenon to most software systems because of its continuous function extension and system maintain requirements. Many software systems which were developed based on Model1 have been found to have many disadvantages, and these shortcomings baffle the reuse of the software systems. In this paper, a software-reuse method is being put forwards to evolve a system which was designed based on Model1 to another one which will base on SSH2, the suitable system architecture for new requirements. Firstly Model1 is analyzed to show its advantages and disadvantages. Then an integrated SSH2 framework is presented with several considerations from programmers view to finish the reuse work. Afterward five conversion rules are proposed in detail to reach the reuse goal. These presented rules' profits from slicing and component technology combined with object-oriented development method and each rule fits to a different reused-scenario. Furthermore a typical example is given to illustrate the reuse process to show the rules efficiency. Finally the conclusion including some discussions and the future research work are introduced.

[1]  Giuseppe Visaggio,et al.  Extracting reusable functions by program slicing , 1996 .

[2]  Meir M. Lehman,et al.  Software evolution - Background, theory, practice , 2003, Inf. Process. Lett..

[3]  Mai Jiang,et al.  The design of E-commerce system architecture based on Struts2, Spring and Hibernate , 2010, The 2nd International Conference on Information Science and Engineering.

[4]  Giuseppe Visaggio,et al.  Extracting Reusable Funtions by Flow Graph-Based Program Slicing , 1997, IEEE Trans. Software Eng..

[5]  Sebastian Spaeth,et al.  Code Reuse in Open Source Software , 2008, Manag. Sci..

[6]  Craig Walls,et al.  Spring in Action , 2004 .

[7]  Jiafu Tang,et al.  A model and its algorithm for software reuse optimization problem with simultaneous reliability and cost consideration , 2011 .

[8]  Thomas A. Henzinger,et al.  Interface theories with component reuse , 2008, EMSOFT '08.

[9]  Mehmet Kaya,et al.  A New Cohesion Metric and Restructuring Technique for Object Oriented Paradigm , 2012, 2012 IEEE 36th Annual Computer Software and Applications Conference Workshops.

[10]  Elina Kalnina,et al.  Comprehensive System for Systematic Case-Driven Software Reuse , 2010, SOFSEM.

[11]  Jianjun Zhao,et al.  A slicing-based approach to extracting reusable software architectures , 2000, Proceedings of the Fourth European Conference on Software Maintenance and Reengineering.

[12]  Mao Kai Software Reused Model Design Based on Aspect-oriented , 2007 .

[13]  Tao Zhu,et al.  The Implement of Web Applications Based on Struts & Hibernate & Spring , 2010 .

[14]  Deng Yue,et al.  Based on SOA architecture and component software reuse architecture research , 2010, 2010 2nd IEEE International Conference on Information Management and Engineering.

[15]  Hongji Yang,et al.  Successful Evolution of Software Systems , 2002 .