DBERG PhD Dissertations:
When professional programmers begin designing programs, we know they often spend time away from a computer, using tools such as pens, paper, and whiteboards as they discuss and plan their designs (Petre, van der Hoek, & Baker, 2010). But, we’re only beginning to analyze and understand the complexity of what happens during such early-stage design work. And, our accounts are almost exclusively about what professionals do. For all we’ve begun to understand about what happens in early-stage software design, we rarely apply the same research questions and methods to students’ early-stage design work. This dissertation tries to redress that imbalance. I present two case studies — derived from my 10 study participants — of electrical engineering (EE) students designing computer programs in a second-semester computer programming course.
In study 1, I show how analyzing a student’s code snapshot history and conducting clinical interviews tells us far more about her design trajectory than either method could alone. From that combined data I argue students’ overall software designs can be consequentially shaped by factors — such as students’ stances toward trusting their code or believing a current problem is a new instance of an old one — that existing code snapshot research is poorly equipped to explain. Rather, explanations that add non-conceptual constructs including affective state and epistemological stance can offer a more complete and satisfactory account of students’ design activities.
In study 2, I argue computer science and engineering education should move beyond conceptual-knowledge and concept deficit explanations of students’ difficulties (and capabilities) in programming. I show that in doing design students do, say, write, and gesture things that:
Thesis in PDF format.