13 Feb 2017: Seminar by David Klappholz, Associate Professor of Computer Science at Stevens Institute of Technology, "Teaching High-Level Abstraction via Directed Active Learning"
STEMTEC Seminar Series, 2016
When: 13 Feb 2017
Who: David Klappholz
Teaching High-Level Abstraction via Directed Active Learning
Abstraction has repeatedly been recognized as a critical component of software development, and, therefore, of Computer Science (CS) education, and, more generally, of STEM education. Most published CS education work on the subject, however, deals with abstraction only at a low level, for example, at the level of classes and objects. But abstraction at higher levels is equally critical to software development. This was made clear when a faculty colleague proposed a software development project for my capstone course. The development of the software turned out to require the construction of a high-level abstraction that class members were unable to construct using active learning, and that had to be given to them in order for them to be able to develop the software. I have subsequently used the design of the same abstraction as an assignment in both junior- and senior-level undergraduate and entry-level MS courses, and have found that virtually all class members have been unable to construct the required abstraction. After learning that active learning often fails unless it is carefully directed, I have used the design of the software in question in a junior-level course, but, this time, have carefully directed the student teams’ active learning, and have achieved far greater success. Both the (high-level) abstraction problem and the directed active learning approach will be discussed.
David Klappholz is an Associate Professor of Computer Science at Stevens Institute of Technology, Hoboken, NJ, USA. He has a BS in Mathematics & Linguistics from MIT, and an MSEE and PhD in Computer Science from the University of Pennsylvania. He has done research in automata theory, parallel computer architecture, and compiler optimization. His current research interests are in Software Engineering and in Computer Science Education Research.