For Students
Course Information
100-Level Courses
CSC 100 The Beauty and Joy of Computing (3:2:2)
A broad-based introduction to key concepts and principles of computer science. Exploration of seven big ideas of computing: creativity, abstraction, data, algorithms, programming, the Internet, and impact of computing.
Coordinator: Dr. Tate Sample Syllabus
Offered as resources allow
CSC 101 Introduction to Computer Concepts (3:3)
Introduction to computers and computing. Topics cover impact of computers on society, ethical issues, hardware, and software applications.
Coordinator: Dr. Deng Course Description Sample Syllabus
Offered as resources allow
CSC 105 Data, Computing, and Quantitative Reasoning (3:3) [MAC: Quantitative Reasoning
Problem-based introduction to quantitative reasoning, including computational methods; formulation of quantitative arguments; algorithmic understanding, selection, and utilization; data modeling, interpretation, and summarization of results, on real world datasets.
Coordinator: Dr. Mohanty Sample Syllabus
Typically Offered: Every semester
CSC 110 Computational Problem Solving (3:3) [GE Core: GMT]
Pr. Non-Computer Science majors only or permission of instructor
Using computing to apply mathematical concepts in developing algorithmic solutions to real-world problems, stressing analysis and logical reasoning. A modern programming language will be introduced for examples and assignments.
Coordinator: Dr. Tate Sample Syllabus
Offered as resources allow
CSC 120 Introduction to Computer Programming for Non-Majors (3:3)
Introduction to computer programming for non-computer science majors, including programming concepts of variables, expressions, decision statements, iteration, functions, and modular design. Language and applications chosen to be relevant to non-majors.
Coordinator: Ms. Kikuchi Sample Syllabus
Typically Offered: Every semester
CSC 130 Introduction to Computer Science (3:2:2)
Pr. Grade of at least C (2.0) in MAT 120, MAT 150, MAT 151, MAT 183, MAT 184, MAT 190, MAT 191, or MAT 196 (Note: Computer Science majors should not take MAT 120, MAT 183, or MAT 184).
Programming in a high-level language. Emphasis on problem analysis, problem-solving techniques, and software design principles and techniques.
Coordinator: Ms. Kikuchi Course Description Sample Syllabus
Typically Offered: Every semester
200-Level Courses
CSC 230 Elementary Data Structures and Algorithms (3:3)
Pr. grade of at least C (2.0) in CSC 130
Advanced syntax of high level language taught in CSC 130. Emphasis on modularization and abstraction. Big-O analysis of algorithms. Design and use of abstract data types with various implementations.
Coordinator: Mr. Ariyawansa Course Description Sample Syllabus
Typically Offered: Every semester
CSC 237 Programming Language Laboratory (1-3; 1-3)
Note: May be taken twice for credit with permission of the Department Head.
Syntax and use of a programming language. Language covered announced at preregistration.
Coordinator: Dr. Deng Course Description
Offered as resources allow
CSC 250 Foundations of Computer Science I (3:3)
Pr. grade of at least C (2.0) in CSC 130 or permission of instructor
An introduction to the fundamental ideas underlying contemporary computer science with a focus on the computation and construction of objects.
Coordinator: Mr. Ariyawansa Course Description Sample Syllabus
Typically Offered: Every semester
CSC 261 Computer Organization and Assembly Language (3:3)
Pr. Grade of at least C (2.0) in CSC 130 or permission of instructor.
Introduction to the organization of the computer through the use of Assembly Language programming. Data representation, parts of the computer system, Assembly Language fundamentals, instruction sets, memory, and floating-point operations.
Coordinator: Mr. Ariyawansa Course Description Sample Syllabus
Typically Offered: Every semester
300-Level Courses
CSC 312 Ethics in Computer Science (1:1)
Pr. grade of at least C (2.0) in CSC 230 and in CSC 250, or permission of instructor
Note: This class is no longer offered. Computer Science majors now take PHI 222.
Historical and social context of computing, ethical responsibilities of the computing professional, intellectual property rights, and risks and liabilities.
Coordinator: Dr. Deng Course Description Sample Syllabus
No longer offered (Computer Science majors now take PHI 222 – Ethics in the Computer Age)
CSC 330 Advanced Data Structures (3:3)
Pr. grade of at least C (2.0) in CSC 230 and in CSC 250
Static and dynamic data structures emphasizing binary trees and graphs. Advanced programming techniques. Advanced sorting and searching algorithms. Hashing techniques. Performance analysis. Methods of developing large applications programs.
Coordinator: Dr. Kopper Course Description Sample Syllabus
Typically Offered: Every semester
CSC 339 Concepts of Programming Languages (3:3)
Pr. grade of at least C (2.0) in CSC 330
Concepts of block-structured, object-oriented, functional, logic, and concurrent programming languages. Comparative study of syntactic and semantic features of these languages and writing programs using them.
Coordinator: Dr. Mohanty Course Description Sample Syllabus
Typically Offered: Every semester
CSC 340 Software Engineering (3:3)
Pr. grade of at least C (2.0) in CSC 330
Practical and theoretical concepts of software engineering.
Coordinator: Dr. Suthaharan Course Description Sample Syllabus
Typically Offered: Every semester
CSC 350 Foundations of Computer Science II (3:3)
Pr. grade of at least C (2.0) in CSC 250, or permission of instructor
High level concepts in the theoretical foundations of computer science.
Coordinator: Mr. Ariyawansa Course Description Sample Syllabus
Typically Offered: Every semester
CSC 362 System Programming (3:3)
Pr. Grade of C or better in CSC 230 and CSC 261, or permission of instructor
System programming with emphasis on processes, memory management, multithreaded programming, synchronization and deadlocks, interprocess communication, parallel and distributed computing, networking, files systems, security, signals, and virtualization containers.
Coordinator: Dr. Mohanty Sample Syllabus
Typically Offered: Every semester
400-Level Courses
CSC 405 Data Science 3
Problem-based learning introduction to Data Science, including programming with data; data mining, munging, and wrangling; statistics, analytics, visualization; and applied machine learning, directed towards scientific, social, and environmental challenges.
Prerequisites: A grade of B+ or better in CSC 330 and (STA 271 or STA 290), or permission of instructor (prior programming and statistics experience is required).
Coordinator: Dr. Mohanty Sample Syllabus
Typically offered: Every semester
CSC 407 Network Analysis 3
Concepts and methods of network analysis, including network data extraction, management, model, visualization, and analysis of network structure and dynamics.
Prerequisites: Grade C or better in CSC 330, or permission of instructor.
Coordinator: Dr. Deng Sample Syllabus
Typically offered: Fall semesters
CSC 410 Big Data and Machine Learning 3
Big data definitions and characteristics, computing environment for big data management and processing, machine learning models and algorithms, and scaling up maching learning (high dimensionality reduction).
Prerequisites: Grades of at least C (2.0) in CSC 330 and (STA 271 or STA 290), or permission of instructor.
Coordinator: Dr. Suthaharan
Typically offered: Every semester
CSC 415 Computer Graphics 3
Survey of graphics algorithms, data structures, and techniques.
Prerequisites: Grades of at least C (2.0) in CSC 340, CSC 350, and MAT 292, or permission of instructor.
Coordinator: Dr. Kopper Sample Syllabus
Offered irregularly
CSC 416 Digital Image Processing 3
Image representation, enhancement, compression, coding, restoration, and wavelet transforms.
Prerequisites: Grades of at least C (2.0) in CSC 330, CSC 350, and MAT 292, or permission of instructor. Successful completion of STA 271 or STA 290 recommended.
Coordinator: Dr. Kim
Typically offered: Spring semesters
CSC 417 Deep Learning in Computer Vision 3
Concepts of state-of-the-art deep learning architectures, algorithms for various computer vision tasks (e.g., such as image classification, object detection, semantic segmentation, image generation, and high-dimensional image analysis), and hands-on exercises and project.
Prerequisites: Grade C or better in CSC 330, or permission of instructor.
Coordinator: Dr. Kim Sample Syllabus
Typically offered: Fall semesters
CSC 425 Bioinformatics 3
Introduction to the problems and methods in Bioinformatics. Problem areas include restriction mapping, map assembly, sequencing, DNA arrays, and sequence comparison.
Prerequisites: Permission of instructor.
Coordinator: Dr. Deng
Offered as resources allow
CSC 427 Numerical Analysis and Computing 3
Number systems and errors, solutions of non-linear and linear systems, interpolation, numerical differentiation and integration, solution of differential equations. Implementation of numerical methods using a high-level programming language.
Prerequisites: Grades of at least C (2.0) in CSC 350 and MAT 293, or permission of instructor.
Note: Cross-listed with MAT 627
Offered irregularly
CSC 429 Artificial Intelligence 3
Logical foundations, knowledge representation and reasoning, search, and selected topics such as natural language processing and reasoning under uncertainty.
Prerequisites: Grade of at least C (2.0) in CSC 330 and CSC 350 or permission of instructor.
Coordinator: Dr. Zhu Sample Syllabus
Typically offered: Every semester
CSC 439 Introduction to Compiler Design 3
Basic techniques of compiler design and implementation: lexical analysis, parsing, code generation. Sizable programming project implementing a compiler for a block-structured language with strong typing.
Prerequisites: Grades of at least C (2.0) in CSC 261 and CSC 330 or permission of instructor.
Notes: Successful completion of CSC 452 helpful.
Coordinator: Dr. Tate
Offered irregularly
CSC 442 Human-Computer Interface Development 3
Survey of concepts and techniques for human-computer interface development. Topics include user-centered design, user interface programming, and usability evaluation.
Prerequisites: Grades of at least C (2.0) in CSC 340 or permission of instructor.
Coordinator: Dr. Kopper Sample Syllabus
Typically offered: Fall semesters
CSC 452 Theory of Computation 3
Finite state automata and regular expressions, context-free grammars, push-down automata and their use in parsing, overview of language translation systems, models for programming language semantics, computability and undecidability.
Prerequisites: Grade of at least C (2.0) in CSC 350. or permission of instructor.
Coordinator: Dr. Tate Sample Syllabus
Typically offered: Every semester
CSC 454 Algorithm Analysis and Design 3
Sequential algorithm design and complexity analysis. Dynamic programming. Greedy algorithms. Graph algorithms. Selected advanced topics from NP-completeness; approximation, randomized, parallel, number-theoretic algorithms; Fast Fourier Transform; computational geometry; string matching.
Prerequisites: Grade of at least C (2.0) in CSC 330.
Coordinator: Dr. Fu Sample Syllabus
Typically offered: Every semester
CSC 461 Principles of Computer Architecture 3
Hardware and software components of computer systems, their organization and operations. Topics: comparative instruction set architectures, microprogramming, memory management, processor management, I/O, interrupts, and emulation of processors.
Prerequisites: Grades of at least C (2.0) in CSC 261, CSC 330, and CSC 350, or permission of instructor.
Coordinator: Dr. Deng Sample Syllabus
Offered irregularly
CSC 462 Principles of Operating Systems 3
Techniques and strategies used in operating system design and implementation: managing processes, input/output, memory, scheduling, file systems, and protection.
Prerequisites: Pr. grades of at least C (2.0) in CSC 261 and CSC 340 or permission of instructor.
Notes: Successful completion of CSC 461 helpful.
Coordinator: Dr. Deng Sample Syllabus
Typically offered: Every semester
CSC 463 Basic Systems Administration Laboratory 1
Installing operating systems, peripherals, hardware, and software. Backups, recompiling the kernel (loading/unloading modules), providing Web services, and user administration.
Corequisites: CSC 462 and CSC 477. or permission of instructor .
Coordinator: Dr. Deng
Offered irregularly
CSC 464 Intermediate Systems Administration Laboratory 1
Topics selected from routing, firewall, Primary Domain Controller, Backup Domain Controller, Domain Controller trust, SAMBA, DNS round robin, and PPP connectivity setup.
Prerequisites: Grade of at least C (2.0) in CSC 463 .
Coordinator: Dr. Deng
Offered irregularly
CSC 465 Advanced Systems Administration Laboratory 1
Automated installation, software installation, systems programming, system administration in a large organization. Projects will include departmental or university computer system work.
Prerequisites: Grade of at least C (2.0) in CSC 464 .
Coordinator: Dr. Deng
Offered irregularly
CSC 471 Principles of Database Systems 3
Contemporary database systems. Emphasis on query processing, design, and implementation of applications in relational (SQL) databases. Introduction to other database models such as XML, object-oriented, and deductive.
Prerequisites: Grade of at least C (2.0) in CSC 330, or permission of instructor.
Coordinator: Dr. Fu Course Description Sample Syllabus
Typically offered: Every semester
CSC 474 Principles of Data Mining 3
Foundation and principles of data mining-Architecture, languages, data preparation and core algorithms including association mining, classification and clustering will be discussed. Topics such as graph mining may be also covered.
Prerequisites: CSC 471 or permission of instructor.
Coordinator: Dr. Fu Sample Syllabus
Offered irregularly
CSC 477 Principles of Computer Networks 3
Hardware and software components of computer networks, their organization and operations. Topics: open system interconnection; local area networks; TCP/IP internetworking, routing, and packet switching; network programming.
Prerequisites: Grades of at least C (2.0) in CSC 261 and CSC 330, or permission of instructor.
Coordinator: Dr. Suthaharan
Typically offered: Fall semesters
CSC 478 Principles of Wireless Networks 3
Digital communications, communication networks, wireless communication technology, wireless networking, wireless LANs, and wireless network programming.
Prerequisites: Grades of at least C (2.0) in CSC 330 and CSC 477, or permission of instructor.
Coordinator: Dr. Deng
Offered as resources allow
CSC 481 Principles of Computer Security 3
Core concepts in computer security, including the security goals of confidentiality, integrity, and availability; authentication; access control; security software development; use of cryptography; and basic network security.
Prerequisites: Grade of C or better in CSC 261 and CSC 330, or permission of instructor.
Coordinator: Dr. Tate Sample Syllabus
Typically offered: Spring semesters
CSC 485 Modern Cryptography 3
Theory and practice of cryptography, emphasizing formal models and security reasoning. Primitives covered include private and public-key encryption, message authentication codes, hash functions, digital signatures, secret sharing, and zero-knowledge proofs.
Prerequisites: A grade of C or better in CSC 481, or permission of instructor.
Coordinator: Dr. Tate
Typically offered: Spring semesters, as resources allow
CSC 487 Network Security 3
The course explores the network security concepts of communication protocols; security in routing; remote authentication; access policies; web security; network vulnerabilities; intrusion detection
and prevention; and network traffic analysis.
Prerequisites: Grade of C or better in CSC 481 or permission of instructor.
Coordinator: Dr. Mohanty
Typically offered: Spring semesters, as resources allow
CSC 490 Senior Capstone 3
Application of classroom knowledge and skills in computer science to solve real-world problems and to develop research and development skills.
Prerequisites: Permission of instructor. student must be in the final semester of major coursework.
Coordinator: Dr. Suthaharan Course Description Sample Syllabus
Typically offered: Every semester
CSC 492 Directed Study in Computer Science 1-3
Directed Study in Computer Science.
Offered: Scheduled independently with a Computer Science faculty member
CSC 493 Honors Work in Computer Science 3
Research in a topic of special interest at the Honors level.
Notes: May be repeated for credit when topic changes.
Offered: Scheduled independently with a Computer Science faculty member
CSC 494 Directed Study in Computer Science 1-3
Notes: Grade: Pass/Not Pass (P/NP).
Offered: Scheduled independently with a Computer Science faculty member
CSC 495 Selected Topics in Computer Science 3
A topic of special interest is studied in depth.
Prerequisites: Junior standing and permission of instructor.
Notes: May be repeated for credit for a total of 6 s.h. when topic of study changes.
500-Level Courses
Starting in Fall 2019, all 500-level courses have been eliminated and replaced with 400-level versions for undergraduates and 600-level courses for graduate students. The following table shows the correspondence between the old course numbers and the new replacements:
Old 500 Level | New 600 Level | New 400 Level |
CSC 505 | CSC 605 | CSC 405 |
CSC 510 | CSC 610 | CSC 410 |
CSC 521 | CSC 615 | CSC 415 |
CSC 522 | CSC 616 | CSC 416 |
CSC 523 | CSC 627 | CSC 427 |
CSC 526 | CSC 625 | CSC 425 |
CSC 529 | CSC 629 | CSC 429 |
CSC 539 | CSC 639 | CSC 439 |
CSC 540 | CSC 642 | CSC 442 |
CSC 553 | CSC 652 | CSC 452 |
CSC 555 | CSC 654 | CSC 454 |
CSC 561 | CSC 661 | CSC 461 |
CSC 562 | CSC 662 | CSC 462 |
CSC 567 | CSC 677 | CSC 477 |
CSC 568 | CSC 678 | CSC 478 |
CSC 581 | CSC 681 | CSC 481 |
CSC 593 | CSC 692 | CSC 492 |
CSC 594 | CSC 694 | CSC 494 |
600-Level Courses
CSC 605 Data Science 3
Problem-based learning introduction to Data Science, including programming with data; data mining, munging, and wrangling; statistics, analytics, visualization; and applied machine learning, directed towards scientific, social, and environmental challenges.
Prerequisites: permission of instructor (prior programming and statistics experience is required).
Coordinator: Dr. Mohanty Sample Syllabus
Typically offered: Every semester
CSC 607 Network Analysis 3
Concepts and methods of network analysis, including network data extraction, management, model, visualization, and analysis of network structure and dynamics.
Coordinator: Dr. Deng Sample Syllabus
Typically offered: Fall semesters
CSC 610 Big Data and Machine Learning 3
Big data definitions and characteristics, computing environment for big data management and processing, machine learning models and algorithms, and scaling up maching learning (high dimensionality reduction).
Coordinator: Dr. Suthaharan
Typically offered: Every semester
CSC 615 Computer Graphics 3
Survey of graphics algorithms, data structures, and techniques.
Coordinator: Dr. Kopper
Offered irregularly
CSC 616 Digital Image Processing 3
Image representation, enhancement, compression, coding, restoration, and wavelet transforms.
Coordinator: Dr. Kim
Typically offered: Spring semesters
CSC 617 Deep Learning in Computer Vision 3
Concepts of state-of-the-art deep learning architectures, algorithms for various computer vision tasks (e.g., such as image classification, object detection, semantic segmentation, image generation, and high-dimensional image analysis), and hands-on exercises and project.
Prerequisites: None.
Coordinator: Dr. Kim Sample Syllabus
Typically offered: Fall semesters
CSC 625 Bioinformatics 3
Introduction to the problems and methods in Bioinformatics. Problem areas include restriction mapping, map assembly, sequencing, DNA arrays, and sequence comparison.
Prerequisites: Permission of instructor.
Coordinator: Dr. Deng
Offered as resources allow
CSC 626 Advanced Bioinformatics 3
Advanced topics in bioinformatics related to sequence comparison and database search, fragment assembly of DNA, physical mapping of DNA, phylogenetic trees, genome rearrangements, and molecular structure prediction.
Prerequisites: CSC 625 or permission of instructor.
Coordinator: Dr. Deng
Offered irregularly
CSC 627 Numerical Analysis and Computing 3
Number systems and errors, solutions of non-linear and linear systems, interpolation, numerical differentiation and integration, solution of differential equations. Implementation of numerical methods using a high-level programming language.
Note: Cross-listed with MAT 627
Offered irregularly
CSC 629 Artificial Intelligence 3
Logical foundations, knowledge representation and reasoning, search, and selected topics such as natural language processing and reasoning under uncertainty.
Coordinator: Dr. Zhu Sample Syllabus
Typically offered: Every semester
CSC 639 Introduction to Compiler Design 3
Basic techniques of compiler design and implementation: lexical analysis, parsing, code generation. Sizable programming project implementing a compiler for a block-structured language with strong typing.
Notes: Successful completion of CSC 452 helpful.
Coordinator: Dr. Tate
Offered irregularly
CSC 640 Software Engineering 3
Organization and scheduling of software engineering projects and structured software design. Specification methods, metrics, software engineering tools, design, prototyping, version control, and testing.
Coordinator: Dr. Kim Sample Syllabus
Typically offered: Fall semesters
CSC 642 Human-Computer Interface Development 3
Survey of concepts and techniques for human-computer interface development. Topics include user-centered design, user interface programming, and usability evaluation.
Coordinator: Dr. Kopper Sample Syllabus
Typically offered: Fall semesters
CSC 652 Theory of Computation 3
Finite state automata and regular expressions, context-free grammars, push-down automata and their use in parsing, overview of language translation systems, models for programming language semantics, computability and undecidability.
Coordinator: Dr. Zhu
Typically offered: Every semester
CSC 653 Advanced Theory of Computation 3
Computability theory including Church-Turing thesis (Turing machines, variants, other models), decidability (decidable and undecidable problems for automata and grammars, the halting problem), reducibility (undecidability of mathematical truth).
Prerequisites: CSC 452, CSC 652, or permission of instructor.
Coordinator: Dr. Zhu
Offered irregularly
CSC 654 Algorithm Analysis and Design 3
Sequential algorithm design and complexity analysis. Dynamic programming. Greedy algorithms. Graph algorithms. Selected advanced topics from NP-completeness; approximation, randomized, parallel, number-theoretic algorithms; Fast Fourier Transform; computational geometry; string matching.
Coordinator: Dr. Fu Sample Syllabus
Typically offered: Every semester
CSC 655 Advanced Topics in Algorithms 3
Modern development of algorithm design and analysis for sequential and parallel computers; parallel, number-theoretic, probabilistic, and approximation algorithms, string matching, computational geometry, NP-completeness: worst-case versus average-case.
Prerequisites: Grade of at least C in CSC 454 or 654.
Coordinator: Dr. Fu
Offered irregularly
CSC 656 Foundations of Computer Science 3
Introduces the mathematical foundations that support advanced studies in computer science including computer programming and the analysis of algorithms.
Coordinator: Dr. Tate
Typically offered: Fall semesters
CSC 661 Principles of Computer Architecture 3
Hardware and software components of computer systems, their organization and operations. Topics: comparative instruction set architectures, microprogramming, memory management, processor management, I/O, interrupts, and emulation of processors.
Coordinator: Dr. Deng Sample Syllabus
Offered irregularly
CSC 662 Principles of Operating Systems 3
Techniques and strategies used in operating system design and implementation: managing processes, input/output, memory, scheduling, file systems, and protection.
Coordinator: Dr. Mohanty Sample Syllabus
Typically offered: Every semester
CSC 663 Advanced Topics in Computer Systems 3
Distributed and parallel systems. High-speed and wireless networks. Mobile computing. Communication, synchronization, distributed shared memory, real-time and fault-tolerant systems; current implementations.
Prerequisites: CSC 330 and CSC 477 or CSC 461 or CSC 462 or CSC 677 or CSC 661 or CSC 662 or permission of instructor.
Notes: May be repeated for credit when topics vary.
Coordinator: Dr. Deng
Offered irregularly
CSC 665 Advanced Wireless Networks 3
Wireless technology and architecture, wireless network types, wireless network design approaches, wireless application development and wireless network programming.
Prerequisites: CSC 330 or equivalent and one of the following: CSC 661 or CSC 662 or CSC 677 or permission of instructor.
Coordinator: Dr. Deng
Offered irregularly
CSC 671 Advanced Database Systems 3
Modern database models. User interface and operations. Applications design. Introduction to multi-database systems: interoperability and data integration. Selected topics of current interest.
Coordinator: Dr. Kopper Sample Syllabus
Typically offered: Fall semesters
CSC 672 Database System Architecture 3
File organization and indexing techniques. Query processing and optimization. Concurrency control and crash recovery. Distributed and heterogeneous database systems. Selected topics of current interest in database and knowledge-base systems.
Prerequisites: CSC 471 or CSC 671, or permission of instructor.
Coordinator: Dr. Kopper Sample Syllabus
Offered: Spring Semesters
CSC 674 Principles of Data Mining 3
Foundation and principles of data mining-Architecture, languages, data preparation and core algorithms including association mining, classification and clustering will be discussed. Topics such as graph mining may be also covered.
Prerequisites: CSC 471 or permission of instructor.
Coordinator: Dr. Fu Sample Syllabus
Offered irregularly
CSC 675 Principles of XML Databases 3
XML from a database point of view, concentrating on information retrieval (querying) and integration.
Prerequisites: CSC 671 or permission of instructor.
Coordinator: See Department
Offered irregularly
CSC 676 Topics in Database Systems 3
Selected topics of current interest such as: deductive databases, modeling and management of uncertain and inaccurate information, multi-database systems, data mining, on-line analytical processing and data warehousing.
Prerequisites: CSC 671 or permission of instructor.
Coordinator: See Department
Offered irregularly
CSC 677 Principles of Computer Networks 3
Hardware and software components of computer networks, their organization and operations. Topics: open system interconnection; local area networks; TCP/IP internetworking, routing, and packet switching; network programming.
Coordinator: Dr. Suthaharan
Typically offered: Fall semesters
CSC 678 Principles of Wireless Networks 3
Digital communications, communication networks, wireless communication technology, wireless networking, wireless LANs, and wireless network programming.
Prerequisites: Grades of at least C (2.0) in CSC 330 and CSC 677, or permission of instructor.
Coordinator: Dr. Deng
Offered irregularly
CSC 680 Advanced Topics in Computer Security 3
Topics in cryptography and computer security, including cryptographic protocols, Web server security, Java security, security in the healthcare domain, and experimental quantum cryptography.
Prerequisites: CSC 339 and CSC 580.
Coordinator: See Department
Offered irregularly
CSC 681 Principles of Computer Security 3
Core concepts in computer security, including the security goals of confidentiality, integrity, and availability; authentication; access control; security software development; use of cryptography; and basic network security.
Coordinator: Dr. Tate Sample Syllabus
Typically offered: Fall semesters
CSC 685 Modern Cryptography 3
Theory and practice of cryptography, emphasizing formal models and security reasoning. Primitives covered include private and public-key encryption, message authentication codes, hash functions, digital signatures, secret sharing, and zero-knowledge proofs.
Prerequisites: Grade of C or better in CSC 481 or CSC 681 or permission of instructor.
Coordinator: Dr. Tate
Typically offered: Spring semesters, as resources allow
CSC 687 Network Security 3
The course explores the network security concepts of communication protocols, security in routing, remote authentication, access policies, web security, network vulnerabilities, intrusion detection and prevention, and network traffic analysis.
Prerequisites: Grade of C or better in CSC 481 or CSC 681 or permission of instructor.
Coordinator: Dr. Mohanty
Typically offered: Spring semesters, as resources allow
CSC 692 Directed Study in Computer Science 1-3
Directed Study in Computer Science.
Offered: Scheduled independently with a Computer Science faculty member
CSC 693 Advanced Topics in Computer Science 3-6
Algorithms, architecture, languages, systems, theory, or other areas of computer science.
Prerequisites: Permission of instructor.
Notes: May be repeated once for credit.
CSC 694 Directed Study in Computer Science 1-3
Notes: Grade: Pass/Not Pass (P/NP).
Offered: Scheduled independently with a Computer Science faculty member
CSC 695 Current Problems in Computer Science 3
Topics of current research interest in computer science.
Prerequisites: Permission of instructor.
CSC 697 Research Problems in Computer Science 3
Advanced research in specialized areas of computer science under the direction of a faculty member. Preparation for master’s thesis.
Prerequisites: Permission of instructor.
Notes: Grade: Satisfactory/Unsatisfactory (S/U).
Offered: Scheduled independently with a Computer Science faculty member
CSC 698 Project in Computer Science 3-6
Prerequisite: Permission of instructor;
Notes: May be repeated for up to 6 credit hours with permission of instructor. Grade: Satisfactory/Unsatisfactory (S/U).
Offered: Scheduled independently with a Computer Science faculty member
CSC 699 Thesis 1-6
Offered: Scheduled independently with a Computer Science faculty member
700-Level Courses
CSC 701 Doctoral Student Orientation 3
Introduction to computer science research and standards in different areas of computer science. Particular emphasis on research in the department with faculty-presented research presentations.
Prerequisites: Permission of instructor.
Coordinator: Dr. Mohanty
Typically offered: Fall semesters
800-Level Courses
801 Thesis Extension (1-3)
Coordinator: See Department
Offered: Scheduled independently with a Computer Science faculty member
803 Research Extension (1-3)
Coordinator: See Department
Offered: Scheduled independently with a Computer Science faculty member