MS in Computer Science

The Master of Science in Computer Science program is intended for students with a strong background in computer science and a desire to prepare for research studies or professional practice. Prospective students must complete a baccalaureate degree in computer science or a closely related field with courses in algorithms and data structures, computer organization and architecture, operating systems, programming languages and discrete mathematics. 


Curriculum

All MSCS students must complete 31 credits of computer science graduate courses as outlined below. Students can elect to complete a track in artificial intelligence or cybersecurity

The following requirements take effect for the Fall 2024 Catalog Year.

Core courses

Complete the following three core courses (total of 9 credits).  It is recommended that students complete the three core courses in the first two semesters.

  • Loading Course Info...
  • Loading Course Info...
  • Loading Course Info...

Project/thesis option 

Complete courses for either the project or thesis option (total of 22 credits). 

  • Project Option: Seven electives approved by the student’s faculty advisor (making a total of ten courses) and a 1-credit project the student develops and presents.
  • Thesis Option: Six electives approved by the student’s faculty advisor (making a total of nine courses) and a 4-credit thesis the student writes and defends.

Elective courses

Students may choose electives from the list below.  One chosen elective must involve the design and implementation of large programs.  Electives matching this description are marked with an asterisk.

  • CS 515 *Social Media Data Science Pipeline
  • CS 517 Human Computer Interaction
  • CS 520 *Computer Architecture & Organization
  • CS 524 Intelligent Mobile Robotics
  • CS 526 Internet of Things
  • CS 527 Mobile Systems Security
  • CS 528 *Computer Networks and Data Communications
  • CS 532 Database Systems
  • CS 533 *Information Retrieval
  • CS 535 Introduction to Data Mining
  • CS 536 Introduction to Machine Learning
  • CS 540 *Advanced Topics in Object-Oriented Programming
  • CS 541 *Game Development for Mobile Platforms
  • CS 542 *Design Patterns
  • CS 544 *Programming for the Web
  • CS 545 Software Engineering
  • CS 547 *High Performance Computing
  • CS 550 *Operating Systems
  • CS 552 Introduction to Cloud Computing
  • CS 553X Software Security
  • CS 555 *Introduction to Visual Information Processing
  • CS 556 Introduction to Computer Vision
  • CS 557 *Introduction to Distributed Systems
  • CS 558 Introduction to Computer Security (must complete the project option*)
  • CS 559 Science of Cyber Security
  • CS 560 *Computer Graphics
  • CS 561 Topics in Data Privacy
  • CS 565 Introduction to Artificial Intelligence
  • CS 572 *Compiler Design
  • CS 576 Programming Models for Emerging Platforms (must complete the project option*)
  • CS 601 Research Methodology
  • Any Special Topics course CS 580A-CS 580Z (when offered)
  • Any CS 600-level 3-credit course below CS 690 (when offered)

Elective courses may be taken from other departments in Watson College or from other schools within the University, subject to approval by the graduate director of the School of Computing.

Student Testimonial

Saket Chinchalikar discusses why he chose °®¶¹´«Ã½ to pursue his MS in computer science.