MS Computer Science – Program of Study

MS Computer Science – Program of Study

The current MSCS curriculum took effect beginning Summer Semester 2011 and is shown below. Students entering the program in Summer 2011 or later must satisfy the current requirements.

Students who entered the program before Summer 2011 may choose to graduate under either the current curriculum or the previous MSCS curriculum located here.

Program rules

  • GPA – Students must achieve a cumulative grade point average of at least 3.0 to graduate, and no course grades below C will be allowed to count toward graduation. All grades labeled below as core and elective courses within your specialization must be B or better.
  • No course may be used to satisfy the requirements of two degrees. In addition, no graduate credit will be given for CS courses with a number lower than 4140.
  • A maximum of 6 hours may be taken at the 4000-level and/or with a subject code other than CS or CSE. See exceptions under the Project and Thesis options below.
  • Pass-Fail and Audit – All courses applied to the MSCS degree must be taken for letter grade, other than thesis hours.
  • The maximum total credit hours of Special Problems (CS or CSE 89xx) that may be applied toward the MSCS degree is 3. These courses must be within the CoC.
  • There is no maximum number of Special Topics (CS or CSE 88xx) courses that may be used towards the degree.
  • Each student must complete the requirements for one specialization.

Program options

  • Students may choose from one of the following three options in pursuing the MSCS.

Course option

  • 36 hours of course work (no MS project or thesis hours)
  • Total course credit hours required: 36
  • Minimum CS/CSE course credit hours: 30
  • Minimum CS/CSE course credit hours at the graduate (6000-8000) level: 24
  • Minimum total credit hours at the 6000-8000 level: 30

Project Option

  • 27 hours of course work and a 9-hour project. The student must obtain advance approval of the project proposal by the faculty advisor and MSCS coordinator. See your academic advisor for more information.
  • Total credit hours required: 36
  • MSCS project hours (CS 6999): 9
  • Minimum CS/CSE course hours required: 21
  • Minimum CS/CSE course credit hours at the graduate (6000-8000) level: 21
  • The approved program of study may include a maximum of (a) 3 hours of non-CS/CSE credit (b) 6 total 4000-level hours.

Thesis Option

  • 24 hours of course work and a 12-hour thesis. The student must obtain advance approval of the thesis proposal by the faculty advisor and MSCS coordinator. See your academic advisor for more information about the thesis process.
  • Total credit hours required: 36
  • MSCS thesis hours (CS 7000): 12
  • Minimum CS/CSE course hours required: 24
  • Minimum CS/CSE course credit hours at the graduate (6000-8000) level: 18
  • The approved program of study may include a maximum of 6 total 4000-level CS hours. No non-CS/CSE hours may be applied to the degree requirements.

Click here to view the Graduate Course Offering Plan for Fall 2013 to Spring 2016.

Click here to view Student Registration Dates for Fall 2014.

Specializations

Specialization in Architecture

Core Courses

(6 hours)

  • CS 6241 Design and Implementation of Compilers
  • CS 6290 High-Performance Computer Architecture

Electives

(9 hours)

  • CS 7290 Advanced Topics in Microarchitecture and Organization of High-Performance Processors

And, pick two (2) of:

  • CS 6210 Advanced Operating Systems
  • CS 7292 Reliability and Security in Computer Architecture
  • ECE 6101 Parallel and Distributed Computer Architecture
  • ECE 6130 Advanced VLSI Systems

Specialization in Computational Perception and Robotics 

Core Courses

(6 hours)

Algorithms: Pick one (1) of:

  • CS 6505 Computability, Algorithms, and Complexity
  • CS 6520 Computational Complexity Theory
  • CS 6550 Design and Analysis of Algorithms
  • CS 7520 Approximation Algorithms
  • CS 7530 Randomized Algorithms
  • CSE 6140 Computational Science and Engineering Algorithms

And, pick one (1) of:

  • CS 6601 Artificial Intelligence
  • CS 7641 Machine Learning

Electives

(9 hours)

Pick three (3) courses from Perception and Robotics, with at least one course from each.

Perception

  • CS 7495 Computer Vision
  • CS 7636 Computational Perception
  • CS 8803 Special Topics: 3D Reconstruction and Mapping
  • CS 8803 Special Topics: Multiview Geometry in Computer Vision
  • CS 8803 Special Topics: Advanced Computational Photography

Robotics

  • CS 7630 Autonomous Robotics
  • CS 7631 Autonomous Multi-Robot Systems
  • CS 7633 Human-Robot Interaction
  • CS 7649 Robot Intelligence: Planning

Specialization in Computer Graphics

Core Courses

(6 hours)

  • CS 6491 Foundations of Computer Graphics
  • CS 6505 Computability, Algorithms, and Complexity

Electives

(6 hours)

Pick two (2) from:

  • CS 6457 Video Game Design and Programming
  • CS 6485 Visualization Methods for Science and Engineering
  • CS 6764 Geometric Modeling
  • CS 7490 Advanced Image Synthesis
  • CS 7491 3D Complexity Techniques for Graphics, Modeling, and Animation
  • CS 7495 Computer Vision
  • CS 7496 Computer Animation
  • CS 7497 Virtual Environments
  • CS 8803 Special Topics: Simulation of Biological Systems

Specialization in Databases and Software Engineering 

Core Courses

(6 hours)

  • CS 6505 Computability, Algorithms, and Complexity

Pick one (1) of:

  • CS 6210 Advanced Operating Systems
  • CS 6241 Design and Implementation of Compilers
  • CS 6290 High-Performance Computer Architecture
  • CS 8803 Special Topics: Graduate Introduction to Operating Systems

Electives

(9 hours)

Pick three (3) of:

  • CS 6300 Software Development Process
  • CS 6310 Software Architecture and Design
  • CS 6340 Software Analysis and Testing
  • CS 6365 Introduction to Enterprise Computing
  • CS 6400 Database Systems Concepts and Design
  • CS 6422 Database System Implementation
  • CS 6675 Advanced Internet Computing Systems and Applications
  • CS 8803-FPL Special Topics: Foundations of Programming Languages

Specialization in High-Performance Computing 

Core Courses

(6 hours)

  • CSE 6140 Computational Science and Engineering Algorithms
  • CSE 6220 High Performance Computing

Electives

(9 hours)

Pick three (3) of:

  • CSE 6221 Multicore Computing: Concurrency and Parallelism on the Desktop
  • CS/CSE 6230 High-Performance Parallel Computing: Tools and Applications
  • CS 6241 Compiler Design
  • CS 6290 High-Performance Computer Architecture
  • CS/CSE 8803 Special Topics: Parallel Numerical Algorithms
  • CSE 6236 Parallel and Distributed Simulation
  • CSE 8803 Special Topics: Hot Topics in Parallel Computing

Specialization in Human-Computer Interaction 

Core Courses

(6 hours)

  • CS 6456 Principles of User Interface Software
  • CS 6750 Human-Computer Interaction

Electives

(9 hours)

Pick three (3) courses from the two sub-areas below, including at least one from each sub-area:

Sub-area: Design and evaluation concepts

  • CS 6010 Principles of Design
  • CS 6320 Software Requirements Analysis and Specification
  • CS 6455 User Interface Design and Evaluation
  • CS 6460 Educational Technology: Conceptual Foundations
  • CS 6465 Computational Journalism
  • CS 6470 Design of Online Communities
  • CS 6795 Introduction to Cognitive Science
  • CS 7465 Educational Technology: Design and Evaluation
  • CS 7467 Computer-Supported Collaborative Learning
  • CS 7790 Cognitive Modeling

Sub-area: Interactive technology

  • CS 6763 Design of Design Environments
  • CS 6770 Mixed Reality Experience Design
  • CS 7450 Information Visualization
  • CS 7460 Collaborative Computing
  • CS 7470 Mobile and Ubiquitous Computing

Specialization in Information Security

Core Courses

(9 hours)

  • CS 6238 Secure Computer Systems
  • CS 6260 Applied Cryptography
  • CS 6262 Network Security

Electives

(6 hours)

Take 2 of:

  • CS 6035 Introduction to Information Security
  • CS 6210 Advanced Operating Systems
  • CS 6250 Computer Networks
  • CS 6300 Software Development Process
  • CS 6340 Software Testing and Analysis
  • CS 6725 Information Security Strategies and Policies
  • CS 7560 Theory of Cryptography

Specialization in Interactive Intelligence

[Prerequisite: An undergraduate or above algorithms/computational thinking course.]

Core Courses
and Electives

(12 hours)

Take a total of four (4) courses from two of these areas:

Intelligence

  • CS 6601 Artificial Intelligence
  • CS 7620 Case-Based Reasoning
  • CS 7637 Knowledge-Based AI
  • CS 7641 Machine Learning

Interaction

  • CS 6440 Information to Health Informatics
  • CS 6460 Educational Technology: Conceptual Foundations
  • CS 6465 Computational Journalism
  • CS 7634 AI Storytelling in Virtual Worlds
  • CS 7650 Natural Language
  • CS 8803 Special Topics: Advanced Game AI

Cognition

  • CS 4752 Philosophical Issues in Computation
  • CS 4793 Integrative Perspectives in Cognitive Science
  • CS 6795 Introduction to Cognitive Science
  • CS 7610 Modeling and Design
  • CS 7697 Cognitive Models of Science and Technology
  • CS 8893 Special Topics in Cognitive Science

Specialization in Machine Learning 

Core Courses

(6 hours)

Algorithms: Pick one (1) of:

  • CS 6505 Computability, Algorithms, and Complexity
  • CS 6520 Computational Complexity Theory
  • CS 6550 Design and Analysis of Algorithms
  • CS 7510 Graph Algorithms
  • CS 7520 Approximation Algorithms
  • CS 7530 Randomized Algorithms
  • CSE 6140 Computational Science and Engineering Algorithms

And, pick one (1) of:

  • CS 7641 Machine Learning
  • CSE 6740 Computational Data Analysis: Learning, Mining, and Computation

Electives

(6 hours)

Pick two (2) of:

  • CS 7616 Pattern Recognition
  • CS 7646, Machine Learning for Trading
  • CS 8803 Special Topics: Machine Learning Theory
  • CS 8803 Special Topics: Machine Learning for Finance
  • CSE 6240 Web Search and Text Mining
  • CSE 6242, Data and Visual Analytics

Specialization in Modeling and Simulations

Core Courses

(6 hours)

  • CSE 6730 Modeling and Simulation: Foundations and Implementation

And pick one (1) of

  • CSE 6220 High Performance Computing
  • ISYE 6644 Simulation
  • MATH 6640 Introduction to Numerical Methods for Partial Differential Equations

Electives

(9 hours)

Pick three (3) of:

  • CSE 6220 High Performance Computing 
  •  CSE 6236 Parallel and Distributed Simulation
  • CSE/CHEM 8803 Special Topics: Quantum Information, Computation, and Simulation
  • INTA 6742 Modeling, Simulation and Military Gaming
  • ISYE 6644 Simulation
  • MATH 6640 Introduction to Numerical Methods for Partial Differential Equations

Specialization in Networking

Core Courses

(6 hours)

  • CS 6250 Computer Networks
  • CS 6505 Computability, Algorithms, and Complexity

Electives

(9 hours)

Pick one (1) of:

  • CS 6210 Advanced Operating Systems
  • CS 6290 High-Performance Computer Architecture

Pick two (2) of:

  • CS 6262 Network Security
  • CS 6675 Advanced Internet Computing Systems and Applications
  • CS 7260 Internetworking Architectures and Protocols
  • CS 7270 Networked Applications and Services

Specialization in Scientific Computing 

Core Courses

(6 hours)

  • CSE/MATH 6643 Numerical Linear Algebra

Pick one (1) of:

  • CSE/MATH 6644 Iterative Methods for Systems of Equations
  • MATH 6640 Introduction to Numerical Methods for Partial Differential Equations

Electives

(9 hours)

Pick three (3) of:

  • CS/CSE 6230 High-Performance Parallel Computing: Tools and Applications
  • CS/CSE 8803 Special Topics: Parallel Numerical Algorithms
  • CSE 6140 Computational Science and Engineering Algorithms
  • CSE 6220 High Performance Computing
  • CSE/MATH 6644 Iterative Methods for Systems of Equations
  • CSE 8803 Special Topics: Algorithms for Medical Imaging and Inverse Problems
  • CSE 8803/CHEM 6485 Computational Chemistry
  • MATH 6640 Introduction to Numerical Methods for Partial Differential Equations

Specialization in Social Computing

Core Courses

(6 hours)

Pick one (1) of:

  • CS 6465 Computational Journalism
  • CS 6470 Design of Online Communities

Pick one (1) of:

  • CS 6675 Advanced Internet Computing Systems and Applications
  • CS 7270 Networked Applications and Services
  • CS 8803-SOC Special Topics: Social Computing

Electives

(9 hours)

Pick three (3) more classes including additional classes from the above and:

  • CS 6238 Secure Computer Systems
  • CS 6250 Computer Networks
  • CS 6456 Principles of User Interface Software
  • CS 6505 Computability, Algorithms, and Complexity
  • CS 6750 Human-Computer Interaction
  • CS 7210 Distributed Computing
  • CS 7450 Information Visualization
  • CS 7460 Collaborative Computing
  • CS 7467 Computer-Supported Collaborative Learning
  • CS 8893 Special Topics in Cognitive Science: Cognition and Culture

Specialization in Systems

Core Courses

(6 hours)

  • CS 6210 Advanced Operating Systems
  • CS 6505 Computability, Algorithms, and Complexity

Electives

(9 hours)

Pick one (1) of:

  • CS 6238 Secure Computer Systems
  • CS 6241 Design and Implementation of Compilers
  • CS 6250 Computer Networks
  • CS 6290 High-Performance Computer Architecture

And, pick two (2) of:

  • CS 6235 Real-Time System Concepts and Implementation
  • CS 6365 Introduction to Enterprise Computing
  • CS 6675 Advanced Internet Computing Systems and Applications
  • CS 7210 Distributed Computing

Specialization in Visual Analytics

Core Courses

(6 hours)

  • CS 7450 Information Visualization

AND

  • CSE 6740 Computational Data Analysis

OR

  • CSE 6242 Data and Visual Analytics

Electives

(9 hours)

Pick three from:

  • CS 6456 Principles of User Interface Software
  • CS 6465 Computational Journalism
  • CS 6485 Visualization Methods in Science and Engineering
  • CS 6490 Computer Graphics
  • CS 6750 Human-Computer Interaction
  • CS 6795 Introduction to Cognitive Science
  • CSE 6242 Data and Visual Analytics