Course List

# Number Title
1 105 Computing Fundamentals I
Intended as an overview of computers and computer technology for non-CS majors, this course is often
intend overview comput comput technolog major comput literaci primari focu person comput person prod
2 106 Computing Fundamentals II
Introduction to programming, appropriate for non-CS majors. Introduction to the logical thought proc
introduct program major introduct logic thought process problem solv strategi program concept presen
3 161 Introduction to Programming and Problem-solving
Introduction to fundamental concepts of computer science. Problem solving, algorithm and program des
introduct fundament concept comput scienc problem solv algorithm program design data type loop contr
4 162 Introduction to Computer Science
The goals of this class are to teach the syntax of C++ to students who already know how to program.
goal class teach syntax student program student expect profici condit loop function argument topic i
5 163 Data Structures
Data abstraction with formal specification. Elementary algorithm analysis. Basic concepts ofdata and
data abstract formal specif elementari algorithm analysi basic concept ofdata represent insid comput
6 201 Computer Systems Programming
Introduction to computer systems from a software perspective. Topics include: Basic machine organiza
introduct comput system softwar perspect topic includ basic machin organ system program assembl lang
7 202 Programming Systems
Students will become familiar with the language and operating system environment used in most upper
student familiar languag oper system environ upper divis cours comput scienc major curriculum file s
8 250 Discrete Structures I
Introduces discrete structures and techniques for computing. Sets. Graphs and trees. Functions: prop
introduc discret structur techniqu comput set graph tree function properti recurs definit solv recur
9 251 Discrete Structures II
Continuation of CS 250. Logic: propositional calculus, first-order predicate calculus. Formal reason
continu logic proposit calculu order predic calculu formal reason natur deduct resolut applic progra
10 300 Elements Of Software Engineering
Practical techniques of program development for medium-scale software produced by individuals. Softw
practic techniqu program develop medium scale softwar produc individu softwar develop problem specif
11 305 Social, Ethical, and Legal Implications of Computing
History of computing, social context of computing, professional and ethical responsibilities, risks
histori comput social context comput profession ethic respons risk liabil safeti critic system intel
12 311 Computational Structures
Introduces the foundations of computing. Regular languages and finite automata. Context-free languag
introduc foundat comput regular languag finit automata context free languag pushdown automata ture m
13 313 AI & Game Design
Study of the basic principles of computer game design, the most popular techniques and technologies
studi basic principl comput game design popular techniqu technolog game implement focus wai advanc a
14 321 Languages and Compiler Design I
[CS 321 is the first half of the sequence 321/322. The material on this page pertains to the combine
half sequenc materi page pertain combin sequenc principl program languag languag implement compil te
15 322 Languages and Compiler Design II
[CS 322 is the second half of the sequence 321/322. The material on this page pertains to the combin
half sequenc materi page pertain combin sequenc principl program languag languag implement compil te
16 333 Introduction to Operating Systems
Introduction to the principles of operating systems and concurrent programming. Operatingsystem serv
introduct principl oper system concurr program operatingsystem servic file system resourc manag sync
17 333 Introduction to Operating Systems Lab
Please contact the instructor/professor teaching CS 333 for a description.
contact instructor professor teach descript
18 345 Cyberculture: The Internet and Popular Culture
Study of the effect of computers and the internet on popular culture. Graduates of the course will b
studi effect comput internet popular cultur graduat intellig success user internet understand intern
19 346 Exploring Complexity in Science and Technology
This course introduces Complex Systems, an interdisciplinary field that studies how collections of s
introduc complex system interdisciplinari field studi collect simpl entiti organ produc complex beha
20 347 The Internet Age
This course examines the Internet and its evolution over the last 30 years to become an essential pa
examin internet evolut year essenti part todai societi examin impact internet societi potenti threat
21 348 Digital Media, Tech., & Society
This course covers, from a computing perspective, the transition of society from a primarily paper-b
cover comput perspect transit societi primarili paper base societi digit focu digit media audio imag
22 350 Algorithms and Complexity
Techniques for the design and analysis of algorithms. Case studies of existing algorithms (sorting,
techniqu design analysi algorithm case studi exist algorithm sort search graph algorithm dynam progr
23 410 Top: Manipulating Data Using XML
The course introduces the concept of metadata using a simple syntax (XML) that, with its supporting
introduc concept metadata simpl syntax xml support technolog todai popular metadata mechan todai pop
24 410 Top: Introduction to Digital Forensics
This course takes a detailed, hands-on approach to the investigation of incidents in which computers
take detail hand approach investig incid comput comput technolog plai signific interest role student
25 410 Top: Measuring Computer Performance
We will cover the fundamentals of computer performance measurement at a level suitable for advanced
cover fundament comput perform measur level suitabl advanc undergradu begin graduat student topic in
26 410 Top: Human Computer Interaction
Introduction to the basic theory of human-computer interaction. Principles of human cognition and in
introduct basic theori human comput interact principl human cognit interfac design interfac evalu te
27 410 Top: Network Management & Security
Covers both network management and network security. Network management will include the design of L
cover network manag network secur network manag includ design lan base network includ span tree prot
28 410 Top: Parallel Algorithms
Definition and nature of parallel computation. Parallel computation from the point of view of hardwa
definit natur parallel comput parallel comput point view hardwar architechtur program schedul algori
29 410 Top: Open Source Software Development in the Unix Environment
This course explores Open Source software engineering for UNIX-like operating systems, especially in
explor open sourc softwar engin unix oper system comparison contrast tradit industri approach focu d
30 410 Top: Malicious Code and Forensics
This course will study the motivations of malicious code developers and the common weaknesses expoit
studi motiv malici code develop common weak expoit code move forens analysi techniqu protect recover
31 410 Top: Introduction to Multimedia Networking
Introductory course in multimedia computing and networking. Explores the interaction between multime
introductori multimedia comput network explor interact multimedia data system support multimedia dat
32 410 Top: Algorithm Design & Analysis
An advanced, in-depth study of the design and analysis of algorithms. Topics include models of compu
advanc depth studi design analysi algorithm topic includ model comput sort data structur graph algor
33 410 Top: Introduction to Computational Biology
The life sciences sector employes computer scientists to tackle the computational core of problems,
life scienc sector employ comput scientist tackl comput core problem develop effici tool research st
34 410 Top: Concurrent Systems
Please see the instructor/professor teaching this class the quarter it is offered for more course in
instructor professor teach class quarter offer inform
35 410 Top: Wireless Internet Protocols & Standards
This class will provide a detailed introduction to current wireless networking standards and protoco
class provid detail introduct current wireless network standard protocol includ wimax mesh network c
36 410 Top: Network Routing and Management
This classes focuses on the theory and practice of running a modern network including Layer 3 routin
class focus theori practic run modern network includ layer rout protocol layer switch protocol inclu
37 410 Top: Network Security
This is an advanced study of network security. Topics include historical and recent network-based at
advanc studi network secur topic includ histor recent network base attack includ denial servic attac
38 410 Top: Wireless Networking Concepts
Students will be introduced to emerging wireless networks with particular emphasis on protocol analy
student introduc emerg wireless network emphasi protocol analysi probabilist simul techniqu perform
39 410 Top: Advanced Multimedia Networking
The Advanced Multimedia Networking course is an advanced seminar course focusing on the state-of-the
advanc multimedia network advanc seminar focus state art multimedia system network topic paper liter
40 410 Top: Data Streams
Data stream management is a new and exciting area of database systems research. This course will exa
data stream manag excit area databas system research examin issu involv develop data stream manag sy
41 410 Top: Software Security
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
42 410 Top: Open Source Topic
The open source development model is becoming an important influence upon proprietary software devel
open sourc develop model import influenc proprietari softwar develop model survei tool techniqu open
43 410 Top: Introduction to Networking
This is an advanced study of network security. Topics include historical and recent network-based at
advanc studi network secur topic includ histor recent network base attack includ denial servic attac
44 410 Top: Database Internals
Internal design of a relational database management system. Concurrency control; lock managers; cras
intern design relat databas manag system concurr control lock manag crash recoveri queri oper evalu
45 410 Top: Multicore Computing
Multicore architectures offer the potential for performance gains, but also raise challenging resear
multicor architectur offer potenti perform gain rais challeng research question relat achiev potenti
46 410 Top: Multicore Computing: Practicum
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
47 410 Top: Adv Open Source Software Eng
The open source development model is becoming an important influence upon proprietary software devel
open sourc develop model import influenc proprietari softwar develop model survei tool techniqu open
48 410 Top: Mathematical Logic via Foundational Algorithms
The course presents propositional logic, predicate logic, and modal logic, and algorithms for proof
present proposit logic predic logic modal logic algorithm proof refut logic classic result includ so
49 410 Top: Mastery in Programming
Successively reduce common arithmetic operations to simpler mathematical steps; measured by eliminat
success reduc common arithmet oper simpler mathemat step measur elimin arithmet oper auto increment
50 410 Top: Advanced Java Programming
Examines aspects of the Java programming language, including object-oriented programming, the java c
examin aspect java program languag includ object orient program java class librari write applic grap
51 410 Top: Data Management in the Cloud
Cloud computing has recently seen a lot of attention from research and industry for applications th
cloud comput recent lot attent research industri applic parallel share architectur elast scalabl con
52 410 Top: Introduction to Wireless Networking
Please see the instructor/professor teaching the course the quarter this class is offered for a cour
instructor professor teach quarter class offer descript
53 410 Top: Advanced Counting, Probability & Computing
Please see the instructor/professor teaching the course the quarter this class is offered for a cour
instructor professor teach quarter class offer descript
54 410 Top: Algorithms For Parallel Computation
Please see the instructor/professor teaching this course the quarter it is offered for a course desc
instructor professor teach quarter offer descript
55 410 Top: Security and Programming
The class will cover techniques and best practices for improving the security of programs. The clas
class cover techniqu practic improv secur program class taught program languag openssl librari cover
56 410 Top: Programming the Web
Most users of the web are familiar with the use of browsers, Internet clients that allow the user t
user web familiar browser internet client user interact request receiv web page user understand hood
57 410 Top: Green Computing and Communications
There have been detailed studies conducted by the U.S. Department of Commerce which shows that the
detail studi conduct depart commerc show energi consum entir infrastructur countri consum electr exp
58 410 Top: General Purpose GPU Computing
Please contact the instructor/professor the quarter this class is offered for a course description.
contact instructor professor quarter class offer descript
59 410 Top: Using XML and Related Languages
The course introduces the concept of metadata using a simple syntax (XML) that, with its supportin
introduc concept metadata simpl syntax xml support technolog todai popular metadata mechan todai pop
60 410 Top: Introduction to Visual Computing
This new course will provide an introduction to visual computing. It will cover algorithms in compu
provid introduct visual comput cover algorithm comput vision imag video process focu develop visual
61 410 Top: Introduction to Performance Measurement, Modeling and Analysis
This is a new course designed to survey the fundamentals of measuring, analyzing, and modeling com
design survei fundament measur analyz model comput perform learn materi move set case studi allow ap
62 410 Top: Languages and Low-Level Programming
This course is about the development of low-level, bare-metal systems—with particular focus on micro
develop low level bare metal system focu microkernel role design program languag applic domain low l
63 410 Top: Mobile Health
The past few years have witnessed the dramatic emergence of mobile phone applications (Android heal
past year wit dramat emerg mobil phone applic android health app wearabl devic fitbit jawbon nike fu
64 415 Parallel Programming
An introduction to parallel programming concepts and techniques. Topics include: parallel programmin
introduct parallel program concept techniqu topic includ parallel program model languag share memori
65 420 Object Oriented Programming
The fundamental concepts of object-oriented programming languages, including data abstraction and ty
fundament concept object orient program languag includ data abstract type class inherit gener type p
66 441 Artificial Intelligence
Introduction to the basic concepts and techniques of artificial intelligence. Knowledge representati
introduct basic concept techniqu artifici intellig knowledg represent problem solv machin learn natu
67 442 Advanced Artificial Intelligence: Combinatorial Games
Covers the theory and practice of finding optimal and satisficing solutions to one-player and two-pl
cover theori practic find optim satisf solut player player combinatori game includ popular game soko
68 443 Advanced Artificial Intelligence: Combinatorial Search
Explores methods for the solution of constraint satisfaction and related problems using search techn
explor method solut constraint satisfact relat problem search techniqu context real world problem re
69 445 Machine Learning
Provides a broad introduction to techniques for building computer systems that learn from experience
broad introduct techniqu build comput system learn experi conceptu ground practic experi learn syste
70 446 Advanced Topics in Machine Learning
Covers a number of more advanced topics in machine learning from a more mathematicallyoriented view.
cover number advanc topic machin learn mathematicallyori view prepar successfulli machin learn techn
71 447 Computer Graphics
This course will provide an introduction to graphics systems and applications. Basic structure of in
provid introduct graphic system applic basic structur interact graphic system characterist hardwar d
72 451 Numerical Computation
Introduction to numerical methods. Includes topics from elementary discussion of errors, polynomials
introduct numer method includ topic elementari discuss error polynomi interpol quadratur linear syst
73 452 Building Software Systems with Components
Designed to familiarize students with the concepts behind and opportunities afforded by modern compo
design familiar student concept opportun afford modern compon architectur microsoft java bean corba
74 454 Software Engineering
Current methodologies for the development of large, industrial strength software systems. Topics inc
current methodolog develop larg industri strength softwar system topic includ requir specif design i
75 457 Functional Languages
Introduction to functional notation, recursion, higher-order functions, reasoning about functions, a
introduct function notat recurs higher order function reason function model evalu applic express fun
76 465 Construction & Analysis of Web-Based Applications
Covers the basics of writing both CGI-Bin and client-side scripts for the World Wide Web. Topics inc
cover basic write cgi bin client side script world wide web topic includ client server model world w
77 467 The Wireless Web
Covers the basics of the Wireless Application Protocol (WAP) as used in modern mobile phones and oth
cover basic wireless applic protocol wap modern mobil phone handheld devic overview wap architectur
78 469 Software Engineering Capstone I
Emphasizes teamwork in small groups on a substantial project that will be performed for a real custo
emphas teamwork small group substanti project perform real custom project chosen provid interdiscipl
79 470 Software Engineering Capstone II
Emphasizes teamwork in small groups on a substantial project that will be performed for a real custo
emphas teamwork small group substanti project perform real custom project chosen provid interdiscipl
80 480 Randomized Algorithms and Probabilistic Analysis
Probabilistic tools used in the design and analysis of modern algorithms and data structures. Topics
probabilist tool design analysi modern algorithm data structur topic includ review discret random oc
81 485 Cryptography
The goal of cryptography is the encoding of information via a cryptographic system. Cryptanalysis st
goal cryptographi encod inform cryptograph system cryptanalysi studi break cryptosystem focus crypto
82 486 Introduction to Database Management Systems
Introduction to fundamental concepts of database management systems using primarily the relational m
introduct fundament concept databas manag system primarili relat model schema design refin queri lan
83 489 Principles of Database Systems
Please see the instructor/professor the quarter the class is offered for a course description.
instructor professor quarter class offer descript
84 491 Introduction to Computer Security
Provides a broad overview of computer security. Provides a solid theoretical foundation, as well as
broad overview comput secur solid theoret foundat real world exampl understand comput secur fundamen
85 492 Malware
This course will study the motivations of malicious code developers and the common weaknesses expoi
studi motiv malici code develop common weak expoit code examin identif remedi malici code
86 493 Digital Forensics
Detailed, hands-on approach to the investigation of criminal incidents in which computers or compute
detail hand approach investig crimin incid comput comput technolog plai signific interest role famil
87 494 Internetworking Protocols
Advanced study of the protocols and algorithms used in the Internet (IETF) family of networking prot
advanc studi protocol algorithm internet ietf famili network protocol arp udp tcp multicast rout pro
88 497 Sensor Networks
Foundations of sensor networks, with a focus on activity-based learning through a sequence of hands-
foundat sensor network focu activ base learn sequenc hand program exercis embed devic high level pro
89 510 Top: Manipulating Data Using XML
The course introduces the concept of metadata using a simple syntax (XML) that, with its supporting
introduc concept metadata simpl syntax xml support technolog todai popular metadata mechan todai pop
90 510 Top: Functional Logic Programming
This course provides an introduction to functional logic programming throught its basic ideas, found
introduct function logic program throught basic idea foundat implement techniqu flp combin distinct
91 510 Top: Distributed Computing
This course is a graduate level introduction to the concepts and design principles of Distributed Co
graduat level introduct concept design principl distribut comput suitabl advanc undergradu student e
92 510 Advanced Multimedia Networking
The Advanced Multimedia Networking course is an advanced seminar course focusing on the state-of-the
advanc multimedia network advanc seminar focus state art multimedia system network topic paper liter
93 510 Top: Open Source Software Development in the Unix Environment
This course explores Open Source software engineering for UNIX-like operating systems, especially in
explor open sourc softwar engin unix oper system comparison contrast tradit industri approach focu d
94 510 Top: Spoken Language Interfaces
Prepare students to design, construct, and evaluate spoken language applications. Analyze when speec
prepar student design construct evalu spoken languag applic analyz speech applic write speech gramma
95 510 Top: Malicious Code & Forensics
This course will study the motivations of malicious code developers and the common weaknesses exploi
studi motiv malici code develop common weak exploit code move forens analysi techniqu protect recove
96 510 Top: In Software Eng. New Ideas in Testing Theory
This seminar course will focus on recent papers in software testing, with emphasis on new ideas that
seminar focu recent paper softwar test emphasi idea potenti revolution field begin crash read unders
97 510 Top: Foundations of Database Systems
Please see the course description for CS 510, Top: Principles of Database Systems.
descript top principl databas system
98 510 Top: Introduction to Multimedia Networking
Introductory course in multimedia computing and networking. Explores the interaction between multime
introductori multimedia comput network explor interact multimedia data system support multimedia dat
99 510 Top: Information Security Assurance
This course provides students an understanding of the lifecycle of Information Security Assurance. I
student understand lifecycl inform secur assur inform secur assur process protect defend inform ensu
100 510 Top: Fundamentals of Staged Computation
Intro to MetaML The ML Programming language functions recursion datatypes polymorphism references an
intro metaml program languag function recurs datatyp polymorph refer assign stage annot meta program
101 510 Top: Adv Open Source Software Eng
The open source development model is becoming an important influence upon proprietary software devel
open sourc develop model import influenc proprietari softwar develop model survei tool techniqu open
102 510 Top: Dependent Type Programming
Please see the instructor/professor teaching this course the quarter it is offered for more detail.
instructor professor teach quarter offer detail
103 510 Top: Wireless Internet Protocols & Standards
This class will provide a detailed introduction to current wireless networking standards and protoco
class provid detail introduct current wireless network standard protocol includ wimax mesh network c
104 510 Top: Advanced Topics Software Engineering
Varies by instructor. Contact the current instructor for more details.
vari instructor contact current instructor detail
105 510 Top: Wireless Networking Concepts
The goal of this class is to introduce students to a wide range of wireless networking issues and pr
goal class introduc student wide rang wireless network issu provid introduct technolog todai class l
106 510 Top: Advanced Topics in Networking
This a place holder for this topic. Please check with the instructor/professor the quarter this cour
place holder topic check instructor professor quarter offer specif content
107 510 Top: Advanced Software Engineering
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
108 510 Top: Data Streams
Data stream management is a new and exciting area of database systems research. This course will exa
data stream manag excit area databas system research examin issu involv develop data stream manag sy
109 510 Top: Advanced Cryptography
This is a seminar course. We're going to explore various areas of modern cryptography by reading pap
seminar explor area modern cryptographi read paper present class ideal exposur cryptographi take equ
110 510 Top: Information Integration
This course will consider scenarios that can benefit from information integration, including traditi
scenario benefit inform integr includ tradit databas integr goal construct global schema describ set
111 510 Top: Nonstandard Computation
This course will cover several "nonstandard" computational methods and theories, including quantum c
cover nonstandard comput method theori includ quantum comput dna molecular comput cellular automata
112 510 Top: Advanced Programming
This course exposes students to the depth and breadth of modern programming practice, with the goal
expos student depth breadth modern program practic goal make student programm packag tour program la
113 510 Top: Principles of Database Systems
This course covers the foundations of database systems, with a focus on data models and query langua
cover foundat databas system focu data model queri languag show formal method appli issu databas des
114 510 Top: Multi Media Networking
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
115 510 Top: Concurrent Systems
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
116 510 Top: Computer Performance Analysis
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
117 510 Top: Information Theory
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
118 510 Top: Multicore Computing
Multicore architectures offer the potential for performance gains, but also raise challenging resear
multicor architectur offer potenti perform gain rais challeng research question relat achiev potenti
119 510 Top: Automated Deduction
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
120 510 Top: Multicore Computing: Practicum
This is a place holder for this topic. Please check with the instructor/professor the quarter this c
place holder topic check instructor professor quarter offer specif content
121 510 Top: Multicore
Please contact the instructor/professor teaching this class for a description of this course.
contact instructor professor teach class descript
122 510 Top: Mathematical Logic via Foundational Algorithms
The course presents propositional logic, predicate logic, and modal logic, and algorithms for proof
present proposit logic predic logic modal logic algorithm proof refut logic classic result includ so
123 510 Top: Computational Photography
Computational photography is a field where computer graphics, vision, optics, and photography come t
comput photographi field comput graphic vision optic photographi creat high qualiti pictur discuss c
124 510 Top: Mastery in Programming
Successively reduce common arithmetic operations to simpler mathematical steps; measured by eliminat
success reduc common arithmet oper simpler mathemat step measur elimin arithmet oper auto increment
125 510 Top: Data Management in the Cloud
Successively reduce common arithmetic operations to simpler mathematical steps; measured Cloud comp
success reduc common arithmet oper simpler mathemat step measur cloud comput recent lot attent resea
126 510 Top: Introduction to Wireless Networking
Please see the instructor/professor teaching the course the quarter this class is offered for a cour
instructor professor teach quarter class offer descript
127 510 Top: Advanced Counting, Probability & Computing
Please see the instructor/professor teaching the course the quarter this class is offered for a cour
instructor professor teach quarter class offer descript
128 510 Top: Algorithms For Parallel Computation
Please see the instructor/professor teaching this course the quarter it is offered for a course desc
instructor professor teach quarter offer descript
129 510 Top: Mobile Computing
Please see the professor/instructor the quarter this class is offered for a course description.
professor instructor quarter class offer descript
130 510 Top: Client & Server Side Applications For The Web
Please see the instructor/professor the quarter this class is offered for a course description.
instructor professor quarter class offer descript
131 510 Top: Using XML and Related Languages
The course introduces the concept of metadata using a simple syntax (XML) that, with its supporting
introduc concept metadata simpl syntax xml support technolog todai popular metadata mechan todai pop
132 510 Top: Security and Programming
The class will cover techniques and best practices for improving the security of programs. The clas
class cover techniqu practic improv secur program class taught program languag openssl librari cover
133 510 Top: Programming the Web
Most users of the web are familiar with the use of browsers, Internet clients that allow the user
user web familiar browser internet client user interact request receiv web page user understand hood
134 510 Top: Green Computing and Communications
There have been detailed studies conducted by the U.S. Department of Commerce which shows that the
detail studi conduct depart commerc show energi consum entir infrastructur countri consum electr exp
135 510 Top: General Purpose GPU Computing
Please contact the instructor/professor the quarter this class is offered for a course description.
contact instructor professor quarter class offer descript
136 510 Top: Introduction to Visual Computing
This new course will provide an introduction to visual computing. It will cover algorithms in compu
provid introduct visual comput cover algorithm comput vision imag video process focu develop visual
137 510 Top: Machine Learning Practicum
This course is a graduate seminar which will offer students practical training in machine learning
graduat seminar offer student practic train machin learn research student read discuss recent paper
138 510 Top: Introduction to Performance Measurement, Modeling and Analysis
This is a new course designed to survey the fundamentals of measuring, analyzing, and modeling co
design survei fundament measur analyz model comput perform learn materi move set case studi allow ap
139 510 Top: Languages and Low-Level Programming
This course is about the development of low-level, bare-metal systems—with particular focus on micro
develop low level bare metal system focu microkernel role design program languag applic domain low l
140 510 Top: Mobile Health
The past few years have witnessed the dramatic emergence of mobile phone applications (Android heal
past year wit dramat emerg mobil phone applic android health app wearabl devic fitbit jawbon nike fu
141 515 Parallel Programming
An introduction to parallel programming concepts and techniques. Topics include: parallel programmi
introduct parallel program concept techniqu topic includ parallel program model languag share memori
142 520 Object Oriented Programming
The fundamental concepts of object-oriented programming languages, including data abstraction and ty
fundament concept object orient program languag includ data abstract type class inherit gener type p
143 533 Concepts of Operating Systems
Survey of concepts and techniques used in modern operating systems. Sample concepts covered are conc
survei concept techniqu modern oper system sampl concept cover concurr ipc schedul resourc alloc mem
144 538 Computer Architecture
Processors, memory hierachy, and bus systems. Multi-level caches and cache coherence in MP systems.
processor memori hierachi system multi level cach cach coher system arithmet algorithm risc cisc ins
145 541 Artificial Intelligence
Introduction to the basic concepts and techniques of artificial intelligence. Knowledge representati
introduct basic concept techniqu artifici intellig knowledg represent problem solv machin learn natu
146 542 Advanced Artificial Intelligence: Combinatorial Games
Covers the theory and pracitce of finding optimal and satisfying solutions to one-player and two-pla
cover theori pracitc find optim satisfi solut player player combinatori game includ popular game sok
147 543 Advanced Artificial Intelligence: Combinatorial Search
Explores methods for the solution of constraint satisfaction and related problems using search techn
explor method solut constraint satisfact relat problem search techniqu context real world problem re
148 545 Machine Learning
Provides a broad introduction to techniques for building computer systems that learn from experience
broad introduct techniqu build comput system learn experi conceptu ground practic experi learn syste
149 546 Advanced Topics in Machine Learning
Covers a number of more advanced topics in machine learning from a more mathematicallyoriented view.
cover number advanc topic machin learn mathematicallyori view prepar successfulli machin learn techn
150 547 Computer Graphics
This course will provide an introduction to graphics systems and applications. Basic structure of in
provid introduct graphic system applic basic structur interact graphic system characterist hardwar d
151 549 Computational Geometry
Perspective and projective geometry. Analytic projective geometry, projective lines and projective p
perspect project geometri analyt project geometri project line project plane project transform line
152 550 Parallel Algorithms
Definition and nature of parallel computation. Parallel computation from the point of view of hardwa
definit natur parallel comput parallel comput point view hardwar architectur program schedul algorit
153 551 Numerical Computation
Introduction to numerical methods. Includes topics from elementary discussion of errors, polynomials
introduct numer method includ topic elementari discuss error polynomi interpol quadratur linear syst
154 552 Building Software Systems With Components
Designed to familiarize students with the concepts behind and opportunities afforded by modern compo
design familiar student concept opportun afford modern compon architectur microsoft java bean corba
155 553 Design Patterns
Software Design Patterns are reusable solutions to recurring software problems. They capture success
softwar design pattern reusabl solut recur softwar problem captur success experi convei expert insig
156 554 Software Engineering
Current methodologies for the development of large, industrial strength software systems. Topics inc
current methodolog develop larg industri strength softwar system topic includ requir specif design i
157 555 Software Specification & Verification
Theoretical and practical aspects of the software development process or software lifecycle. Covers
theoret practic aspect softwar develop process softwar lifecycl cover part cycl formul extern requir
158 556 Software Implementation and Testing
Theoretical and practical aspects of the software development process or software lifecycle. Covers
theoret practic aspect softwar develop process softwar lifecycl cover part cycl detail design implem
159 557 Functional Languages
Introduction to functional notation, recursion, higher-order functions, reasoning about functions, a
introduct function notat recurs higher order function reason function model evalu applic express fun
160 558 Programming Languages
In-depth study of current and historical issues in the design, implementation, and application of pr
depth studi current histor issu design implement applic program languag topic rang basic advanc area
161 559 Software Measurement & Models
Survey, evaluation, and application of software measurement techniques and models. Particular emphas
survei evalu applic softwar measur techniqu model emphasi product metric softwar scienc cyclomat com
162 560 Human-Computer Interaction
Introduction to the basic theory of human-computer interaction. Principles of human cognition and in
introduct basic theori human comput interact principl human cognit interfac design interfac evalu te
163 565 Construction & Analysis of Web-Based Applicaitons
Covers the basics of writing both CGI-Bin and client-side scripts for the World Wide Web. Topics inc
cover basic write cgi bin client side script world wide web topic includ client server model world w
164 567 The Wireless Web
Covers the basics of the Wireless Application Protocol (WAP) as used in modern mobile phones and oth
cover basic wireless applic protocol wap modern mobil phone handheld devic overview wap architectur
165 572 Operating Systems Internals
Internals of a specific operating system including structure of the kernel, block buffereing cache,
intern specif oper system includ structur kernel block buffer cach file system structur system call
166 573 Computer Communications
Layers of the ISO/OSI reference model; basics of computer telecommunications, networking technology;
layer iso osi refer model basic comput telecommun network technolog commun protocol function impact
167 575 Computer System Analysis
An advanced course on computer systems. Topics include operating systems, performance evaluation, de
advanc comput system topic includ oper system perform evalu devic analysi construct proof monitor fi
168 576 Computer Security
Introduction to the principles of computer security. Development of the notion of security through f
introduct principl comput secur develop notion secur formal model examin exist secur system system i
169 577 Modern Language Processors
An advanced course on compiler construction for modern programming languages, such as object-oriente
advanc compil construct modern program languag object orient function languag topic includ type chec
170 578 Program Language Semantics
Introduction to the formal mathematical study of program meaning (semantics), using one or more appr
introduct formal mathemat studi program mean semant approach oper semant denot semant program logic
171 579 Formal Verification of Hardware/Software
Introduction to the formal verifcation of functional correctness of hardware and software systems. T
introduct formal verifc function correct hardwar softwar system topic cover includ formal logic syst
172 580 Randomized Algorithms and Probabilistic Analysis
Probabilistic tools used in the design and analysis of modern algorithms and data structures. Topics
probabilist tool design analysi modern algorithm data structur topic includ review discret random oc
173 581 Theory of Computation
Computability theory: study of models of computation (Turing, Church, Kleene), recursive function th
comput theori studi model comput ture church kleen recurs function theori properti recurs recurs inn
174 582 Theory of Computation: Advanced Topics
Complexity theory; study of resource bounded computation, the complexity classes (P, NP, PSpACE and
complex theori studi resourc bound comput complex class pspace complet relativ comput random class p
175 583 Automata & Formal Languages
An advanced study of the theory of automata, formal languages and computational complexity. Main sub
advanc studi theori automata formal languag comput complex main subject finit state concept formal g
176 584 Algorithm Design & Analysis
An advanced in-depth study of the design and analysis of algorithms. Topics include models of comput
advanc depth studi design analysi algorithm topic includ model comput sort data structur graph algor
177 585 Cryptography
The goal of cryptography is the encoding of information via a cryptographic system. Cryptanalysis st
goal cryptographi encod inform cryptograph system cryptanalysi studi break cryptosystem focus crypto
178 586 Introduction to Database Management Systems
Introduction to fundamental concepts of database management using primarily the relational model. Sc
introduct fundament concept databas manag primarili relat model schema design refin queri languag da
179 587 Relational Database Management Systems
Internal design of a relational database management system. Concurrency control; lock managers; cras
intern design relat databas manag system concurr control lock manag crash recoveri queri oper evalu
180 588 Distributed Database Systems
Theory and design of distributed database systems. Concurrency control and recovery, distributed dea
theori design distribut databas system concurr control recoveri distribut deadlock detect replic que
181 589 Principles of Database Systems
This course explores the foundtions of database systems, with a focus on data models and query langu
explor foundtion databas system focu data model queri languag show formal method appli issu databas
182 591 Introduction to Computer Security
Provides a broad overview of computer security. Provides a solid theoretical foundation, as well as
broad overview comput secur solid theoret foundat real world exampl understand comput secur fundamen
183 592 Malware
This course will study the motivations of malicious code developers and the common weaknesses expo
studi motiv malici code develop common weak expoit code examin identif remedi malici code
184 593 Digital Forensics
Detailed, hands-on approach to the investigation of criminal incidents in which computers or compute
detail hand approach investig crimin incid comput comput technolog plai signific interest role famil
185 594 Internetworking Protocols
Advanced study of the protocols and algorithms used in the Internet (IETF) family of networking prot
advanc studi protocol algorithm internet ietf famili network protocol arp udp tcp multicast rout pro
186 595 Network Routing
Class will study modern packet-based routing protocols as used in the Internet including interior ga
class studi modern packet base rout protocol internet includ interior gatewai protocol igp ripv ripv
187 596 Network Management & Security
This is an advanced study of network security. Covers both network management and network security.
advanc studi network secur cover network manag network secur network manag includ design lan base ne
188 597 Sensor Networks
Foundations of sensor networks, with a focus on activity-based learning through a sequence of hands-
foundat sensor network focu activ base learn sequenc hand program exercis embed devic high level pro
189 610 Top: Computational Photography
Computational photography is a field where computer graphics, vision, optics, and photography come
comput photographi field comput graphic vision optic photographi creat high qualiti pictur discuss c
190 669 Scholarship Skills
The purpose of this course is to make participants better scholars in Computer Science. In particula
purpos make particip scholar comput scienc attempt student research writer present review concentr r