Graduate Computer Science Course Descriptions

Understanding course descriptions:

The number following course title indicates total credit hours. For example, in case of the following course:

CS 566 Embedded Systems 3 (2-3)

number 3 indicates that this is a three credit course. If there are other numbers in parenthesis following the credit hour, they indicate the total number of lecture and laboratory hours per week. In the above example, (2-3) indicates that there are 2 lecture hours and 3 laboratory hours per week.

•  Prerequisites are listed if there are courses you need to take before you enroll in a course. There are three types of prerequisites:

  1. Rec.: Recommended prerequisite
  2. Prereq.: Prerequisite course that must have been completed to take this course
  3. c//: Indicates that you may take the course at the same time you take the prerequisite

•  [M] indicates that this is a writing in the major type course. The course will require writing related to the major of the student.

•  Senior standing: In order to take this course the student must have completed at least 90 credits of course work towards the degree.

Graduate courses in the Major

CS 500 Computer Science Seminar 1 Faculty research interests, departmental computer systems, computer science research, report preparation. S, F grading.

CS 516 Algorithmics 3 Prereq CS 450. Discrete structures, automata, formal languages, recursive functions, algorithms, and computability.

CS 521 Software Engineering Analysis 3 Prereq CS 320. Research in software engineering; application of quantitative techniques in the software life cycle; current software engineering literature; exploration of techniques of mathematical modeling and solutions to software engineering problems.

CS 522 Software Reuse 3 Prereq CS 420. Basic principles of software reuse, compositional and generative reuse, with specific topics selected from current literature, reverse engineering.

CS 527 Computer Security 3 Prereq CS 360, Math 216. Graduate-level counterpart of CS 427; additional requirements. Credit not granted for both CS 427 and 527.

CS 534 Neural Network Design and Application 3 Prereq graduate standing. Graduate-level counterpart of CS 434; additional requirements. Credit not granted for both CS 434 and 534.

CS 541 Artificial Intelligence 3 Prereq CS 440. Intelligent computer programs; simulation of cognitive processes.

CS 542 Computer Graphics 3 Prereq graduate standing. Graduate-level counterpart of CS 442; additional requirements. Credit not granted for both CS 442 and 542.

CS 548 Advanced Computer Graphics 3 Prereq CS 442. Solid modeling, visual realism, light and color models, advanced surface generation techniques.

CS 550 Parallel Computation 3 Prereq CS 450. Parallel machine models, principles for the design of parallel algorithms, interconnection networks, systolic arrays, computational aspects to VLSI.

CS 564 Distributed Systems Concepts and Programming 3 PrereqCS 360. Graduate-level counterpart of CS 464; additional requirements. Credit not granted for both CS 464 and 564.

CS 566 Embedded Systems 3 (2-3) Prereq graduate standing. Graduate-level counterpart of CS 466; additional requirements. Credit not granted for both CS 466 and CS 566.

CS 570 Machine Learning 3 Prereq CS 122, graduate standing. Introduction to building computer systems that learn from their experience; classification and regression problems; unsupervised and reinforcement learning.

CS 580 Advanced Topics in Computer Science 3. May be repeated for credit.

CS 585 Directed Study in Computer Science Variable 1-3. Current topics in computer science.

CS 700 Master's Research, Thesis, and/or Examination Variable. S, F grading.