AN EMPIRICAL STUDY OF USING PROGRAM SLICING IN SOFTWARE TESTING AND MAINTENANCE
Tarek Abd-El Hafeez Abd-El Rahman;
Abstract
Software testing is a practical way of obtaining increased confidence in software. The ultimate goal of program testing would be guaranteeing that the program is correct. Program testing consists of generating a set of test cases according to some testing strategy and then checking the outputs produced by the test cases against the expected results.
Object Oriented (00) systems have been promoted for ease of design, coding and re-use. Much research effort has been focused on design methods and process metrics yet little has been expended on testing and maintenance aspects. It appears that 00 is promoted for its ease of design and use implying that testing and maintenance are easier or cheaper than in traditional, structural procedural systems.
It is assumed that 00 system testing is no different from traditional system testing. What is apparent from the literature is the fractured approach to testing 00 systems and the lack of methodology. There is also no formalism for measuring the adequacy of the test suite in respect of its fault finding abilities. This, however, is similar to traditional systems.
Software will undoubtedly undergo change after it is delivered to the customer. Change will occur because errors have been encountered, because the software must be adapted to accommodate changes in its external environment (e.g. a change required because of a new operating system or peripheral device), or because the customer requires functional or performance enhancements. Software maintenance focuses on "change " that is associated with error correction, adaptations required as the software's environment evolves, and enhancements brought about by changing customer requirements.
Program slicing, introduced by Mark Weiser in 1984, is a method for automatically decomposing programs by analyzing their data flow and control flow.
Object Oriented (00) systems have been promoted for ease of design, coding and re-use. Much research effort has been focused on design methods and process metrics yet little has been expended on testing and maintenance aspects. It appears that 00 is promoted for its ease of design and use implying that testing and maintenance are easier or cheaper than in traditional, structural procedural systems.
It is assumed that 00 system testing is no different from traditional system testing. What is apparent from the literature is the fractured approach to testing 00 systems and the lack of methodology. There is also no formalism for measuring the adequacy of the test suite in respect of its fault finding abilities. This, however, is similar to traditional systems.
Software will undoubtedly undergo change after it is delivered to the customer. Change will occur because errors have been encountered, because the software must be adapted to accommodate changes in its external environment (e.g. a change required because of a new operating system or peripheral device), or because the customer requires functional or performance enhancements. Software maintenance focuses on "change " that is associated with error correction, adaptations required as the software's environment evolves, and enhancements brought about by changing customer requirements.
Program slicing, introduced by Mark Weiser in 1984, is a method for automatically decomposing programs by analyzing their data flow and control flow.
Other data
| Title | AN EMPIRICAL STUDY OF USING PROGRAM SLICING IN SOFTWARE TESTING AND MAINTENANCE | Other Titles | دراسة تطبيقية لاستخدام أسلوب تجزئ البرنامج فى اختبار وصيانة البرامج | Authors | Tarek Abd-El Hafeez Abd-El Rahman | Issue Date | 2005 |
Attached Files
| File | Size | Format | |
|---|---|---|---|
| B17223.pdf | 2.67 MB | Adobe PDF | View/Open |
Similar Items from Core Recommender Database
Items in Ain Shams Scholar are protected by copyright, with all rights reserved, unless otherwise indicated.