SIGCSE 2001 DC Application -- Matthew C. Jadud
Research Dissertation

Prob. Solv.


mcj SIGCSE 2001 DC Application -- Matthew C. Jadud

SIGCSE 2001 DC Application -- Matthew C. Jadud


My work to date has involved the evolution of an instructional theory called TeamStorms, its name inspired by the work of Seymour Papert and the strong team-based element to the types of instruction it prescribes. An instructional theory is largely prescriptive, attempting to identify conditions to be encountered in the educational process, and methods for handling these situations and achieving desirable learning outcomes. This theoretical work forms the foundation for my explorations in the introductory computer science classroom, where I am primarily interested in the evolution of student notions of problem solving and its role in learning programming and algorithmic processes in computer science.


Computer Science is a poorly named field, and I and if you ask 5 computer scientists to define their field, you'll get six different answers. It surely is not the study of the ``computer,'' the tool we use, but it is perhaps a study of computation. Algorithms and languages play an important role in our understanding and definition of computation, as does a certain amount of mathematics. But much of this is content and process that can be downloaded from the WWW and absorbed. When and where in this description do we talk about the ability to reason over these domains, bring them together, take them apart--in short, think like a computer scientist--and how do we teach that?

I am going to call this process of reasoning about algorithms and other content in the computer science domain problem solving. I most certainly do not mean ``Problem solving in Java,'' or any other shallow notion of what it means to write 50 lines of code to answer yet another homework problem. Problem solving is a complex, metacognative skill that draws from a students knowledge and comprehension of a subject, their ability to apply and analyze material in their efforts, and synthesize new representations and solutions to a given problem or learning challenge. In my mind, a computer scientist is a professional problem solver with a specialized yet ecclectic background in math, logic, linguistics, psychology, and engineering.


Over the past two years I have made use of the LEGO Mindstorms robotics kit in a variety of educational settings at Indiana University - from undergraduate non-major courses in the computer science department to graduate courses in the School of Education. With every class I have continued to evolve my notion of what it means to have a problem solving based pedagogical approach in the computer science classroom.

My research will present a compelling picture of the novice problem solver, and how we as experts and practitioners of computer science can better structure learning experiences for students. This information is critical in our aiding them in becoming better thinkers and problem solvers, and therefore, better computer scientists.

Research Questions

I am currently interested in two questions which I believe are key to my study. First, what are student perceptions of problem solving, and how do their ideas change and evolve over time? Then, with an understanding of student perceptions and ideas, what implications do these findings have for introductory computer science instruction?

Research Study Overview

I intend to obsere students engaged in challenging, authentic tasks, analyze artifacts and documents generated during this process, and use interviews to follow up and examine how student's ideas about problem solving and computer science grew and changed over the course of a semester.

I have evolved CSCI A290: Introduction to LEGO Robotics into a laboratory for the exploration of problem solving in the introductory classroom. Students explore concepts in computer science and robotics using the LEGO Mindstorms Robotics Invention System, a very affordable robotics platform suitable for teaching and research. Working with the kit in a computer science context provides powerful learning opportunities for students, and therefore a more compelling environment for study. [PA90], [RK96]

Coordinating the design of hardware and software to control it is a holistic design experience that many students never see until an upper-level software engineering course.
The kit provides a grounding for abstract concepts they encounter as they program their robotic creations. Looping constructs, the importance of variables scope, etc. become ``real'' to the students when played out in the world they live in.
Working with the kits is exciting to the students, and motivation plays an important role in learning. More material can be covered when students are excited about doing it.[Bal96], [CHL96]

Throughout the semester, students are required to keep weekly journals of their experience, and encouraged to focus on the ``why'' of their work as much as the ``how'' and ``what.'' This kind of reflection is a critical part of the learning process, and is a great source of feedback for the instructor.[RN98] Similarly, they are encouraged to document their work through the use of still pictures and video, which provides yet another source of artifacts for study and reflection.

Students will be asked to participate in a voluntary interview after the semester comes to an end. This interview is to explore how their ideas about problem solving and its role in computer science have changed, if at all. The goal of these interviews is to build an understanding of how the students' perceptions of problem solving changed in the light of the programming and construction challenges they faced over the semester.

Previous and Related Work

Papert's work on constructivist learning and the role of exploration in learning computer science is very applicable.[Pap80] Fred Martin's work on the evolution of the MIT 6.120 course on robotics design (culminating in what have now become infamous ``ping-pong ball'' gathering competitions) applies here, as does work in the field of engineering education on the role of design experiences in the curriculum.[Mar94], [CHL96] Reigeluth, Nelson, and Jonassen discuss different aspects of instruction theory in the constructivist, collaborative problem solving, and general contexts, all of which are applicable to refining TeamStorms. [Rei99], [Nel99], [Jon91] Computer science education and math education provides models and ideas that apply, although I have not encountered a rich theory of ``problem solving'' discussed at length or in detail in such literature. [Jon97], [Cas97] Methodologies presented in texts such as How to Design Programs[FFFK00], Karel the Robot[REP00], and Problem Solving and Programming Concepts [Spr98] all present approaches to teaching problem solving in the introductory computer science context, but all typically take a fairly constrained view of problem solving in their approach.

Current Status and Interim Conclusions

Human subjects approval for use of data from the Fall 2000 semester is pending. While the question and focus of the research may change slightly in light of observations and analysis of data from this semester, it is clear that students have very naive notions of what it means to solve problems in the large, and making reflection explicit in the problem solving process has a significant effect on their thinking. But, they also turn around after being given an explicit methodology and justification in the form of example and experience and make value-laden judgements of those methods. Comments akin to
``I don't like method XYZ because <insert arcane reason here>,'' or
``Even though we used method XYZ to solve problems I couldn't solve otherwise, I still prefer trial and error,''
are made in one form or another; sometimes explicitly, or sometimes implied in spoken dialog or their writings. When I hear this, something deep inside of me wants to jump up and down and shout ``WHY?!?,'' closely followed by thoughts like ``Where did I go wrong?'' and ``Where is the Ben and Jerry's?'' For these reasons (and others) I continue to believe that understanding the complex relationship between content, learning style, and instructional methodology from the student perspective is important and key to better understanding how to create good design experiences with rich learning outcomes for our students.


Doug Baldwin.
Discovery learning in computer science.
Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education, pages 222-226, 1996.

Patrick J. Casey.
Computer programming: A medium for teaching problem solving.
Computers in the Schools, 13(1):41-51, 1997.

Curtis Carver, Richard A. Howard, and William D. Lane.
A methodology for active, student-controlled learning: motivating our weakest students.
Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education, pages 195-199, 1996.

Matthias Felleisen, Robert Findler, Matthew Flatt, and Shriram Krishnamurthi.
How to Design Programs., August 31, 2000 2000.

David H. Jonassen.
Evaluating constructivistic learning.
Educational Technology, pages 28-37, September 1991.

David H. Jonassen.
Instructional design models for well-structured and ill-structured problem-solving learning outcomes.
Educational Technology Research and Development, 45(1):65-94, 1997.

Fred Martin.
Circuits to Control: Learning Engineering by Designing LEGO Robots.
PhD thesis, Massachusetts Institute of Technology, June 1994.

Laurie Nelson.
Instructional Design Theory and Models, volume 2, chapter Collaborative Problem Solving, pages 241-267.
Lawrence Erlbaum Associates, 1999.

J.P. Penny and P.J. Ashton.
Laboratory-style teaching of computer science.
In Proceedings of the twenty-first SIGCSE technical symposium on Computer science education, pages 192-196, 1990.

Seymour Papert.
Mindstorms: Children, Computers, and Powerful Ideas.
Basic Books, Inc., New York, New York, 1980.

Charles M. Reigeluth.
Instructional Design Theory and Models, volume 2, chapter What is Instructional-Design Theory and How Is It Changing?, pages 5-29.
Lawrence Erlbaum Associates, 1999.

Mark Stehlik Richard E. Pattis, Jim Roberts.
Karel the Robot: A Gentle Introduction to the Art of Programming, Second Edition.
John Wiley and Sons, Inc., New York, NY, 2 edition, 2000.

Mitchel Resnick and Yasmin B. Kafai, editors.
Constructionism in Practice.
Lawrence Erlbaum Associates, Inc., Mahwah, NJ, 1996.

Manuel D. Rossetti and Harriet B. Nembhard.
Using cooperative learning to activate your simulation classroom.
In Proceedings of the 1998 conference on Winter simulation, pages 67-76, 1998.

Maureen Sprankle.
Problem Solving and Programming Concepts.
Prentice Hall, 1998.

About this document ...

SIGCSE 2001 DC Application

This document was generated using the LaTeX2HTML translator Version 98.1p1 release (March 2nd, 1998)

Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based Learning Unit, University of Leeds.

The command line arguments were:
latex2html -split 0 -no_subdir SIGCSE2001-v2.tex.

The translation was initiated by Matthew Jadud on 2000-11-18

This page last modified on Saturday, November 18, 2000 at 6:40:31 PM
Matt Jadud