Department of Computer and Information Science

 

Computer Science Seminar Series

Teaching of Algorithms to Introductory Programming Students


3:00 p.m. Wednesday, March 11, 2009

Weir Hall, Room 235

Larry Morell
Professor
Department of Computer and Information Science
Arkansas Tech University


Abstract:

All introductory students need to learn basic algorithmic forms and how to write algorithms using these forms. To write an algorithm requires the student to learn some model of computation and how to express solutions within that model. The typical model of computation used in introductory courses is computer-based, with the instructor discussing algorithms in terms of modifying memory structures and presenting these algorithms in some form of pseudocode. Difficulties with this approach to teaching algorithms are immediately apparent. A computer-based model of computation is complex and aspects of the model are learned in tandem with the language constructs that exploit them. Both the language and the model must be learned simultaneously for either to be understood. Students' thinking is trained to begin problem solving by focusing on the computer-based model of computation they have (hopefully) learned. Algorithms written in pseudocode may lack precision, are not executable, and provide little to no support for testing.

This talk discusses a model of computation based on stickynotes which is easy for novice programming students to learn. The talk also describes how this model is used in an introductory course. Students are taught how to solve problems using this stickynote model and then are introduced to an executable algorithm language called Genesis which implements this model. Within six weeks students are writing algorithms of significant complexity. The rest of the semester focuses on translating these algorithms into a procedural language. Testing is supported by comparing output of the program with output generated from the algorithm.


Biography:

Dr. Morell is a professor in the department of Computer and Information Science at Arkansas Tech University, having recently stepped down as serving as department head for the previous ten years. During that time the department grew from a single bachelor's degree in CS to include a bachelor's degree in IS and an associate's, bachelor's and master's degree in IT. He has taught computer science at six different institutions since 1976, including Hampton University, the College of William and Mary, the University of Maryland (where he obtained his Ph.D. in Computer Science in 1983), and Rutgers University (where he obtained an M.S. in Computer Science in 1976). He earned the bachelor's degree in 1974 from Duke University, double majoring in Mathematics and Computer Science. While pursuing his Ph.D in program testing, he worked at the Naval Research on the A7 Software Cost Reduction project. Dr. Morell's research interests focus on program testing, program analysis, the design of systems to aid in the instruction of algorithm design and programming, and most recently the design of interpreters. He has authored or co-authored over 30 articles published in professional journals and refereed conferences.


[ Home | Site Map ]