Computer Science Curricula 2013

Computer Science Curricula 2013

Curriculum Guidelines for Undergraduate Degree Programs

in Computer Science

December 20, 2013 The Joint Task Force on Computing Curricula Association for Computing Machinery (ACM)

IEEE Computer Society

A Cooperative Project of

Computer Science Curricula 2013

Curriculum Guidelines for Undergraduate Degree Programs

in Computer Science

December 20, 2013

The Joint Task Force on Computing Curricula Association for Computing Machinery (ACM)

IEEE Computer Society

Computer Science Curricula 2013

Copyright ? 2013 by ACM and IEEE. All rights reserved.

Copyright and Reprint Permissions: Permission is granted to use these curriculum guidelines for the development of educational materials and programs. Other use requires specific permission. Permission requests should be addressed to: ACM Permissions Dept. at permissions@ or to the IEEE Copyrights Manager at copyrights@.

ISBN: 978-1-4503-2309-3 DOI: 10.1145/2534860

Web link: ACM Order Number: 999133

Additional copies may be ordered from:

IEEE Computer Society Customer Service Center

10662 Los Vaqueros P.O. Box 3014

Los Alamitos, CA 90720-1314

IEEE Service Center IEEE 445 Hoes Lane P.O. Box 1331

Piscataway, NJ 08855-1331

Tel: + 1 800 272 6657 Fax: + 1 714 821 4641 csbook@

Tel: + 1 732 981 0060 Fax: + 1 732 981 9667 customerservice@

IEEE Computer Society Asia/Pacific Office

Watanabe Bldg., 1-4-2 Minami-Aoyama

Minato-ku, Tokyo 107-0062 JAPAN

ACM Order Department P.O. Box 30777

New York, NY 10087-0777

Tel: + 81 3 3408 3118 Fax: + 81 3 3408 3553 tokyo.ofc@

1-800-342-6626 1-212-626-0500 (outside U.S.)

orders@

Cover art by Robert Vizzini Printed in the United States of America

Sponsoring Societies This report was made possible by financial support from the following societies:

ACM IEEE Computer Society

The CS2013 Final Report has been endorsed by ACM and the IEEE Computer Society.

Computer Science Curricula 2013

Final Report December 2013

The Joint Task Force on Computing Curricula Association for Computing Machinery IEEE-Computer Society

CS2013 Steering Committee

ACM Delegation Mehran Sahami, Chair (Stanford University) Andrea Danyluk (Williams College) Sally Fincher (University of Kent) Kathleen Fisher (Tufts University) Dan Grossman (University of Washington) Elizabeth Hawthorne (Union County College) Randy Katz (UC Berkeley) Rich LeBlanc (Seattle University) Dave Reed (Creighton University)

IEEE-CS Delegation Steve Roach, Chair (Exelis Inc.) Ernesto Cuadros-Vargas (Univ. Cat?lica San Pablo) Ronald Dodge (US Military Academy) Robert France (Colorado State University) Amruth Kumar (Ramapo Coll. of New Jersey) Brian Robinson (ABB Corporation) Remzi Seker (Embry-Riddle Aeronautical Univ.) Alfred Thompson (Microsoft, retired)

- 2 -

Table of Contents

Chapter 1: Introduction ................................................................................................................. 10 Overview of the CS2013 Process ............................................................................................. 11 Survey Input.............................................................................................................................. 12 High-level Themes.................................................................................................................... 13 Knowledge Areas...................................................................................................................... 14 Professional Practice ................................................................................................................. 15 Exemplars of Curricula and Courses ........................................................................................ 16 Community Involvement and Website ..................................................................................... 16 Acknowledgments .................................................................................................................... 16 References................................................................................................................................. 19

Chapter 2: Principles..................................................................................................................... 20 Chapter 3: Characteristics of Graduates ....................................................................................... 23 Chapter 4: Introduction to the Body of Knowledge...................................................................... 27

Knowledge Areas are Not Necessarily Courses (and Important Examples Thereof)............... 28 Core Tier-1, Core Tier-2, Elective: What These Terms Mean, What is Required ................... 29 Further Considerations in Designing a Curriculum .................................................................. 32 Organization of the Body of Knowledge .................................................................................. 32 Curricular Hours ....................................................................................................................... 32 Courses...................................................................................................................................... 33 Guidance on Learning Outcomes ............................................................................................. 33 Overview of New Knowledge Areas ........................................................................................ 34

- 3 -

Chapter 5: Introductory Courses ................................................................................................... 39 Design Dimensions ................................................................................................................... 39 Mapping to the Body of Knowledge......................................................................................... 45

Chapter 6: Institutional Challenges............................................................................................... 46 Localizing CS2013 ................................................................................................................... 46 Actively Promoting Computer Science .................................................................................... 46 Broadening Participation .......................................................................................................... 47 Computer Science Across Campus........................................................................................... 48 Computer Science Minors ........................................................................................................ 48 Mathematics Requirements in Computer Science .................................................................... 49 Computing Resources ............................................................................................................... 51 Maintaining a Flexible and Healthy Faculty............................................................................. 51 Teaching Faculty....................................................................................................................... 52 Undergraduate Teaching Assistants.......................................................................................... 53 Online Education ...................................................................................................................... 53 References................................................................................................................................. 54

Appendix A: The Body of Knowledge ......................................................................................... 55 Algorithms and Complexity (AL)............................................................................................. 55 Architecture and Organization (AR)......................................................................................... 62 Computational Science (CN) .................................................................................................... 68 Discrete Structures (DS) ........................................................................................................... 76 Graphics and Visualization (GV) ............................................................................................. 82 Human-Computer Interaction (HCI) ........................................................................................ 89 Information Assurance and Security (IAS) .............................................................................. 97

- 4 -

Information Management (IM) ............................................................................................... 112 Intelligent Systems (IS) .......................................................................................................... 121 Networking and Communication (NC)................................................................................... 130 Operating Systems (OS) ......................................................................................................... 135 Platform-Based Development (PBD) ..................................................................................... 142 Parallel and Distributed Computing (PD)............................................................................... 145 Programming Languages (PL)................................................................................................ 155 Software Development Fundamentals (SDF) ......................................................................... 167 Software Engineering (SE) ..................................................................................................... 172 Systems Fundamentals (SF).................................................................................................... 186 Social Issues and Professional Practice (SP) .......................................................................... 192 Appendix B: Migrating to CS2013 ............................................................................................. 204 Outcomes ................................................................................................................................ 204 Changes in Knowledge Area Structure................................................................................... 205 Core Comparison .................................................................................................................... 206 Conclusions............................................................................................................................. 211 Appendix C: Course Exemplars.................................................................................................. 228 Course Exemplar Template .................................................................................................... 232 CSCI 140: Algorithms, Pomona College................................................................................ 234 COS 226: Algorithms and Data Structures, Princeton University.......................................... 237 CS 256 Algorithm Design and Analysis, Williams College................................................... 240 CSE332: Data Abstractions, University of Washington......................................................... 243 CS/ECE 552: Introduction to Computer Architecture, University of Wisconsin................... 246 CS150: Digital Components and Design, University of California, Berkeley ....................... 249

- 5 -

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download