May 31, 2026  
2025-2026 Graduate Studies Bulletin 
    
2025-2026 Graduate Studies Bulletin [ARCHIVED BULLETIN]

Computer Science Courses


Computer Science

Courses

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


    Periodically

    This 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