114

ISBN : 978-81-963532-2-3 (E-Book) RegressionTesting Regressiontestingdoesnotbelongtoeitherunittest,integrationtest,orsystemtesting.Instead,it is a separate dimension to these three forms of testing. The functionality of regression testinghasbeen discussedearlier. SOFTWAREMAINTENANCE NecessityofSoftwareMaintenance Softwaremaintenanceisbecominganimportantactivityofalargenumberofsoftwareorganizations. This is no surprise, given the rate of hardware obsolescence, the immortality of asoftware product per se, and the demand of the user community to see the existing softwareproducts run on newer platforms, run in newer environments, and/or with enhanced features.Whenthehardwareplatformischanged,andasoftwareproductperformssomelowlevelfunctions, maintenance is necessary. Also, whenever the support environment of a softwareproduct changes, the software product requires rework to cope up with the newer interface. Forinstance, a software product may need to be maintained when the operating system changes.Thus, every software product continues to evolve after its development through maintenanceefforts. Therefore it can be stated that software maintenance is needed to correct errors, enhancefeatures,port the softwareto newplatforms, etc. Typesofsoftwaremaintenance Therearebasicallythree types ofsoftwaremaintenance. Theseare:  Corrective: Corrective maintenance of a software product is necessary to rectify the bugsobservedwhile thesystem is in use.  Adaptive: A software product might need maintenance when the customers need theproduct to run on new platforms, on new operating systems, or when they need theproductto interfacewithnewhardwareor software.  Perfective: A software product needs maintenance to support the new features that userswant it to support, to change different functionalities of the system according to customerdemands,orto enhancetheperformanceof thesystem. Problemsassociatedwithsoftwaremaintenance Software maintenance work typically is much more expensive than what it should be and takesmore time than required.In software organizations, maintenance workismostly carried outusing ad hoc techniques. The primary reason being that software maintenance is one of the mostneglected areas of software engineering. Even though software maintenance is fast 109 Software Engineering Keerthana P, Manasa KN, Ganga D Bengal

115 Publizr Home


You need flash player to view this online publication