Computer Science - Master of Science

The Master of Computer Science degree has two tracks, one with thesis or project track and a course-work only track. For all master's students, the following apply:

  • Each master's student must complete 12 credits of the basic requirements (see table below).
  • Each master's student is expected to register for C S classes numbered 500 or above, except for C S 469 Data Structure and Algorithms Transition or deficiencies.
  • Courses not in Computer Science can be included in the student’s program of study only if prior written approval has been obtained from the student’s advisor and the departmental Graduate Committee. Further details can be found in the on-line Graduate Handbook (http://www.cs.nmsu.edu/).
  • For Thesis/Project track's students: each student following this track needs to complete the following three requirements:
    • Courses: each student needs to take, in addition to the basic requirement, 15 credits of Computer Science graduate courses (courses numbered > 500) with the following restrictions:
      • One course can only be used to satisfy one requirement (e.g., if C S 510 Automata, Languages, Computability is used to satisfy the requirement for the Theories category, it cannot be counted towards satisfying the requirements on Courses).
      • At most 6 credits of C S 579 Special Topics with different topics (i.e., with different subtitles) can be counted towards the degree program of the student. 
      • At most 6 credits of C S 589 Special Research Problems can be counted towards the degree program of the student. 
      • No credit of course numbered > 599 can be counted towards the degree program. 
    • Thesis/Project: each student must write a thesis (C S 599 Master's Thesis) or undertake a research project (C S 598 Master's Project) for 6 credits
    • Master Final Exam: each student is required to sustain a final exam, covering the thesis/research project and the graduate course-work. The two parts of the exam bring equal weight.
       
  • For Course-Work Only track's students: Each student following this track needs to take, in addition to the basic requirement, 24 credits of Computer Science graduate courses (courses numbered > 500) with the following restrictions:
    • One course can only be used to satisfy one requirement (e.g., if C S 510 Automata, Languages, Computability is used to satisfy the requirement for the Theories category, it cannot be counted towards satisfying the requirements on Courses).
    • At most 6 credits of C S 579 Special Topics with different topics (i.e., with different subtitles) can be counted towards the degree program of the student. 
    • No credit of course numbered > 588 can be counted towards the degree program. 

Basic Requirements

Prefix Title Credits
Basic 3
Data Structure and Algorithms Transition3
Theories3
Automata, Languages, Computability3
Analysis of Algorithms3
Programming Language Structure II3
Advanced Cryptography3
Algorithms in Systems Biology3
Systems3
Architectural Concepts II3
Operating Systems II3
Database Management Systems II3
Computer Networks II3
Applications3
Introduction to Data Mining3
Computer Security3
Introduction to Smart Grids3
Digital Game Design3
Visual Programming3
Applied Machine Learning I3
Parallel Programming3
Cloud and Edge Computing3
Principles of Virtual Reality3
Modern Web Technologies3
Artificial Intelligence II3
Advanced Software Engineering3
Advanced Human-Centered Computing3
Total Credits12