Recently, the phenomenon of "software aging", one in which the state of a software system gradually de-grades with time and eventually leads to performance degradation or crash/hang failure, has been reporte...Recently, the phenomenon of "software aging", one in which the state of a software system gradually de-grades with time and eventually leads to performance degradation or crash/hang failure, has been reported. The agingphenomenon is ubiquitous in all kinds of software systems and hard to eliminate thoroughly. A proactive techniquecalled "software rejuvenation" has been proposed[13] to counter the aging problem and increase the software availabili-ty. In this paper, we systematically investigate the basic motivation, concept and development of software rejuvena-tion, and then, detailedly analyze the main research work on it. At last, a prospect about the future research direc-tions is outlined.展开更多
It is well acknowledged that quality of software has a higher priority than the performance and functions of software. One of the ways to get high-quality software is to get more efficient software-testing techniques....It is well acknowledged that quality of software has a higher priority than the performance and functions of software. One of the ways to get high-quality software is to get more efficient software-testing techniques. Theory and technology of software quality assurance are an important part of software developing methodology and software engineering. Software testing plays a key role in software quality assurance. The purpose of the essay is to search for new software testing method and to solve some problems in testing of object-oriented program. We also try to amend some deficiency in the traditional test method for structured programs. By the idea of program slicing, we can disassemble the source code of a program into several slices following certain rules. Instead of testing the whole program, we can test these slices. We can also guarantee the equivalence of the two ways. Testing on the base of program slicing has several advantages than the one simply using data flow analysis and control flow analysis. The first, because a program equals to the union of its slices, to test all of the slices makes a complete test of the program, and to test each slice which is related to the interested variables is actually a complete test of the requirement test. Then we solve the problem of sufficiency in traditional structured program testing and object-oriented program testing as well. The second, program slicing technique can be applied to the testing of both structured programs and object-oriented ones.展开更多
文摘Recently, the phenomenon of "software aging", one in which the state of a software system gradually de-grades with time and eventually leads to performance degradation or crash/hang failure, has been reported. The agingphenomenon is ubiquitous in all kinds of software systems and hard to eliminate thoroughly. A proactive techniquecalled "software rejuvenation" has been proposed[13] to counter the aging problem and increase the software availabili-ty. In this paper, we systematically investigate the basic motivation, concept and development of software rejuvena-tion, and then, detailedly analyze the main research work on it. At last, a prospect about the future research direc-tions is outlined.
文摘It is well acknowledged that quality of software has a higher priority than the performance and functions of software. One of the ways to get high-quality software is to get more efficient software-testing techniques. Theory and technology of software quality assurance are an important part of software developing methodology and software engineering. Software testing plays a key role in software quality assurance. The purpose of the essay is to search for new software testing method and to solve some problems in testing of object-oriented program. We also try to amend some deficiency in the traditional test method for structured programs. By the idea of program slicing, we can disassemble the source code of a program into several slices following certain rules. Instead of testing the whole program, we can test these slices. We can also guarantee the equivalence of the two ways. Testing on the base of program slicing has several advantages than the one simply using data flow analysis and control flow analysis. The first, because a program equals to the union of its slices, to test all of the slices makes a complete test of the program, and to test each slice which is related to the interested variables is actually a complete test of the requirement test. Then we solve the problem of sufficiency in traditional structured program testing and object-oriented program testing as well. The second, program slicing technique can be applied to the testing of both structured programs and object-oriented ones.