Spreading Curricular Change in PDC: Some Practical Tools. Dick Brown. Joel Adams. Libby Shoop. Saint Olaf College – Northfield, MN. Calvin College – Grand Rapids, MI. Macalester College – St. Paul, MN. Abstract
Saint Olaf College – Northfield, MN
Calvin College – Grand Rapids, MI
Macalester College – St. Paul, MN
The NSF-TCPP Curriculum Initiative on Parallel and Distributed Computing (PDC) is not alone in calling for increased PDC education in undergraduate computer science (CS) programs. Informed by the TCPP effort in PDC, the new ACM-IEEE/CS joint curricular recommendations, known as CS2013, include a new Knowledge Area devoted to PDC. Strikingly, an analysis of the CS 2013 recommendations (which spans all CS fields) indicates PDC-related learning objectives in most other Knowledge Areas as well, totaling approximately 10% of all CS2013 learning objectives. Our CSinParallel project, which provides modular teaching materials for incrementally adding PDC to existing CS courses, has conducted three curriculum workshop events in the past year aimed at assisting institutions across the US that seek to add PDC to their existing undergraduate CS major curricula. This poster proceeds from these events, highlighting summary spreadsheet tools that are based on much larger, more comprehensive official spreadsheets from TCPP and CS2013, for facilitating curricular change in PDC at the undergraduate level.
NSF-TCPP Curriculum Initiative on Parallel and Distributed Computing (TCPP Recommendations)
The NSF-TCPP Curriculum Initiative has led not only in providing curriculum recommendations for PDC topics in undergraduate CS majors, with an emphasis on teaching PDC topics in four “core” courses (CS1, CS2, Algorithms/Data Structures, and Architecture), but also in gathering and supporting professors who put these recommendations into practice, through the Early Adopter program. The left side grid below indicates how CSinParallel materials and St. Olaf College’s curriculum relate to the TCPP recommendations for teaching PDC.
ACM-IEEE/CS Joint Curricular Recommendations in Computer Science (CS2013)
The two professional societies have jointly issued curricular recommendations for undergraduate CS majors approximately every 10 years since 1991. The current recommendations, known as CS2013, feature a sudden and substantial increase in PDC topics in response to factors such as the emergence of multicore processors and the rise of cloud computing. As the spreadsheet below indicates, PDC appears not only in new PD and SF knowledge areas, but also in many other knowledge areas throughout the curriculum. The right side grid below indicates how CSinParallel materials and St. Olaf College’s curriculum relate to the presence of PDC in CS2013.
St. Olaf College
St. Olaf is a liberal-arts college in Northfield, Minnesota that recently (2002) expanded to a major program. Still small (17 majors this year, only three full-time faculty), we have nevertheless offered short PDC topics in almost every course from CS1 to the Senior Capstone Seminar in recent years. Examples include: Hadoop computing using the simplified WebMapReduce interface in every section of CS1 since 2010; programming with multiple cores (with race conditions) in Hardware Design, (a “computer organization course”) since 2010; and formal methods of distributed computing using the Pi Calculus in Theory of Computation (since 2011).
Note: In the mapping at center between TCPP and CS2013, we assert that many different aspects of PDC shed light on “Why and what is parallel/distributed computing”
St. Olaf College CS Course Key
CSinParallel Module Key
This material is based on work supported by the National Science Foundation under Grant Nos. DUE-1226172/1225739/1225796. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.