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