Automatic novice program comprehension for semantic bug detection

dc.contributor.authorAde-Ibijola, Abejide Olu
dc.date.accessioned2016-09-13T12:22:41Z
dc.date.available2016-09-13T12:22:41Z
dc.date.issued2016
dc.descriptionA thesis submitted to the Faculty of Science, University of the Witwatersrand, Johannesburg, in fulfillment of the requirements for the Degree of Doctor of Philosophy in Computer Science April 2016en_ZA
dc.description.abstractAutomatically comprehending novice programs with the aim of giving useful feedback has been an Artificial Intelligence problem for over four decades. Solving this problem basically entails manipulating the underlying program plans; i.e. extracting and comparing the novice's plan to the expert's plan and inferring where the novice's bug is from. The bugs of interest in this domain are often semantic bugs as all syntactic bugs are handled by automatic debuggers --- built in most compilers. Hence, a program that debugs like the human expert should understand the problem and know the expected solution(s) in order to detect semantic bugs. This work proposes a new approach to comprehending novice programs using: regular expressions for the recognition of plans in program text, principles from formal language theory for defining the space of program plan variations, and automata-based algorithms for the detection of semantic bugs. The new approach is tested with a repository of novice programs with known semantic bugs and specific bugs were detected. As a proof of concept, the theories presented in this work are further implemented in software prototypes. If the new idea is implemented in a robust software tool, it will find applications in comprehending first year students' programs, thereby supporting the human expert in teaching programming.en_ZA
dc.format.extentOnline resource (162 leaves)
dc.identifier.citationAde-Ibijola, Abejide Olu 2016 Automatic novice program comprehension for semantic bug detection, University of Witwatersrand, Johannesburg, <http://wiredspace.wits.ac.za/handle/10539/21019>
dc.identifier.urihttp://hdl.handle.net/10539/21019
dc.language.isoenen_ZA
dc.subject.lcshSemantic computing
dc.subject.lcshBug--Detection
dc.titleAutomatic novice program comprehension for semantic bug detectionen_ZA
dc.typeThesisen_ZA

Files

Original bundle

Now showing 1 - 3 of 3
No Thumbnail Available
Name:
ElectronicAbstract.pdf
Size:
119 KB
Format:
Adobe Portable Document Format
Description:
No Thumbnail Available
Name:
AbejidePhDThesis.pdf
Size:
21.65 MB
Format:
Adobe Portable Document Format
Description:
No Thumbnail Available
Name:
ETDReceipt.pdf
Size:
51.59 KB
Format:
Adobe Portable Document Format
Description:

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description:

Collections