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...

Computer Systems Elective Course

Students must take at least one course from the following three computer systems electives:

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

Project/thesis option 

Complete courses for either the project or thesis option. 

  • Project Option: Six electives (18 credits) 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: Five electives (15 credits) 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

The elective courses that count towards the Master's Degree are those numbered in the ranges CS 500 - CS 579 and CS 600 - CS 679. Up to two Independent Studies (CS 597, CS 697) can be used in the Master's Degree. 

List of active courses:

  • 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
  • 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 
  • CS 601 Research Methodology
  • CS 636X Advanced Topic of Machine Learning
  • Any Special Topics course CS 580A-CS 580Z (when offered)
  • Any Special Topics course CS 581A-CS 581Z (when offered)
  • Any Special Topics course CS 680A-CS 680Z (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.