Fast test suite-driven model-based fault localisation with application to pinpointing defects in student programs

dc.contributor.authorBirch, Geoffen_ZA
dc.contributor.authorFischer, Bernden_ZA
dc.contributor.authorPoppleton, Michaelen_ZA
dc.date.accessioned2021-08-20T07:08:45Z
dc.date.available2021-08-20T07:08:45Z
dc.date.issued2019
dc.descriptionCITATION: Birch, G., Fischer, B. & Poppleton, M. 2017. Fast test suite-driven model-based fault localisation with application to pinpointing defects in student programs. Software and Systems Modeling, 18:445-471, doi:10.1007/s10270-017-0612-y.
dc.descriptionThe original publication is available at https://link.springer.com
dc.description.abstractFault localisation, i.e. the identification of program locations that cause errors, takes significant effort and cost. We describe a fast model-based fault localisation algorithm that, given a test suite, uses symbolic execution methods to fully automatically identify a small subset of program locations where genuine program repairs exist. Our algorithm iterates over failing test cases and collects locations where an assignment change can repair exhibited faulty behaviour. Our main contribution is an improved search through the test suite, reducing the effort for the symbolic execution of the models and leading to speed-ups of more than two orders of magnitude over the previously published implementation by Griesmayer et al. We implemented our algorithm for C programs, using the KLEE symbolic execution engine, and demonstrate its effectiveness on the Siemens TCAS variants. Its performance is in line with recent alternative model-based fault localisation techniques, but narrows the location set further without rejecting any genuine repair locations where faults can be fixed by changing a single assignment. We also show how our tool can be used in an educational context to improve self-guided learning and accelerate assessment. We apply our algorithm to a large selection of actual student coursework submissions, providing precise localisation within a sub-second response time. We show this using small test suites, already provided in the coursework management system, and on expanded test suites, demonstrating the scalability of our approach. We also show compliance with test suites does not reliably grade a class of “almost-correct” submissions, which our tool highlights, as being close to the correct answer. Finally, we show an extension to our tool that extends our fast localisation results to a selection of student submissions that contain two faults.en_ZA
dc.description.urihttps://link.springer.com/article/10.1007/s10270-017-0612-y
dc.description.versionPublisher's version
dc.format.extent27 pages
dc.identifier.citationBirch, G., Fischer, B. & Poppleton, M. 2017. Fast test suite-driven model-based fault localisation with application to pinpointing defects in student programs. Software and Systems Modeling, 18:445-471, doi:10.1007/s10270-017-0612-y
dc.identifier.issn1619-1374 (online)
dc.identifier.issn1619-1366 (print)
dc.identifier.otherdoi:10.1007/s10270-017-0612-y
dc.identifier.urihttp://hdl.handle.net/10019.1/110895
dc.language.isoen_ZAen_ZA
dc.publisherSpringer
dc.rights.holderAuthors retain copyright
dc.subjectAutomated debuggingen_ZA
dc.subjectComputer programs -- Correctnessen_ZA
dc.subjectFault localization (Computer Science)en_ZA
dc.subjectDebugging in computer scienceen_ZA
dc.subjectEducational evaluation -- Computer programsen_ZA
dc.titleFast test suite-driven model-based fault localisation with application to pinpointing defects in student programsen_ZA
dc.typeArticleen_ZA
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
birch_fast_2017.pdf
Size:
1.72 MB
Format:
Adobe Portable Document Format
Description:
Download article
License bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: