• CS 4330

    Advanced Computer Architecture
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2025

    Provides an overview of modern microprocessor design. The topics covered in the course will include the design of super-scalar processors and their memory systems, and the fundamentals of multi-core processor design. Prerequisite: CS 3330 with a grade of C- or better

  • CS 4414

    Operating Systems
     Rating

    3.06

     Difficulty

    4.32

     GPA

    2.95

    Last Taught

    Spring 2025

    Analyzes process communication and synchronization; resource management; virtual memory management algorithms; file systems; and networking and distributed systems. Prerequisite: CS 3330 or (CS 2501 COA 2 & CS 2150) or (CS 3130 and CS 3100) with a grade of C- or better or ECE 3430 or ECE 3502 Embedded Computing & Robotics 2

  • CS 4434

    Dependable Computing Systems
     Rating

     Difficulty

     GPA

    2.92

    Last Taught

    Fall 2024

    Focuses on techniques for designing & analyzing dependable computer-based systems. Topics include basic dependability concepts & attributes, fault models & effects, combinatorial & state-space modeling, hardware redundancy, error detecting & correcting codes, time redundancy, software fault tolerance, checkpointing & recovery, reliable networked systems, error detection techniques, & experimental dependability evaluation techniques. Prereq:CS 3330 or CS 2501 topic "COA 2" or ECE 3430 or ECE 4435 or ECE 3502 topic "ECR II" or CS 3130 and CS 3140; APMA 3100, APMA 3110, MATH 3100, or equivalent. Must complete CS courses with a grade of C- or better.

  • CS 4444

    Introduction to Parallel Computing
     Rating

    3.67

     Difficulty

    4.33

     GPA

    3.04

    Last Taught

    Fall 2025

    Introduces the student to the basics of high-performance parallel computing and application development for massively parallel processors (e.g., GPUs). The course will also introduce the internal architecture of these parallel processors and its impact on performance.  Prerequisite:  CS 3100 and CS 3130 with a C- or better.

  • CS 4457

    Computer Networks
     Rating

    3.50

     Difficulty

    3.00

     GPA

    3.34

    Last Taught

    Fall 2025

    A first course in communication networks for upper-level undergraduate students. Topics include the design of modern communication networks; point-to-point and broadcast network solutions; advanced issues such as Gigabit networks; ATM networks; and real-time communications. Cross-listed as ECE 4457. Prerequisite: CS 3330 or CS 2501 topic "COA 2" or ECE 3430 or ECE 4435 or ECE 3502 topic "ECR II" or CS 3130. Must complete CS courses with a grade of C- or better.

  • CS 4501

    Special Topics in Computer Science
     Rating

    3.81

     Difficulty

    3.00

     GPA

    3.62

    Last Taught

    Fall 2025

    Content varies annually, depending on instructor interests and the needs of the department. Similar to CS 5501 and CS 7501, but taught strictly at the undergraduate level. Prerequisite: Instructor permission; additional specific requirements vary with topics.

  • CS 4610

    Programming Languages
     Rating

    3.33

     Difficulty

    3.44

     GPA

    3.48

    Last Taught

    Fall 2025

    Presents the fundamental concepts of programming language design and implementation. Emphasizes language paradigms and implementation issues. Develops working programs in languages representing different language paradigms. Many programs oriented toward language implementation issues. Prerequisite: CS 2150 or (CS 2120 and 3140) with a grade of C- or better

  • CS 4620

    Compilers
     Rating

    3.50

     Difficulty

    3.50

     GPA

    3.65

    Last Taught

    Fall 2024

    Provides an introduction to the field of compilers, which translate programs written in high-level languages to a form that can be executed. The course covers the theories and mechanisms of compilation tools. Students will learn the core ideas behind compilation and how to use software tools such as lex/flex, yacc/bison to build a compiler for a non-trivial programming language.Prerequisite: CS 2150 or (CS 2120 and 3140) with a grade of C- or better

  • CS 4630

    Defense Against the Dark Arts
     Rating

    3.23

     Difficulty

    3.31

     GPA

    3.32

    Last Taught

    Fall 2025

    Viruses, worms, and other malicious software are an ever-increasing threat to computer systems. There is an escalating battle between computer security specialists and the designers of malicious software. This course provides an essential understanding of the techniques used by both sides of the computer security battle. Prerequisite: CS 3710 with a grade of C- or better

  • CS 4640

    Programming Languages for Web Applications
     Rating

    3.52

     Difficulty

    3.27

     GPA

    3.56

    Last Taught

    Spring 2025

    Presents programming languages and implementations used in developing web applications. Both client and server side languages are presented as well as database languages. In addition, frameworks that enable interactive web pages are discussed as well as formatting languages. Language features and efficiencies including scoping, parameter passing, object orientation, just in time compilation and dynamic binary translation are included. Prerequisite: CS 2150 or CS 3140 with a grade of C- or better