| |
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 ]
|
|