Characterizing software components using evolutionary testing and path-guided analysis

dc.contributor.advisorHill, James H. (James Haswell)
dc.contributor.authorMcNeany, Scott Edward
dc.contributor.otherRaje, Rajeev
dc.contributor.otherAl Hasan, Mohammad
dc.contributor.otherFang, Shiaofen
dc.date.accessioned2013-12-16T16:07:47Z
dc.date.available2013-12-16T16:07:47Z
dc.date.issued2013-12-16
dc.degree.date2013en_US
dc.degree.disciplineDepartment of Computer & Information Scienceen_US
dc.degree.grantorPurdue Universityen_US
dc.degree.levelM.S.en_US
dc.descriptionIndiana University-Purdue University Indianapolis (IUPUI)en_US
dc.description.abstractEvolutionary testing (ET) techniques (e.g., mutation, crossover, and natural selection) have been applied successfully to many areas of software engineering, such as error/fault identification, data mining, and software cost estimation. Previous research has also applied ET techniques to performance testing. Its application to performance testing, however, only goes as far as finding the best and worst case, execution times. Although such performance testing is beneficial, it provides little insight into performance characteristics of complex functions with multiple branches. This thesis therefore provides two contributions towards performance testing of software systems. First, this thesis demonstrates how ET and genetic algorithms (GAs), which are search heuristic mechanisms for solving optimization problems using mutation, crossover, and natural selection, can be combined with a constraint solver to target specific paths in the software. Secondly, this thesis demonstrates how such an approach can identify local minima and maxima execution times, which can provide a more detailed characterization of software performance. The results from applying our approach to example software applications show that it is able to characterize different execution paths in relatively short amounts of time. This thesis also examines a modified exhaustive approach which can be plugged in when the constraint solver cannot properly provide the information needed to target specific paths.en_US
dc.identifier.urihttps://hdl.handle.net/1805/3775
dc.identifier.urihttp://dx.doi.org/10.7912/C2/2308
dc.language.isoen_USen_US
dc.subjectpath guided software performance testingen_US
dc.subjectevolutionary testingen_US
dc.subjectsoftware performance characterizationen_US
dc.subjectgenetic algorithmsen_US
dc.subject.lcshGenetic algorithms -- Researchen_US
dc.subject.lcshEvolutionary programming (Computer science) -- Researchen_US
dc.subject.lcshOperations research -- Analysisen_US
dc.subject.lcshEvolutionary computationen_US
dc.subject.lcshFunctions of complex variablesen_US
dc.subject.lcshCombinatorial optimizationen_US
dc.subject.lcshMaxima and minima -- Researchen_US
dc.subject.lcshApplication software -- Developmenten_US
dc.subject.lcshComputer software -- Testing -- Researchen_US
dc.subject.lcshApplication softwareen_US
dc.titleCharacterizing software components using evolutionary testing and path-guided analysisen_US
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Thesis_FinalCombined.pdf
Size:
909.51 KB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.88 KB
Format:
Item-specific license agreed upon to submission
Description: