Master of Science in Computer Science (MSCS)
Advanced computer science degree teaches a holistic approach to problem solving
Our graduate program teaches students to understand the complexity of computing in the real-world context that it is being used.
By enrolling in our Master of Science in Computer Science degree program, you’ll learn from faculty who are involved in research collaborations with other departments and programs within the university such as the Learning Research and Development Center, the Intelligent Systems Program, the Telecommunications Program, the School of Engineering, and the School of Medicine. This gives you a comprehensive, state-of-the-art understanding of computer science and its application to a wide range of other disciplines.
Our graduate students come from all corners of the globe to pursue a wide range of research topics and work in many application areas within other disciplines. A substantial level of sponsored research has been achieved thereby providing financial support for many graduate students in the form of research assistantships.
Graduate students are expected to participate actively in their own training, to build a foundation of knowledge in computer science from course work and independent study, to identify interesting problems for their own research, and to contribute to the progress of their fellow students as well as to the science.
MS Course Requirements
The MS degree requires 30 credits of formal course work. The 30 credits include a total of 24 credits plus an MS thesis, CS 2000; or 27 credits plus an MS project, CS 2910. Please note:
- The 30 credits must include one course from each of the following foundation areas. These courses must be completed with a grade of “B” or better.
Theory and Algorithms
- CS 2150 Design and Analysis of Algorithms or
- CS 2110 Theory of Computation or
- CS 1510 Algorithm Design or
- CS 1511 Introduction to Theory of Computation
Architecture and Compilers
- CS 2410 Computer Architecture or
- CS 2210 Compiler Design
Operating Systems and Networks
- CS 2510 Computer Operating Systems or
- CS 2520 Wide Area Networks
Artificial Intelligence and Database Systems
- CS 2710 Foundations of Artificial Intelligence or
- CS 2550 Principles of Database Systems
At least twelve (for thesis option), or fifteen (for project option) additional credits of graduate (2100-level or higher) CSD courses. These cannot include independent study courses (CS2990, CS3000), thesis project or research courses (CS2910, CS3900). Alternatively, a student may count either (a) one CS1600-level or CS20xx course (excluding 2000-2009) or (b) petition GPEC to count one out-of-department course.
All coursework must be completed with an overall grade point average of 3.0 (B) or better.
MS Thesis or Project Options
There are two options for completing the MS degree: the thesis option and the project option.
The student must complete a written thesis, taking at least six credits of CS 2000, which must be taken with the S/N grading option. The student’s advisor will assist him or her in selecting a thesis committee consisting of at least three faculty members, at least two of which must be from Computer Science (one being the student’s advisor), and at most one from outside the department or university (all three could be from Computer Science). The committee will conduct a public oral final examination. The committee must be formed with all names sent to the graduate administrator at least four weeks before the examination date.
The committee will vote on the outcome and sign a report that will be filed in the AS Dean’s office. The oral examination is public and open to all members of the Computer Science Department. It must be announced to CSD via the faculty and graduate mailing lists at least one week prior to its scheduled date. The announcement must include a title, an abstract, name of advisor(s), name of committee members, date of examination, and location of examination.
Note that students selecting the thesis option must complete a total of four electives, plus foundation courses and thesis research (CS 2000), while students completing the project option must complete a total of five electives, plus foundation courses and directed research (CS 2910).
The student must complete a Master’s project, taking at least three credits of CS 2910, with the S/N grading option. Approval of a project report by the advisor is required.
Both CS 2000 and CS 2910 are closed courses, requiring approval of the faculty advisor for enrollment.
- 2000 MS Thesis Research
- 2001 Research Topics in Computer Science
- 2002 Research Experience/Computer Science
- 2003 Computer Science Colloquium
- 2012 Algorithm Design (CS 1510)
- 2040 Concepts of Scientific Computing
- 2045 Introduction to High Performance Computing Systems (CS 1645)
- 2055 Database Management Systems (CS 1555)
- 2056 Introduction to Data Science
- 2110 Theory of Computation
- 2150 Design & Analysis of Algorithms
- 2210 Complier Design
- 2310 Software Engineering
- 2410 Computer Architecture
- 2450 Parallel Computing
- 2510 Computer Operating Systems
- 2520 Wide Area Networks (TELCOM 2321)
- 2530 Computer and Network Security
- 2550 Principles of Database Systems
- 2560 Interactive Computer Graphics
- 2610 Interface Design and Evaluation
- 2620 Interdisciplinary Modeling and Visualization
- 2650 Distributed Multi-Media Systems (TELCOM 2325)
- 2710 Foundations of Artificial Intelligence (ISSP 2160)
- 2731 Introduction to Natural Language Processing (ISSP 2230 & INFSCI 2420)
- 2740 Knowledge Representation (ISSP 3712)
- 2750 Machine Learning (ISSP 2170)
- 2770 Computer Vision
- 2900 Graduate Internship
- 2910 MS Project
- 2990 Independent Study
- 3000 Research and Diseratation PhD
- 3001 Research Methods in Computer Science
- 3110 Advanced Topics in Theory of Computation
- 3120 Theory of Learning Algorithms (ISSP 3520) Subtitle (2081) Evolutionary Computation
- 3130 Cryptography: from Theory to Practice
- 3150 Advanced Topics in Design and Analysis of Algorithms
- 3210 Advanced Topics in Programming Languages
- 3220 Compiling Techniques/Parallel Systems
- 3230 Advanced Complier Techniques
- 3320 Specification and Design of Software Systems
- 3410 Advanced Topics in Computer Architecture
- 3510 Advanced Topics in Operating Systems
- 3520 Advanced Topics in Computer Networks
- 3521 Advanced Topics in Sensing and Ubiquitous Technologies
- 3525 Advanced Topics in Security and Privacy
- 3530 Advanced Topics in Distributed and Real-Time Systems
- 3540 Advanced Topics in Concurrent and Distributed Computing
- 3550 Advanced Topics in Management of Data
- 3551 Advanced Topics in Distributed Information Systems
- 3555 Advanced Topics in Web Technologies
- 3570 Advanced Topics in User Interface Design
- 3580 Advanced Topics in Parallel Computing
- 3610 Advanced Topics Graphics
- 3650 Visual Languages and Programming (ISSP 3180)
- 3710 Advanced Topics in Artificial Intelligence (ISSP 3565)
- 3730 Advanced Topics in Natural Language Processing (ISSP 3120)
- 3740 Knowledge Representation (ISSP 3712)
- 3750 Advanced Topics in Machine Learning (ISSP 3535)
- 3790 Pattern Recognition (ECE 2372)
List of Areas of Research
You can choose from many challenging research topics:
- Algorithmic problems related to green computing
- Artificial intelligence
- Big data
- Content-based image retrieval
- Computer architecture
- Computational linguistics
- Distributed multimedia systems
- High performance computing
- High-speed networks to support real-time applications
- Human computer interaction
- Local area networks
- Machine learning
- Natural language processing/computational linguistics
- Power management
- Resource management
- User-centric data management
Statute of Limitations
The MS in Computer Science must be completed within four calendar years from the student’s initial registration for graduate studies. This limit applies to all students, whether full-time or part-time. Normally, full-time students will complete the degree within two years.
Students must file an official Application for Graduation in the Office of Graduate Studies, 5141 Sennott Square, early in the term in which graduation is expected. A student must be registered for at least one credit during that term.
Copies of the thesis must be submitted to the committee at least two weeks in advance of the examination. The project report must be submitted to the advisor at least a week in advance of the end of the term.
Within the last three years, our students have held internships at: