2025-2026 Graduate Studies Bulletin [ARCHIVED BULLETIN]
Computer Science Courses
|
|
|
|
Computer Science
Computer Science (CSC)
-
CSC 200A - Themes of Computer Science Semester Hours: 1-6 Periodically
Designed as a transition course for those students who wish to do graduate work in computer science but who need additional preparation. Covers elements in theoretical foundations, computer architecture and computer systems.
Prerequisite(s)/Course Notes: May not be used toward the MS degree requirements in computer science . May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 201A - Mathematical Logic Semester Hours: 3 Periodically
The propositional calculus: truth tables and axiomatizations. First order theories: completeness theorem, formal number theory, Gödel’s incompleteness theorem.
Prerequisite(s)/Course Notes: Open to graduate students in computer science; others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 201B - Logic Application to Software Semester Hours: 3 Periodically
Application of predicate logic and nontruth functional logics to software design and use. Logic programming (PROLOG), database and telecommunications schemata, query analysis, correctness proofs for subroutines, operating system kernels, security. Finite state machines and temporal logic applied to protocol specification.
Prerequisite(s)/Course Notes: CSC 201A or MATH 202 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 202 - Computability Semester Hours: 3 Periodically
An advanced approach to automata, computability, and complexity, with an emphasis on computability. Topics include: regular and context-free languages; decidable and undecidable problems; reducibility; recursive function theory; consideration of time and space measures on computation; completeness; hierarchy theorems; discussion of Turing machines; the halting problem and other undecidable problems.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 203 - Privacy in a Wired World Semester Hours: 3 Periodically
Advances in storage and communication technologies have enabled the collection, storage and dissemination of vast quantities of data. Data owners need to be aware that their data may contain sensitive information about individuals and businesses, and that the use or release of such data may be governed by laws, regulations, and ethical standards. This course focuses on the technical challenges of handling sensitive data, as well as on legal and policy issues that data owners and data users face. Topics covered include: the need for privacy; privacy policies and laws; privacy challenges in technology-related areas such as cloud computing, mobile computing, and RFID; privacy models; techniques for privacy-preserving data analysis and data mining.
Prerequisite(s)/Course Notes: Open to graduate students enrolled in programs in the Computer Science Department or by permission of instructor. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 204 - Algorithm Design and Analysis Semester Hours: 3 Periodically
Review of algorithm basics (Big-Oh, Big-Theta and Big-Omega notation), algorithms for searching, sorting (Mergesort, Quicksort, Heap Sort), median order statistic, hashing, priority queues, red-black trees, AVL trees, dynamic programming, amortized analysis, graph algorithms for shortest path problems, minimum spanning tree, min-cut and max-flow problems and NP completeness.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 205 - Combinatorial Optimization Semester Hours: 3 Periodically
Brief overview of algorithm design and analysis; linear algebra; linear programming; the simplex algorithm; dynamic programming; greedy algorithms; amortized analysis; algorithms for matching; network flow; packing and scheduling; and branch and bound algorithms.
Prerequisite(s)/Course Notes: CSC 204 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 206 - Analysis of Algorithms and Complexity Theory Semester Hours: 3 Periodically
Asymptotics, recurrence relations, lower bound theory including comparison trees for sorting and searching. Oracles. Lower bounds on parallel computation. Combinatorial optimization. Branch and bound: Knapsack problem, FFT and applications. Integer and polynomial arithmetic. Analysis of divide and conquer algorithms, dynamic programming, greedy algorithms, backtracking. Nondeterministic algorithms. The classes P and NP. NP completeness. Complexity hierarchy.
Prerequisite(s)/Course Notes: CSC 204 . Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 207 - Advanced Data Structures Semester Hours: 3 Periodically
Managing multiple stacks and queues. Stack series. Permutations obtainable from stacks and queues. Concatenatable queues. Locating repeated substrings: an application of stacks. Stack and queue operation sequences. Set representation methods. The union-find algorithm. Trees: Robson traversal, Lindstrom scanning, Siklossy traversal. Generalized lists. Mergeable heaps. Files as a data structure. Storage compaction. Garbage collection.
Prerequisite(s)/Course Notes: CSC 204 . Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 208 - Formal Languages, Grammars and Automata Semester Hours: 3 Periodically
Languages, the grammars that generate them, and the machines that accept them; regular languages; finite automata – deterministic and nondeterministic; transition functions and state diagrams; context-free languages and pushdown automata; context-free grammars and compiler design; context-sensitive languages and linear-bounded automata; closure results.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 209 - Cryptography Semester Hours: 3
This course is an in-depth study of the theory and practice of modern cryptography. Students will explore foundational concepts, learn cryptographic systems, and use real-world applications. Topics include Private-Key (Symmetric) Cryptography, Public-Key (Asymmetric) Cryptography, and advanced topics in cryptography.
Prerequisite(s)/Course Notes: CSC 203
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 210 - Fundamentals of Cybersecurity Semester Hours: 3
Fall, Spring
Introduction to fundamental concepts of cybersecurity, basic secure design principles, and IT system components. Topics include: file systems, access control, applications of symmetric and asymmetric cryptography, OS configuration and failure analysis, and intrusion detection systems.
Prerequisite(s)/Course Notes: Passing a placement exam in programming in C/C++
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 211 - Computational Biology Semester Hours: 3 Periodically
This course introduces mathematical techniques for design and analysis of algorithms for many central problems in biological sequence analysis and genome analysis. This course is a theoretical course and complements the more applications-oriented course, CSC 213 . The course will cover algorithms and methods in building models for problems in multiple sequence alignment, motif and pattern searches, phylogenetic analysis, genome assembly, and gene prediction, and is designed so that it can be taken independently of CSC 213 .
Prerequisite(s)/Course Notes: CSC 204 , or permission of instructor. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 212 - Database Design II Semester Hours: 3 Periodically
Advanced aspects of the IMS data model and data sublanguage. A study of the network database design including the COADASYL DBTG system. A comparative analysis of the relational, hierarchical and network approaches to database design.
Prerequisite(s)/Course Notes: CSC 254 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 213 - Introduction to Bioinformatics Semester Hours: 3 Periodically
Bioinformatics introduces computational tools and techniques for modeling and solving some central problems in molecular biology, genetics and biochemistry. Topics include pair-wise sequence alignment; multiple sequence alignment; phylogenetic analysis; database searching; gene finding and regulation; and DNA microarrays.
Prerequisite(s)/Course Notes: CSC 204 ; No credit awarded if student has credit for CSC 121, BIO 173, or BIOL 273 . May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 214 - Computation, Modeling and Simulation Semester Hours: 3 Periodically
Construction of models for computer simulation of real systems. Topics include: probability and statistical estimation techniques; Monte Carlo methods; genetic algorithms; application of modeling to large-scale systems including complex dynamic environments, financial, political, or social systems. Programming using simulation languages.
Prerequisite(s)/Course Notes: CSC 204 , 252 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 215 - Secure Systems/Ethical Hacking Semester Hours: 3 Periodically
This course covers the fundamental aspects of system security and emphasizes hands-on project work with counter-approaches against attacks on computer and information systems. Topics include but are not limited to: cryptography and its applications to security protocols; access control; OS memory organization and buffer overflow; Web application security (SQL injection and Cross Site Scripting attacks); viruses and worms; intrusion detection systems; logging and auditing systems; TCP/IP stack and various attacks on the network layer; firewall and router configurations; botnet and honeynet.
Prerequisite(s)/Course Notes: Open to graduate students enrolled in programs in the Computer Science Department with a background in Operating Systems; CSC 210 and CSC 256 or permission from the instructor. May not be taken on a Pass/Fail basis. Credit for this course or CSC 115, not both.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 216 - Decision Making Under Uncertainty in Computing Semester Hours: 3 Periodically
Decision under uncertainty arises in many areas of computing where objectives must be achieved and actions must be taken using noisy data arising in uncertain, dynamic environments and containing only partial information. Such areas include artificial intelligence, sensor fusion and integration, sensor networks, computer vision, machine learning and mobile robotics. The course surveys formal frameworks for addressing such problems and finding admissible solutions. Topics include: probabilistic reasoning, Bayesian and minimax estimation, Bayesian networks, particle filters, fuzzy logic.
Prerequisite(s)/Course Notes: CSC 204 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 219 - Cybersecurity for Everyone Semester Hours: 3 A hands-on introduction to cybersecurity threats and mitigation approaches, in a way that is accessible to students without computing backgrounds. Topics include background knowledge of Internet and web applications, packet sniffer, user authentication, prevalent attacks such as SQL injection, cross site scripting attacks, and case study of recent cybersecurity incidents. The course has an intensive hands-on lab component, and a capture-the-flag contest.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 220 - Neural Networks and Deep Learning Semester Hours: 3 Machine learning and artificial intelligence using neural networks has undergone a resurgence through the discovery of deep learning architectures and training algorithms. Tasks which were previously thought impossible are now common. The course will take students through an exciting journey from simple neural networks and backpropagation to convolutional and recurrent NN and deep learning algorithms as well as applications using real data: text, images, financial data and others.
Prerequisite(s)/Course Notes: Programming, calculus, basic knowledge of linear algebra (matrix and vector computations).
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 221 - Data Science Semester Hours: 3 An overview of Data Science, covering a number of important issues in and algorithms for working with big data. Topics include: data collection, integration, preprocessing, modeling, analysis, visualization, prediction and informed decision making, data security and privacy.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 222 - Data Warehousing Semester Hours: 3 This course will provide students with an in-depth understanding of data warehousing traditional and modern approaches. The course will cover the design and implementation of database, data warehousing and analytics database systems. Specific topics include data modeling and architecture, the ETL process, security, NoSQL databases, and complex analytics processing. Students develop a complete data warehouse system including implementation of a business intelligence project.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from the computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 228 - Human Computer Interaction / Human Factors Semester Hours: 3
This course introduces fundamental concepts and theories that help students understand how learning human physiological and psychological strengths and limitations can lead to better design, more effective learning, friendlier human computer interactions for safer environments.
This course considers the following topics, an introduction to human factors, research methods, design and evaluation methods, human sensory systems, cognition, decision making, stress and workload, safety and human error, principles of human computer interaction, sketch design and prototyping, handless interaction.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 249 - Text Mining Semester Hours: 3
PeriodicallyThis course focuses on text retrieval and analysis algorithms as applied to search engines, text categorization and clustering, topic extraction, summarization, and sentiment analysis. Topics include NLP methods for similarity, vector space and probabilistic methods for inter-document similarity, document ranking, and clustering and classification methods for text analysis. In addition, the course will survey major contemporary research directions in information retrieval.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 250 - The Semantic Web Semester Hours: 3 Spring
The Semantic Web is an evolution of the current World Wide Web where data is now represented as meaningful knowledge. With the emergence of “big data,” search engines, social networks, and personal assistants such as Siri heavily use Semantic Web technologies in order to improve how machines understand data. This course will give an introduction to Semantic Web technologies and their applications. The crux of the Semantic Web is in semantic representation and reasoning of data using description logic ontologies. Thus, we will delve into different aspects of ontology theory, representation, creation, design, reasoning, and programming. Students will build Semantic Web applications throughout the course and learn the behind-the-scenes processing of data within modern Web-based systems.
Prerequisite(s)/Course Notes: Prerequisite: CSC 204 . May not be taken on a Pass/Fail basis. Credit given for this course or CSC 150, not both.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 251 - Software Project Management Semester Hours: 3 Periodically
This course explores the concepts of software project management and information technology financial accounting. Topics include developing a software project plan, tracking progress against a plan, staffing considerations, organization in project plan development, project dimensions and measurements (such as initiation, scope, proposals, scheduling, costs, risks, control and leadership), and conflict resolution.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission from the computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 252 - Programming Language Concepts Semester Hours: 3 Once a Year
The theory, evolution and practice of high-level programming languages. The comparative analysis of modern language such as ML, PERL, C++ and Java. The impact of advanced programming methods such as higher-order functional programming, object-oriented design patterns and aspect-oriented programming.
Prerequisite(s)/Course Notes: Credit given for this course or CSC 123, not both.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 253 - Design of Programming Languages Semester Hours: 3 Periodically
Topics include: libraries, subroutines, parameter transmission, data abstraction, exception handling, design and implementation of Ada, Simula 67, SETL. Concurrency, input-output, functional programming, dataflow programming languages, VAL, object-oriented programming languages.
Prerequisite(s)/Course Notes: CSC 252 . Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 254 - Database Design Semester Hours: 3 Periodically
Study of database design and modeling; the relational model; relational algebra and calculus; normal forms; SQL query language; database application development; transaction processing; storage and indexing principles.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 256 - Advanced Operating Systems Design Semester Hours: 3 Once a Year
Review of resource management and control functions of operating systems. Process management, memory management, file systems, distributed and multiprocessor systems. Concurrent processes, scheduling, mutual exclusion, synchronization. The CSP language for specifying communication patterns in interactive systems. Deadlock prevention, avoidance, and detection. Memory management paged and segmented allocation. The memory hierarchy, caching, virtual memory, page replacement algorithms, and their analyses. Protection and security.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 258 - Compiler Construction Semester Hours: 3 Once a Year
Design and implementation of compilers for Pascal and ALGOL type languages. Lexical scanning, symbol tables, BNF grammars, parsing techniques. Error detection and diagnostics. Data representation, data structures, run-time storage organization and dynamic storage allocation. Semantic routines, internal forms, code generation and optimization techniques.
Prerequisite(s)/Course Notes: CSC 202 , CSC 252 . Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 259 - Concurrent and Parallel Programming Semester Hours: 3 Periodically
Theory and practice of concurrency and parallel programming. Hoare CSP, Pi-Calculus, distributed synchronization, asynchronous communication, high-performance clusters, massively parallel algorithms for scientific computation. Concurrent/parallel programming technologies: Java, Ada, MPI.
Prerequisite(s)/Course Notes: CSC 204 . May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 260 - Combinatorics and Graph Theory Semester Hours: 3 Once a Year
Study of combinatorial and graphical techniques for complexity analysis including generating functions, recurrence relations, Polya’s theory of counting, planar directed and undirected graphs, and NP-complete problems. Applications of the techniques to analysis of algorithms in graph theory, and sorting and searching.
Prerequisite(s)/Course Notes: CSC 205 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 264 - Computational Finance Semester Hours: 3 Periodically
This course involves the design and analysis of advanced algorithms and computer programming environments needed for quantitative analysis and financial problem solving as applied to computational financial modeling, econometric modeling and data analysis. The course draws on concepts from microeconomics, finance, mathematical optimization, data analysis, probability models, statistical analysis, and econometrics. Emphasis will be given to in-depth understanding of concepts and algorithms.
Prerequisite(s)/Course Notes: CSC 204 . Credit given for this course or CSC 164, not both.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 265 - Numerical Methods I: Analysis Semester Hours: 3 Periodically
Floating-point arithmetic. Finite-difference calculus. Polynomial, inverse, spline interpolation. Approximation: leastsquares, polynomial, Chebyshev, rational functions. Numerical integration and differentiation. Solution of nonlinear equations. Solution of ordinary differential equations.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission of computer science graduate director. Same as MATH 265 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 267 - Numerical Methods II: Linear Algebra Semester Hours: 3 Periodically
Review of linear algebra. Direct methods for linear equations. Norms, condition numbers, error analysis. Relaxation and iterative methods. Solution of eigenvalue problems. Boundary-value problems and over-determined systems.
Prerequisite(s)/Course Notes: CSC 265 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 269 - Computer Graphics Semester Hours: 3 Periodically
Survey of the hardware, software, and techniques used in computer graphics, with focus on the graphics standard and the graphics pipeline. Interactive three-dimensional computer graphics. Topics include: modeling, viewing and projective transformations, hierarchical modeling, illumination and shading, texture mapping, animation, curves and surfaces, advanced rendering. Programming with standard graphics API.
Prerequisite(s)/Course Notes: CSC 204 , 252 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 270 - Artificial Intelligence Semester Hours: 3 Periodically
Study of methods and algorithms that make a computer behave intelligently. Topics include: intelligent agents, uninformed and heuristic search algorithms, game search algorithms, propositional logic and first-order logic, inference in first-order logic, genetic algorithms, neural networks, reasoning under uncertainty.
Prerequisite(s)/Course Notes: CSC 204 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 271 - Topics in Artificial Intelligence Semester Hours: 3 Periodically
Topics vary and include: automatic theorem proving; use of logic in problem solving and problem representation; knowledge representation and machine learning; pattern matching; natural language processing; speech recognition; machine perception.
Prerequisite(s)/Course Notes: CSC 252 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 272 - Machine Learning Semester Hours: 3 Periodically
The course introduces the mathematical, algorithmic and practical aspects of machine learning. Students will learn how to design applications that learn from data and past experience. Applications include classification, clustering, prediction, decision making. Among topics covered in the class are: regression, neural networks, decision trees, support vector machines, model and feature selection, ensemble methods, boosting, clustering, graphical models.
Prerequisite(s)/Course Notes: CSC 204 or permission by instructor. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 273 - Data Mining Semester Hours: 3 Periodically
Data mining is the search for meaningful patterns in large databases. Topics covered include relationship to statistics and machine learning; data warehousing; summarization; cluster analysis; classification and prediction; mining for association rules; recommendation systems; collaborative filtering; text and Web mining; neural networks; and computational learning theory.
Prerequisite(s)/Course Notes: CSC 204 . May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 274 - Natural Language Processing Semester Hours: 3 Periodically
Study of NLP systems such as question-answering systems, dialogue systems, paraphrasing and summarizing systems, etc. Transformational grammars, augmented transition networks, frames, semantics, logic in NLP. The computational applicability of various linguistic frameworks.
Prerequisite(s)/Course Notes: CSC 270 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 275 - Pattern Recognition Semester Hours: 3 Periodically
Clustering and matching of multidimensional data. Topics include: feature evaluation, selection and extraction; similarity/distance measures and classification; maximum likelihood and minimax procedures; data structures for recognition. Applications to object and character recognition, speech and voice recognition, microarray image analysis, automated medical diagnosis.
Prerequisite(s)/Course Notes: CSC 204 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 276 - Robotics Semester Hours: 3 Periodically
Study of autonomous mobile robots. Topics include: motion, sensing and perception, localization, planning and navigation, robot learning. Experiments and projects will be implemented on real robots.
Prerequisite(s)/Course Notes: CSC 204 , 252 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 278 - Expert Systems Semester Hours: 3 Once a Year
Survey of existing expert systems and the principles that underlie them. Production systems, problem-solving systems. Representation of knowledge, including data structures for knowledge representation. Machine learning; reasoning about problems. Programming techniques; introduction to Prolog and LISP languages; expert-system generators.
Prerequisite(s)/Course Notes: CSC 270 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 279 - Computer Vision Semester Hours: 3 Periodically
A study of the algorithms and data structures that facilitate the extraction of information about real-world scenes or objects from images. Topics include: image formation, geometric and photometric camera models, noise, feature extraction, camera calibration, multiple-view geometry, 3-D shape extraction, object recognition, applications of computer vision.
Prerequisite(s)/Course Notes: CSC 204 , 252 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 280 - Logic Design and Switching Theory Semester Hours: 3 Once a Year
Review of Boolean algebra and combinatorial circuits. Karnaugh maps. Finite-state transducers. Deterministic and non-deterministic finite-state automata. State minimization, incompletely specified machines, testing sequences. Lattices, regular sets.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 282 - Real-Time Systems Semester Hours: 3 Periodically
Introduction to real-time systems. Basic operating-system functions needed for real-time computing; hard versus soft real-time systems; static scheduling, dynamic-priority scheduling, static-priority scheduling; preemptive versus non-preemptive scheduling; synchronous versus asynchronous job releases; periodic versus sporadic tasks; multiprocessors and distributed systems.
Prerequisite(s)/Course Notes: CSC 256 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 283 - Web Application Development Semester Hours: 3 Periodically
This course covers the foundational aspects of Web application development. Topics include: the structure of the Internet; client-server applications; stateless Web servers; Web applications; the Common Gateway Interface (CGI); using CGI to develop simple applications; using cookies to maintain state; common Web application stacks; servlets and server pages; writing custom tags; database connectivity; rapid application development; comparison of current technologies for Web application development.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission of the instructor. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 284 - Computer Communication Networks and Distributed Processing Semester Hours: 3 Once a Year
Introduction to data communication. Standard protocols and methods. Detailed study of an existing network (e.g., AR- Panet). Problems, techniques and performance measurements. Problems and methods for distributed processing and distributed databases.
Prerequisite(s)/Course Notes: CSC 256 . Course open to graduate students in computer science, others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 285 - Mobile Device Programming Semester Hours: 3 Periodically
This course covers the development of applications for network-enabled mobile devices. Topics include: cell phones, personal digital assistants (PDAs) and other small computational devices, their strengths and limitations; configurations and profiles; overview of programming mobile devices; standard and custom user interface elements and events; networking; record stores and persistence; text and multimedia messaging; drawing and animation using game application program interfaces (APIs) and 3D APIs; audio and video APIs; comparison of current technologies.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission of computer science graduate director. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 286 - Computer Architecture I Semester Hours: 3 Periodically
A study of the evolution of computer architecture and the factors influencing the design of hardware and software elements of computer systems. Topics may include: instruction set design; processor micro-architecture and pipelining; cache and virtual memory organizations; protection and sharing; I/O and interrupts.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission from computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 287 - Computer Architecture II Semester Hours: 3 Periodically
A continuation of CSC 286 . Topics include: superscalar architectures; VLIW machines; vector supercomputers; multithreaded architectures; symmetric multiprocessors; parallel computers; explorations of new trends in computer architecture.
Prerequisite(s)/Course Notes: CSC 286 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 288 - Network Security Semester Hours: 3 Once a Year
This course addresses networking from a security perspective. Topics include: overview of Internet protocols and architecture; the security perspective; goals of security such as confidentiality, integrity, and availability; attacks such as Denial of Service (DOS), viruses, worms, and Trojan horses; blended threats; detection and prevention; attack signatures; covert channels; firewalls, intrusion detection, and anti-virus techniques; use of cryptography techniques for authentication and communication; standard security protocols such as the Secure IP Protocol (IPsec), Secure Sockets Layer (SSL), Public Key Infrastructure (PKI); threats such as internal vs. external, structured vs. unstructured, hostile vs. non-hostile.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science; others need permission of the instructor. May not be taken on a Pass/Fail basis.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 289 - Advanced Software Engineering Semester Hours: 3
Fall, Spring
A study of the engineering approach to building sophisticated software systems. Topics include: software development model, software specification, version control, object oriented design, project management, implementation, debugging, and testing. Survey of major contemporary research directions in software engineering.
Prerequisite(s)/Course Notes: Course open to graduate students in computer science. Students of other academic disciplines need permission from the computer science graduate director.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 290 A-Z - Seminar: Special Topics Semester Hours: 3 Fall, Spring
Topics are chosen from areas of current interests such as microprocessors, minicomputers, structured programming, computer resource management, newly-released computer systems, new programming languages, heuristic programming, automatic deductive systems, parsing methods, compiler optimization, theory of computability, formal languages and automata.
Prerequisite(s)/Course Notes: Permission of department. Any course may be taken a number of times so long as there is a different letter designation each time it is taken. Specific titles and course descriptions for special topics courses are available in the online class schedule.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 291 A-Z - Seminar: Modern Topics in Computer Science Semester Hours: 3 Periodically
Topics are chosen from areas of current interest in the computing sciences, including developments in data analytics, network and system security, data protocols and exchange formats for the World Wide Web, computing hardware, cognitive science, sensor fusion, higher-order programming languages, and infinite solvable groups.
Prerequisite(s)/Course Notes: Permission of department. Any course may be taken a number of times so long as there is a different letter designation each time it is taken. Specific titles and course descriptions for special topics courses are available in the online class schedule.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 299 - Graduate Internship Semester Hours: .5-1 Fall, Spring, Summer
Internship course for graduate students in Computer Science. Students are required to work 15 hours per week for each semester hour registered. An internship proposal must be approved by the internship coordinator prior to registration for the course. At the end of the semester, students present their work at a common meeting to which all faculty and students are invited.
Prerequisite(s)/Course Notes: 3.0 GPA requirement. May not be taken on a Pass/Fail basis. May not be repeated for credit.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 300 - Independent Projects Semester Hours: 3 Fall, Spring
Prerequisite(s)/Course Notes: Permission of department and the completion of 21 graduate credits. Credit given for only one of CSC 300, 301 , and 302 or 303 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 301 - Thesis Background Research Semester Hours: 3
Fall, Spring
This is an advanced project carried out by the student, under supervision of a faculty member. An oral presentation is required as well as a written thesis.
Prerequisite(s)/Course Notes: Permission of department and the completion of 21 graduate credits. Credit given for only one of CSC 300 , 301 and 302 , or 303 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 302 - Thesis Semester Hours: 3 Fall, Spring
This is an advanced project carried out by the student, under supervision of a faculty member. An oral presentation is required as well as a written thesis.
Prerequisite(s)/Course Notes: Permission of department and the completion of 21 graduate credits. Credit given for only one of CSC 300 , 301 and 302, or 303 .
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
-
CSC 303 - Graduate Capstone Project Semester Hours: 3 Fall, Spring, Summer
Advanced project-oriented course intended for students nearing the completion of their master’s degree. Students will construct a complex software system and experience the complete software engineering process. The course will provide opportunities for students to design, implement, test, and deploy a software system. Students will submit a final project report and make either a DL or an in-class presentation.
Prerequisite(s)/Course Notes: Permission of department and the completion of 21 graduate credits in computer science. Credit given for only one of CSC 300 , 301 and 302 , or 303.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
Cooperative Education Program (COOP)
-
COOP 299 - Graduate Internship Semester Hours: No credit Fall, Spring, Summer
A full-time compensated six-month work experience in which graduate students develop professional skills relevant to their majors outside the academic environment in an industry or other organization. It encompasses a spring and summer, or a summer and fall, period of employment, and hence will extend by one semester the duration of the degree program. Students who successfully complete the experience obtain “CR” on their transcripts.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
Internship Domestic (INTD)
-
INTD 299 - Graduate Internship Semester Hours: No credit Fall, Summer, Spring
A full-time compensated six-month work experience in which graduate students develop professional skills relevant to their majors outside the academic environment in an industry or other organization. It encompasses a spring and summer, or a summer and fall, period of employment, and hence will extend by one semester the duration of the degree program. Students who successfully complete the experience obtain “CR” on their transcripts.
View Course Offering(s):
Summer Session I 2026
Summer Session II 2026
Summer Session III 2026
Fall 2026
|