🤖 AI Summary
This work proposes CDDRefactorER, an automated code refactoring approach that integrates cognitive load theory to address the challenges novice programmers face when comprehending code characterized by ambiguous identifiers, deep nesting, and disorganized structure. For the first time, cognitive-driven development (CDD) is introduced into code refactoring by synergizing large language models (e.g., gpt-5-nano and kimi-k2) with program analysis techniques, effectively reducing control-flow complexity while preserving behavioral and structural semantics. Empirical evaluation demonstrates a 54%–71% reduction in refactoring failure rates on the MBPP and APPS datasets. Furthermore, user studies reveal that novices achieve a 31.3% improvement in accurately identifying function functionality and a 22.0% gain in perceived structural readability, offering a robust cognitive scaffold for programming learners.
📝 Abstract
Novice programmers often struggle to comprehend code due to vague naming, deep nesting, and poor structural organization. While explanations may offer partial support, they typically do not restructure the code itself. We propose code refactoring as cognitive scaffolding, where cognitively guided refactoring automatically restructures code to improve clarity. We operationalize this in CDDRefactorER, an automated approach grounded in Cognitive-Driven Development that constrains transformations to reduce control-flow complexity while preserving behavior and structural similarity.
We evaluate CDDRefactorER using two benchmark datasets (MBPP and APPS) against two models (gpt-5-nano and kimi-k2), and a controlled human-subject study with novice programmers. Across datasets and models, CDDRefactorER reduces refactoring failures by 54-71% and substantially lowers the likelihood of increased Cyclomatic and Cognitive complexity during refactoring, compared to unconstrained prompting. Results from the human study show consistent improvements in novice code comprehension, with function identification increasing by 31.3% and structural readability by 22.0%. The findings suggest that cognitively guided refactoring offers a practical and effective mechanism for enhancing novice code comprehension.