Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2008.15-D.1.107

A Restructuring Technique of Legacy Software Systems for Unit Testing  

Moon, Joong-Hee (삼성전자 S/W연구소)
Lee, Nam-Yong (숭실대학교 컴퓨터학과)
Abstract
The maintenance of legacy software systems is very important in the field of a software engineering. In the maintenance, a regression test confirms the behavior preserving of the software which has been changed but most of regression tests are done in a system level and rarely done in a unit test level because there is no test case. This paper proposes how to modify legacy software systems and make unit test cases as an asset. It uses a technique with a specific module of a real software development project and analyzes test coverage results. After this, if a study about automatic restructuring techniques and a test case generation proceeds continuously, we can expect the big advance of legacy software systems maintenance.
Keywords
Legacy Software; Unit Test; Software Maintenance; Regression Test; Restructuring;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Yong Rae Kwon, Department of Computer Science Korea Advanced Institute of Science and Technology, 'Test Case Evaluation.'
2 Bret Pettichord, 'Design for Testability,' Pacific Northwest Software Quality Conference, Portland, Oregon, October, 2002
3 Harry M. Sneed, 'Reengineering for Testability,' Workshop on Software Reengineering(WSR), Bad Honnef, May, 2006
4 Girish Parikh, Independent Consultant, 'Exploring the world of software maintenance: what is software maintenance?,' ACM SIGSOFT Software Engineering Notes, Volume 11, Issue 2(April 1998), Page: 49-52
5 David Saff, Michael D. Ernst, M.I.T., 'Test factoring: focusing test suites for the task at hand,' Proceedings of the 27th international conference on Software engineering, Pages: 656 -656
6 Wikipedia Dictionary Available at URL: http://en. wikipedia. org/wiki/Unit_test, 2007년 6월
7 David Bernstein Available at URL: https://users.cs.jmu.edu/bernstdh/web/common/help/stubs-and-drivers.php, 2007년 5월
8 Wikipedia Dictionary Available at URL: http://en.wikipedia.org/wiki/Mock_Object, 2007년 6월
9 Wikipedia Dictionary Available at URL: http://en.wikipedia.org/wiki/Legacy_software, 2007년 6월
10 SF.net Available at URL: http://cunit.sourceforge.net/, 2007년 6월
11 Tom Mens, 'A Survey of Software Refactoring,' IEEE Transactions On Software Engineering, month 2004
12 Wikipedia Dictionary Available at URL: http://en.wikipedia. org/wiki/Regression_test, 2007년 6월
13 Bullseye Testing Technology Available at URL: http//www.bullseye.com, 2007년 6월
14 Wikipedia Dictionary Available at URL: http://en.wikipedia. org/wiki/Boundary_value_analysis, 2007년 6월
15 Wikipedia Dictionary Available at URL: http://en.wikipedia. org/wiki/ISO_9126, 2007년 9월