ACM Exemplar Courses
Course List
| # | Number | Title |
|---|---|---|
| 1 | 0 | Algorithms |
|
This class covers basic techniques used to analyze problems and algorithms (including asymptotics, u
|
||
|
class cover basic techniqu analyz problem algorithm includ asymptot upper lower bound averag worst c
|
||
| 2 | 0 | Algorithms and Data Structures |
|
Classical algorithms and data structures, with an emphasis on implementing them in modern programmin
|
||
|
classic algorithm data structur emphasi implement modern program environ solv real world problem emp
|
||
| 3 | 0 | Algorithm Design and Analysis |
|
Analysis: asymptotic analysis including lower bounds on sorting, recurrence relations and their solu
|
||
|
analysi asymptot analysi includ lower bound sort recurr relat solut graph direct undirect planar bip
|
||
| 4 | 0 | Data Abstractions |
|
The core of this course is fundamental classical data structures and algorithms including balanced
|
||
|
core fundament classic data structur algorithm includ balanc tree hashtabl sort prioriti queue graph
|
||
| 5 | 0 | Introduction to Computer Architecture |
|
The goal of the course is to teach the design and operation of a digital computer. It serves student
|
||
|
goal teach design oper digit comput serv student wai continu studi comput architectur embed system l
|
||
| 6 | 0 | Digital Components and Design |
|
Design of synchronous digital systems using modern tools and methodologies, in particular, digital l
|
||
|
design synchron digit system modern tool methodolog digit logic synthesi tool digit hardwar simul to
|
||
| 7 | 0 | Computer Architecture and Engineering |
|
Historical Perspectives: RISC vs. CISC, Pipelining, Memory Hierarchy, Virtual Memory, Complex Pipeli
|
||
|
histor perspect risc cisc pipelin memori hierarchi virtual memori complex pipelin order execut super
|
||
| 8 | 0 | eScience |
|
eSciences basic premise is that in addition to the two accepted scientific inquiry methods: theoret
|
||
|
escienc basic premis addit accept scientif inquiri method theoret mathemat formul experiment comput
|
||
| 9 | 0 | Modeling and Simulation for the Sciences |
|
The modeling process Two system dynamics tool tutorials System dynamics problems with rate proportio
|
||
|
model process system dynam tool tutori system dynam problem rate proport amount unconstrain growth d
|
||
| 10 | 0 | Discrete Mathematics |
|
This course will develop advanced mathematics skills appropriate for students pursuing STEM studies
|
||
|
develop advanc mathemat skill student pursu stem studi engin scienc comput scienc mathemat topic inc
|
||
| 11 | 0 | Mathematical Foundations of Computer Science |
|
Sets Functions and Relations Proof techniques (including direct, contradiction, diagonalization and
|
||
|
set function relat proof techniqu includ direct contradict diagon induct graph logic proposit predic
|
||
| 12 | 0 | Discrete Structures I |
|
Introduction to the Peano Axioms and construction of the natural numbers, integer numbers, rational
|
||
|
introduct peano axiom construct natur number integ number ration number real number construct basic
|
||
| 13 | 0 | Discrete Structures II |
|
Set-based theory of functions, Boolean functions Injection, surjection, bijection Function compositi
|
||
|
set base theori function boolean function inject surject biject function composit function cardin co
|
||
| 14 | 0 | Computer Graphics |
|
Shader-based OpenGL programming Coordinate systems and transformations Quaternions and the Arcball i
|
||
|
shader base opengl program coordin system transform quaternion arcbal interfac camera model project
|
||
| 15 | 0 | Computer Graphics |
|
Computer graphics and its place in computer science Surface modeling Light modeling The Rendering Eq
|
||
|
comput graphic place comput scienc surfac model light model render equat rai cast surfac scatter bsd
|
||
| 16 | 0 | Human Aspects of Computer Science |
|
The course is centered on Human-Computer Interaction. The topics covered are: Experimental design an
|
||
|
center human comput interact topic cover experiment design data represent inferenti statist write ex
|
||
| 17 | 0 | Human Computer Interaction |
|
This unit provides a detailed understanding of the underpinning theories, principles and practices o
|
||
|
unit detail understand underpin theori principl practic interfac design comput base system examin is
|
||
| 18 | 0 | Human Computer Interaction |
|
This module provides an introduction to human-computer interaction. Fundamental aspects of human phy
|
||
|
modul introduct human comput interact fundament aspect human physiolog psycholog introduc kei featur
|
||
| 19 | 0 | Human-Computer Interaction |
|
Short-form description: Helping you build human-centered design skills, so that you have the princip
|
||
|
short form descript help build human center design skill principl method creat excel interfac techno
|
||
| 20 | 0 | Human Information Processing (HIP) |
|
Senses: Short term sensory memory receptors stimuli; Perception; Attention; Memory: Long-term me
|
||
|
sens short term sensori memori receptor stimuli percept attent memori long term memori work memori m
|
||
| 21 | 0 | Computer Systems Security |
|
This course covers the fundamental concepts and practical applications of computing systems security
|
||
|
cover fundament concept practic applic comput system secur holist view appli approach topic includ s
|
||
| 22 | 0 | Technology, Ethics, and Global Society |
|
Students that successfully complete the course will be able to: Formulate and defend a position on a
|
||
|
student successfulli complet formul defend posit ethic question relat technolog describ main ethic c
|
||
| 23 | 0 | Artificial Intelligence Programming |
|
An overview of AI, including search, knowledge representation, probabilistic reasoning and decision
|
||
|
overview includ search knowledg represent probabilist reason decis make uncertainti machin learn top
|
||
| 24 | 0 | Artificial Intelligence |
|
INTRODUCTION TO AI. Historical outline of the discipline. Fundamental concepts. Main research areas
|
||
|
introduct histor outlin disciplin fundament concept main research area applic field problem solv sea
|
||
| 25 | 0 | Introduction to Artificial Intelligence |
|
This course will serve as an introduction to artificial intelligence concepts and techniques. We wi
|
||
|
serv introduct artifici intellig concept techniqu lisp program languag comput vehicl explor techniqu
|
||
| 26 | 0 | Introduction to Artificial Intelligence |
|
Problem solving with search: uninformed, informed search, search for optimization (hill climbing, si
|
||
|
problem solv search uninform inform search search optim hill climb simul anneal genet algorithm adve
|
||
| 27 | 0 | Introduction to Artificial Intelligence |
|
Introduction to Lisp Fundamental Issues What is AI? Foundations of AI, History of AI. Intelligent A
|
||
|
introduct lisp fundament issu foundat histori intellig agent agent environ structur agent problem so
|
||
| 28 | 0 | Computer Networks I |
|
The course covers various aspects of computer networking, including (1) application layer protocols
|
||
|
cover aspect comput network includ applic layer protocol http smtp transport layer tcp udp congest c
|
||
| 29 | 0 | Introduction to Computer Networking |
|
CS144 is an introductory course on computer networking, speci?cally the Internet. The course explain
|
||
|
introductori comput network speci?c internet explain internet work rang bit modul wireless network a
|
||
| 30 | 0 | Computer Networks |
|
This course explores the principles underlying the design of computer networks. We will examine tech
|
||
|
explor principl underli design comput network examin techniqu transmit inform effici reliabl varieti
|
||
| 31 | 0 | Operating Systems |
|
This course explores the design and implementation of computer operating systems. Topics include his
|
||
|
explor design implement comput oper system topic includ histor aspect oper system develop system pro
|
||
| 32 | 0 | Parallel Programming Principle and Practice |
|
Part 1: Principle This section covers the very basics of parallel computing, and is intended for som
|
||
|
part principl section cover basic parallel comput intend acquaint subject begin overview includ conc
|
||
| 33 | 0 | Introduction to Parallel Programming |
|
Overview of Parallel System Architectures Modeling and Analysis of Parallel Computations Communicati
|
||
|
overview parallel system architectur model analysi parallel comput commun complex analysi parallel a
|
||
| 34 | 0 | Introduction to Compilers |
|
CS 453 teaches students how to implement compilers. Although most computer science professionals do
|
||
|
teach student implement compil comput scienc profession end implement full compil alumni surpris ski
|
||
| 35 | 0 | Translators and Systems Software |
|
This course covers the design and implementation of translator-oriented systems software, focusing s
|
||
|
cover design implement translat orient system softwar focus specif compil time spent relat topic int
|
||
| 36 | 0 | Compiler Design |
|
Specific topics covered in this course include: Overview of compilation Lexical analysis Context-fre
|
||
|
specif topic cover includ overview compil lexic analysi context free grammar top bottom pars error r
|
||
| 37 | 0 | Compilers |
|
The course covers the design, definition and implementation of programming languages. Students who h
|
||
|
cover design definit implement program languag student class implement languag syntax regular expres
|
||
| 38 | 0 | Languages and Compilers |
|
The intended learning objectives of this course are: To describe structures (i.e., formulas) using
|
||
|
intend learn object describ structur formula grammar pars recogn build structur sequenc symbol analy
|
||
| 39 | 0 | Topics in Compiler Construction |
|
Scanning, parsing, semantic elaboration, intermediate representation, implementation of the procedur
|
||
|
scan pars semant elabor intermedi represent implement procedur abstract implement express assign con
|
||
| 40 | 0 | Principles of Programming Languages |
|
A thorough examination of issues and features in programming language design and implementation, inc
|
||
|
examin issu featur program languag design implement includ languag provid data structur data type mo
|
||
| 41 | 0 | Introduction to Programming Languages |
|
The course uses definitional interpreters and related techniques to teach the core of several progra
|
||
|
definit interpret relat techniqu teach core program languag begin quick tour write definit interpret
|
||
| 42 | 0 | Programming Language Design and Implementation |
|
CSC 2/454 is an introduction to the design and implementation of programming languages. From the des
|
||
|
csc introduct design implement program languag design point view cover languag featur tool express a
|
||
| 43 | 0 | Programming Languages |
|
Successful course participants will: Internalize an accurate understanding of what functional and ob
|
||
|
success particip intern accur understand function object orient program develop skill learn program
|
||
| 44 | 0 | Principles of Programming Languages |
|
Specific topics covered in this course include: Functional programming concepts in Lisp Syntax, sema
|
||
|
specif topic cover includ function program concept lisp syntax semant evalu strategi program includ
|
||
| 45 | 0 | Programming Languages and Techniques I |
|
Programming Design and Testing Persistent Data Structures & Functional programming Trees & Recursion
|
||
|
program design test persist data structur function program tree recurs mutabl data structur queue ar
|
||
| 46 | 0 | Principles of Programming Languages |
|
This is a course on the theory of programming languages. Why study these principles? Because they ar
|
||
|
theori program languag studi principl fundament design implement applic program languag program lang
|
||
| 47 | 0 | Functional Programming |
|
The four key skills that students learn are to write parallel functional programs to analyze program
|
||
|
kei skill student learn write parallel function program analyz program sequenti parallel time comple
|
||
| 48 | 0 | Java Programming I |
|
Object-oriented programming concepts Objects, classes State, behavior Methods, fields, constructors
|
||
|
object orient program concept object class state behavior method field constructor variabl paramet s
|
||
| 49 | 0 | Introduction to Computer Science |
|
This course has five distinct modules of roughly three weeks each: (1) We begin with conditionals an
|
||
|
distinct modul roughli week begin condit recurs practic function problem solv approach varieti homew
|
||
| 50 | 0 | Software Development Foundations |
|
Major topics covered, in their approximate order of coverage, include the following: Java Basics: In
|
||
|
major topic cover approxim order coverag includ java basic introduct interpret versu compil languag
|
||
| 51 | 0 | Introduction to Program Design |
|
Upon completion of this course, the student should be able to: Understand when to use and write prog
|
||
|
complet student understand write program structur list tree develop data model program problem write
|
||
| 52 | 0 | Data Abstraction and Data Structures |
|
This course is being used as an exemplar of how we incorporate communication outcomes into the core
|
||
|
exemplar incorpor commun outcom core curriculum descript cours data structur real differ execut comm
|
||
| 53 | 0 | Software Engineering Practices |
|
Typical outline of course topics includes: Introduction to Software Engineering Models of Software P
|
||
|
typic outlin topic includ introduct softwar engin model softwar process project plan organ softwar r
|
||
| 54 | 0 | Software Engineering |
|
Introduction to SaaS and software lifecycles: Waterfall, Spiral, RUP, Agile Project Management: Pair
|
||
|
introduct saa softwar lifecycl waterfal spiral rup agil project manag pair program scrum plan projec
|
||
| 55 | 0 | Software Engineering Practices |
|
Introduction to software engineering practices Requirements and Use Cases Software Reviews, Version
|
||
|
introduct softwar engin practic requir case softwar review version control configur manag design obj
|
||
| 56 | 0 | Software Development |
|
Catalog Description This course presents introductory software engineering concepts including group
|
||
|
catalog descript present introductori softwar engin concept includ group develop larg scale project
|
||
| 57 | 0 | Introduction to Systems and Networking |
|
The course represents a novel integrated approach to presenting side by side both the architecture a
|
||
|
repres integr approach present side side architectur oper system modern comput system student learn
|
||
| 58 | 0 | Great Ideas in Computer Architecture |
|
Introduction to C: this includes coverage of the Hardware/Software Interface (e.g., machine and asse
|
||
|
introduct includ coverag hardwar softwar interfac machin assembl languag format method encod instruc
|
||
| 59 | 0 | Systems Programming |
|
The major goal of the course is to give students principles, skills, and experience in implementing
|
||
|
major goal give student principl skill experi implement complex layer system includ quarter long pro
|
||
| 60 | 0 | Technology Consulting in the Community |
|
This course has service, personal, and intellectual goals. Its service goal is to build the technica
|
||
|
servic person intellectu goal servic goal build technic capac commun organ provid effect technolog c
|
||
| 61 | 0 | Issues in Computing |
|
In the context of widespread computer usage and societys ever-growing dependence on computer techno
|
||
|
context widespread comput usag societi grow depend comput technolog focus issu ethic comput professi
|
||
| 62 | 0 | Ethics & the Information Age |
|
Students learn ethics and moral philosophy as a means for providing a framework for ethically ground
|
||
|
student learn ethic moral philosophi mean provid framework ethic ground decis make inform topic incl
|
||
| 63 | 0 | Professional Development Seminar |
|
While the course covers Social and Professional Practice topics such as social context, analytical t
|
||
|
cover social profession practic topic social context analyt tool profession ethic intellectu propert
|
||
| 64 | 0 | The Digital Age |
|
The course provides both an introduction to a broad range of computer science topics and discussion
|
||
|
introduct broad rang comput scienc topic discuss social ethic issu topic vari faculti interest curre
|
||
| 65 | 0 | General Computer Science |
|
We take an interdisciplinary approach to the traditional CS1 curriculum, where we teach students to
|
||
|
interdisciplinari approach tradit curriculum teach student program highlight role comput disciplin f
|
||
| 66 | 0 | Accelerated Introduction to Computer Science |
|
The course is a compressed introduction into programming along with basic algorithms and data struct
|
||
|
compress introduct program basic algorithm data structur interleav data structur cover list tree que
|
||
| 67 | 0 | Introduction to Programming |
|
This course provides an introduction to problem solving and programming using the Python scripting l
|
||
|
introduct problem solv program python script languag specif goal develop problem solv program skill
|
||
| 68 | 0 | Object-Oriented Programming |
|
Building upon basic programming skills in Python from CSC 221, this course focuses on the design and
|
||
|
build basic program skill python csc focus design analysi larger complex program industri lead langu
|
||