We were given the task to write a term paper on how testing is carried out in requirement change.
This technique is easy to apply, but can be pointlessly costly, particularly when changes involve only a little piece of the software.
In this paper, we will discuss about regression testing.
A process and technique for discriminating regression testing of a system that tells which test modules of a test set must be re-tested after a alteration to the software scheme. When we make a software system and if the customer demands a change or wants something else from us then we will change that part of the software and test it again and again until we get the desired results or when the customer becomes satisfied from the change. In this paper we will tell how testing is carried out when a customer demands a change. Regression test selection (RTS) method can be used to reduce the cost of re testing a software. It has to be performed for the validation of data modification. A variety of test cases have to be urbanized to do the failure testing.
In regression testing or failure testing we check that the software is still working perfectly without any problem. That is, it should work perfectly and accurately like it worked before the changes made in the project. During the protection of a software or as the software changes, the failure testing is the costly but certainly needed job.
Sommerville, Ian said in this book \"Software Engineering\" that Regression testing includes executing check sets that have productively run after changes have been made to the scheme. The failure test notify that the changes have not made new errors in the software and that the latest change or program acts as likely with the accessible code.
After changing software, programmer want to know that original code has not been exaggerated. Jung-Min Kim said in his paper that:
One restriction of this technique is that it makes failure testing as a one-time action than as the nonstop procedure.
In case, software frequently need more amends to a system with failure testing combine between some number of changes. In perform, many companies combine changes and then regression test on a monthly, weekly, or even daily basis.
Our theory is that the sum of alternation made between regression testing highly affect the cost and advantages of different regression test selection techniques. We think that a specific technique will be lower when it comes to cost and will be more easy to handle and manage. This is because when they make a larger or less test cases in less cost then it will take less time in finding faults.
In paper, the author addressed the testing environment and said that Hoffman, Brown and Hoffman, Ziegler, Grasso, and Burgermeister deal with the difficulty of test atmosphere and computerization of the regression testing process. Their aim is to get better methods and protection costs through efficient regression testing. They tried to define a general regression test process and tried to use scripts to automatically generate and execute test cases. Lewis, Hartmann nd Robson, Taha, et al., and Harrold et al. where the people who focused on the problem of test suite management. Every time changes occurs, piece of the test cases will be selected from the original test cases, part of the test cases are out of date and need to be deleted, and for the new operations, new test cases should be added. Finally, the tool will repair all the customized or new test cases and data into the test library. Manage the test suites by using data flow analysis tool to divide the test cases into significant, not relevant and not so valid classes. Thus, the cost of a program following alteration will be less.
“A Tool Supported Approach to Perform Efficient Regression Testing of Web Services” authors obtained a tool for carry out regression testing of internet services. In this paper, purposeful and non-useful testing is done by using WSDL and Regression testing is done by recognizing the changes made. Authors recognized, classified and detained the web service regression testing needs into three different categories, namely, changes in WSDL, changes in code and carefully testing again the web service operations. This paper projected tool that can used to discover the accurately which operations are changed and how to use only those changed operations to reduce regression testing.
The author Jaspreet Singh Rajal,and Shivani Sharma  told us about different regression testing techniques. Software preservation is an action which consist of improvements, bug corrections, management and deletion of existing characteristics. These changes may cause the system to work wrong. Therefore, Regression Testing becomes essential.
Regression Testing can be carried out using following techniques. Retest All is one of the technique for regression testing in which all the tests cases and test scenarios will be executed. This is very luxurious as it requires more time and resources due to implementation of needless tests. When the change to a scheme is slight, this approach would be slightly inefficient . Regression Test Selection is a technique in which Instead of re-executing the entire test cases, it is better to select a part of test case to be run. Test cases selected can be classify as
a) Reusable Test Cases
b) Obsolete Test Cases.
In paper \"Understanding Regression Testing Techniques\" explained regression testing is completed in the maintenance stage of the software improvement life cycle to retest the software for the changes it has undergone. Around 50% of the software cost is involved in the maintenance stage. Thus, investigators are working hard to come up with best results by developing new regression testing techniques so that the spending made in this phase can be lessen to some amount.
The author said in his paper “Qualitative and Quantitative study for requirement Change Management Model “that the reason of qualitative study for condition change administration is to find out unusual issues linked with suggested model during its practical implementation in industry. This report presents two techniques to examine data, one is qualitative and other is quantitative approach.They have used these techniques for justification of our proposed model. Main objective of this model is to help requirement engineers to control change in SRS. Research depends on data analysis. The result for the experiment is that in which null assumption will be discarded after performing experiment. He said that his proposed model will be more supportive to deal with change in requirements during development life cycle of product in market driven environment. He also suppose that data gathered after examine the research will also be helpful for researcher to remove shortage in proposed model and increase its performance. This experiment will enhance information of subjects about quantitative research and change management in SRS. There are certain pressure through which performance of experiment could be reduced. Requirement engineers should have some knowledge to treating requirements so that these threats could be decreased and performance of experiment can increases.
The author said that helpful regression testing is a exchange between then number of regression tests needed and the cost. The better the number of regression tests, the more absolute the agenda revalidation. However, this also needs more budget and more resources which may not be reasonable in practice. Doing lesser regression tests may be less expensive, but has the budding of not being able to make sure that all the inherited features still behave as expected, except where changes are anticipated. In this paper, we propose a amendment-based method followed by test set minimization or prioritization to determine which regression
tests should be rerun.
Soren Lauesena and Otto Vinterb  writes that developments usability testing are extremely helpful procedures. Looking at the customer needs deficiency, we were able to recognize or discover cost-effective prevention techniques. In dissimilarity, categorize the bugs according to the foundation of the defect, the kind of obligation dishonored, etc. did not help identify or invent cost-effective prevention techniques. Selecting the best methods involves many factors, some of them scientific, others more biased. Estimate the hit-rate of a method is helpful, but is only one of the factors. For some procedure, there are huge less important advantages in improved market value and improved in general overall development, as observed for our chosen techniques. A technique may be very helpful although it cannot be acceptable by defect prevention. A lot of advantages are important to convince developers to use a new technique. However, the value of a technique depends on the kind of project. Developers cannot handle more than one or two new techniques at a time.
Bhatti et al inspected the contact of requirement change with respect to the development phase and examined that more modification are made during maintenance phase.
Also realized that changes made in requirement phase and changes made in design phase have major relationship and this important relation shows that by increase in change requests during requirement analysis phase the requests would also increase in Design phase. Changes made in design phase and changes requested in testing phase also have important relationship and this major relation portrays that if more changes are made in design phase then the changes in testing phase would be reduced.
In paper  the author James S. O\'Neal, Doris L. Carver describe that to decide the contact of a requirement change on software development presented impact
investigation method based on requirement traceability. They made classes of requirement changes by recognizing
quality of different work products and traces. Then they made a list of those requirement classes according to their prospective contact.
Hyunsook Do, Gregg Rothermel  conclude that Experimental evaluations of regression testing techniques rely on cost-benefit models. Our model smooth the progress of the examination and comparison of techniques along dimensions that have not previously been possible, and our observed results indicate that this view has sensibly suggestions for users and researchers of techniques.
Although the cost-benefit model that they presented captured specific testing-related factors relative to just one regression testing process, it can be adapted to include other factors and apply to other processes, and our future work will consider such versions.
In the study reported in this paper, we estimated regression testing methods using systems of size (7K - 80K) and relatively small proceeds estimates. Program size, however, does not affect the results. Larger systems, will also be related with higher incomes than those considered here, and we expect that in such cases, the cost benefits of regression testing techniques will be much greater. They also expect that through long-lasting research in this area, we can bring the advantages of better cost models and extended experimental understanding to organizations that create such systems.
From all the research paper be concluded that the main goal is to discover better methods and techniques to make regression test easy and find ways to reduce the cost through efficient regression testing. Useful and non-useful testing is done by using WSDL and regression testing is done by recognizing the changes made. They also projected tool that can used to discover the accurately which operations are changed. In this document, regression testing and test case techniques are presented. There are many features on the basis of which test case order can be made. It includes customer needs, history based, cost examination, fault revealing, code reporting etc. This paper discussed techniques of regression testing, test case prioritization, importance of regression testing and its scope. Modification in conditions for a product during its expansion can be of three types, in first type requirement could be add in Software Requirements Specification (SRS), secondly existing requirement could change and in third case requirement could be deleted. There are many problems that should be keep in mind while altering in conditions like traceability, dependency among requirements, prioritization of requirements and decision making to implement that change. We first choose tests from the regression set that perform any of the changes in the old program and call this technique as a modification-based test selection technique. Tester cannot handle more than one or two new techniques at a time. If you first introduce the best single technique, then the next best and so on, you end up with an optimal combination of techniques.
...(download the rest of the essay above)