An independent software-modification method

After parts of a program have been modified to incorporate specification changes or functional enhancements, regression testing has generally been necessary to confirm that the other parts of the program still operate according to original specifications, since the modifications may have affected those parts. It has been reported that program slicing techniques extracting the parts of a program that perform calculations both for the functions to be modified and for functions not to be modified enable modifications to be made without influencing the operations of non modified functions. Such techniques, though, cannot prevent the non modified parts from influencing the modified parts. We analyze the influence of non modified parts on modified parts and then present an independent modification method that automatically eliminates such influence and that of course also prevents the non modified functions from being affected by the modifications. This method makes it possible for a programmer to modify a program by concentrating only on those parts that perform calculations related to the functions to be modified. In addition, because testing performed only for the modified parts gives the same results as does testing the entire program, this method makes it unnecessary to test non modified functions.

[1]  Jingde Cheng,et al.  Decomposition Slicing Based on Program Dependence Graph , 1992 .

[2]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[3]  Keith Gallagher,et al.  Using program decomposition to guide modifications , 1988, Proceedings. Conference on Software Maintenance, 1988..

[4]  Rajiv Gupta,et al.  An approach to regression testing using slicing , 1992, Proceedings Conference on Software Maintenance 1992.

[5]  Mark Weiser,et al.  Program Slicing , 1981, IEEE Transactions on Software Engineering.

[6]  Gregg Rothermel,et al.  A framework for evaluating regression test selection techniques , 1994, Proceedings of 16th International Conference on Software Engineering.

[7]  David W. Binkley,et al.  Interprocedural slicing using dependence graphs , 1990, TOPL.

[8]  Hareton K. N. Leung,et al.  Comments on Program Slicing , 1987, IEEE Trans. Software Eng..

[9]  Paul W. Oman Maintenance tools , 1990, IEEE Software.

[10]  Hareton K. N. Leung,et al.  Insights into regression testing (software testing) , 1989, Proceedings. Conference on Software Maintenance - 1989.

[11]  Keith Brian Gallagher,et al.  Using Program Slicing in Software Maintenance , 1991, IEEE Trans. Software Eng..

[12]  Keith Gallagher,et al.  A program decomposition scheme with applications to software modification and testing , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.