M.S. in Computer Science

The Computer Science Department offers a Master of Science program as well as a number of graduate Professional Development Certificates. The Master of Science is intended for those who have a Bachelor's degree in Computer Science or related field, or have sufficient preparation. The purpose of these programs is to provide the intellectual and practical tools that professionals will need either to pursue or further careers as computer scientists in industry or to pursue a doctorate degree in computer science.

Degree Requirements

The Master's curriculum is designed with these goals in mind:

  • The core courses provide a solid foundation in the fundamental principles of computer science.
  • The 500-level electives give exposure to a variety of Computer Science subject areas.
  • The 600-level advanced courses give exposure to research topics of current interest and provide in-depth knowledge.

Master's Program Courses

A student must take a total of 33 credits from the following courses (subject to the stipulations listed below):

Core: All four courses (12 credits – 3 credits each)

Course Number Course Title
CSC 520 Foundations of Computer Science
CSC 530 Data Structures
CSC 540 Programming Languages
CSC 560 Analysis of Algorithms

Electives: At least four 500-level electives (at least 12 credits – 3 credits each)

Course Number Course Title
CSC 525 Operating Systems
CSC 535 Networks and Data Communications
CSC 545 Database System Concepts
CSC 555 Software Engineering
CSC 565 Compiler Design
CSC 575 Artificial Intelligence
CSC 576 Data Science
CSC 577 Natural Language Processing
CSC 581 Topics in Computer Science
CSC 582 Topics in Information Systems
CSC 583 Topics in Computer Security
CSC 584 Topics in Web Technology
CSC 585 User Interfaces
CSC 586 System Administration and Security
CSC 587 Modern Web Technologies Using Server-Side Technologies
CSC 588 Wireless Programming and Security

Advanced: At least two 600-level (at least 6 credits – 3 credits each)

Course Number Course Title
CSC 600 Advanced Seminar
CSC 603 Advanced Seminar in Computer Security
CSC 604 Advanced Seminar in Web Technology
CSC 605 Internship in Computer Science
CSC 610 Independent Research
CSC 620 Thesis

Those writing a master's thesis need to follow the guidelines spelled out in the Master's Thesis Guidelines Document .


  1. The four core courses must be completed within the first six courses taken and the core must be completed before any 600-level course can be taken.
  2. No more than two Advanced Seminar courses must be taken.
  3. CSC600, which serves as a vehicle for advanced topics, may be taken twice with different topics.
  4. A student who elects to do a master's thesis must take the Independent Research (CSC610) and Thesis courses (CSC620) in successive semesters. CSC 610 may count for credit towards the degree only once.

Master’s Program Admission

Applicants for the Master of Science program in Computer Science must satisfy the graduate admission requirements of the University. Further, applicants should (ideally) possess an undergraduate degree in computer science or an equivalent degree. An applicant who does not have an undergraduate degree in Computer Science or the equivalent may apply for admission to a Certificate Degree. Non-native speakers must have minimum TOEFL score of 80 (internet exam) and above and total IELTS scores of 6.5 and above. See the Graduate Catalog for further details.

Materials to Submit:

  1. A completed graduate application including goals statement.
  2. Official academic transcript(s) from all colleges and universities attended
  3. Three letters of recommendation
  4. TOEFL or IELTS scores (non-native speakers only).

Non-native speakers should see the Graduate Catalog for further details.