Date of Award:

5-2025

Document Type:

Thesis

Degree Name:

Master of Science (MS)

Department:

Computer Science

Committee Chair(s)

John Edwards

Committee

John Edwards

Committee

Steve Petruzza

Committee

Shah Muhammad Hamdi

Abstract

Problem decomposition—the ability to break complex problems into simpler parts—is a critical skill for computer programming that many beginning students struggle to develop. This research examines how using natural language to describe program functionality can help students develop better problem-solving approaches.

We created a tool called ”Natural Language Functions” (NLFs) that allows students to write descriptions of what they want their code to do in plain English, which then generates working Python functions. We studied how students used this tool compared to students who solved programming problems in traditional ways.

Our findings show that students who used the NLFs tool created approximately three times as many functions in their solutions compared to students who didn’t have access to the tool. This indicates significantly more decomposition behavior. Additionally, we observed that students using NLFs shifted from verbally describing their problem-solving process to writing it down in their function descriptions, suggesting that the act of writing prompts serves a similar purpose to speaking aloud when working through programming problems.

These results suggest that having students articulate functionality in natural language gives them an advantage when breaking down problems and building solutions. The NLF approach could serve as a valuable teaching tool that encourages structured thinking through written expression, potentially improving learning outcomes by making students’ thought processes more explicit.

Checksum

df2c8fca66894d9372292a8d07808da1

Creative Commons License

Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.

Share

COinS