Withdraw
Loading…
IMPROVING PROGRAMMING FEEDBACK BASED ON SOLUTION APPROACHES
Zhang, Tianyu
Loading…
Permalink
https://hdl.handle.net/2142/124787
Description
- Title
- IMPROVING PROGRAMMING FEEDBACK BASED ON SOLUTION APPROACHES
- Author(s)
- Zhang, Tianyu
- Issue Date
- 2023-05-01
- Keyword(s)
- Student Feedback, Assembly Programming, Static Analysis
- Abstract
- When faced with programming assignments, students adopt a diverse set of solution approaches. For example, tasked with writing an assembly subroutine to print a string centered in a fixed field, 40 students adopted around 15 different approaches. Debugging is difficult, especially for novice programmers. Although we leverage solution equivalence checking based on symbolic execution tools to identify failing inputs for a given student code, localizing errors can be difficult, as they are often dependent on a student’s chosen approach where tools have no a priori knowledge. Even for correct codes, students still need guidance to develop good coding habits, such as reusing code, avoiding spaghetti code, and so forth. In this thesis, we explore the potential to improve debugging feedback based on a student's chosen approach to a problem, both to help them localize errors and to improve their coding habits. Using student solutions in LC-3 assembly, we first develop a heuristic taxonomy of solution approaches by hand. To automate categorization of a student’s code, we propose our classifier of backbone structure, a reduced version of a code’s static control flow graph that reflects design ideas through high-level branching. For ten correct submissions, manual application of our classifier correctly categorizes seven submissions, with two false negative cases and one false positive case. Examination of a few incorrect codes suggests that our classifier can also generate feedback for incorrect solutions. Based on these results, we conclude that classification of a student’s approach can be useful both in generating feedback to students and for staff in helping parse students’ code structure and meaning, enabling staff to provide feedback more quickly and effectively.
- Type of Resource
- text
- Language
- eng
Owning Collections
Senior Theses - Electrical and Computer Engineering PRIMARY
The best of ECE undergraduate researchManage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…