M.S. in Computer Science
Academic Advisor: https://computing.njit.edu/advising
Degree Requirements
Students will meet with the graduate advisor to assist them in formulating a program of study and selecting a possible specialization.
The 30 credit requirement may be satisfied in one of three ways:
- Courses (30 credits)
- Courses (27 credits) + MS Project (3 credits)
- Courses (24 credits) + MS Thesis (6 credits)
Students with non-computing STEM background may be accepted and required to take the following bridge courses (CS 506 may count toward the credits required for the MS degree):
M.S. in Computer Science (courses only)
Code | Title | Credits |
---|---|---|
Bridge Courses | ||
CS 280 | Programming Language Concepts | 3 |
CS 332 | Principles of Operating Systems | 3 |
CS 505 | Programming, Data Structures, and Algorithms 1 | 3 |
CS 506 | Foundations of Computer Science 2 | 3 |
Total Credits | 12 |
1 | CS 505 Programming, Data Structures, and Algorithms requires prior knowledge of higher level programming language. For students with no prior programming experiences, CS 113 Introduction to Computer Science and CS 114 Introduction to Computer Science II are recommended for replacement. |
2 | The credits earned for CS 506 Foundations of Computer Science count towards the 30 credits required for the degree. |
Code | Title | Credits |
---|---|---|
Core Courses | ||
CS 610 | Data Structures and Algorithms | 3 |
or CS 667 | Design Techniques for Algorithms | |
Select three of the following: | 9 | |
Data Management System Design | ||
Operating System Design | ||
Computer Architecture | ||
Internet and Higher-Layer Protocols | ||
Elective Courses | ||
Two courses from an approved list of advanced courses | 6 | |
Course either from the Computer Science graduate catalog or from another department's graduate catalog 1 | 3 | |
Three courses from the Computer Science graduate catalog or IS 601, IS 650, IS 657, IS 665, MATH 661, YWCC 691 2 | 9 | |
Total Credits | 30 |
1 | Courses from outside the Computer Science Department must be relevant to the Computer Science program and require prior approval. |
2 | YWCC 691 can be counted towards the 30 credits required for the degree only if no more than 6 out of the 30 credits are earned from non-lecture courses. |
M.S. in Computer Science (Master's project)
Code | Title | Credits |
---|---|---|
Bridge Courses | ||
CS 350 | Intro to Computer Systems | 3 |
CS 332 | Principles of Operating Systems | 3 |
CS 505 | Programming, Data Structures, and Algorithms 1 | 3 |
CS 506 | Foundations of Computer Science 2 | 3 |
Total Credits | 12 |
1 | CS 505 Programming, Data Structures, and Algorithms requires prior knowledge of higher level programming language. For students with no prior programming experiences, CS 113 Introduction to Computer Science and CS 114 Introduction to Computer Science II are recommended for replacement. |
2 | The credits earned for CS 506 Foundations of Computer Science count towards the 30 credits required for the degree. |
Code | Title | Credits |
---|---|---|
Core Courses | ||
CS 610 | Data Structures and Algorithms | 3 |
or CS 667 | Design Techniques for Algorithms | |
Select three of the following: | 9 | |
Data Management System Design | ||
Operating System Design | ||
Computer Architecture | ||
Internet and Higher-Layer Protocols | ||
Project | ||
CS 700B | Master's Project | 3 |
Elective Courses | ||
One course from an approved list of advanced courses | 3 | |
Course either from the Computer Science graduate catalog or from another department's graduate catalog 1 | 3 | |
Three courses from the Computer Science graduate catalog or IS 601, IS 650, IS 657, IS 665, MATH 661, YWCC 691 2 | 9 | |
Total Credits | 30 |
1 | Courses from outside the Computer Science Department must be relevant to the Computer Science program and require prior approval. |
2 | YWCC 691 can be counted towards the 30 credits required for the degree only if no more than 6 out of the 30 credits are earned from non-lecture courses. |
M.S. in Computer Science (Master's thesis)
Code | Title | Credits |
---|---|---|
Bridge Courses | ||
CS 332 | Principles of Operating Systems | 3 |
CS 350 | Intro to Computer Systems | 3 |
CS 505 | Programming, Data Structures, and Algorithms 1 | 3 |
CS 506 | Foundations of Computer Science 2 | 3 |
Total Credits | 12 |
1 | CS 505 Programming, Data Structures, and Algorithms requires prior knowledge of higher level programming language. For students with no prior programming experiences, CS 113 Introduction to Computer Science and CS 114 Introduction to Computer Science II are recommended for replacement. |
2 | The credits earned for CS 506 Foundations of Computer Science count towards the 30 credits required for the degree. |
Code | Title | Credits |
---|---|---|
Core Courses | ||
CS 610 | Data Structures and Algorithms | 3 |
or CS 667 | Design Techniques for Algorithms | |
Select three of the following: | 9 | |
Data Management System Design | ||
Operating System Design | ||
Computer Architecture | ||
Internet and Higher-Layer Protocols | ||
Thesis | ||
CS 701B & CS 701B | Master's Thesis and Master's Thesis | 6 |
or CS 701C | Master's Thesis | |
Elective Courses | ||
Course either from the Computer Science graduate catalog or from another department's graduate catalog 1 | 3 | |
Three courses from the Computer Science graduate catalog or IS 601, IS 650, IS 657, IS 665, MATH 661 | 9 | |
Total Credits | 30 |
1 | Courses from outside the Computer Science Department must be relevant to the Computer Science program and require prior approval. |
2 | A student must select a specialization, and the thesis must match the selected specialization. |
Specializations
Students can optionally specialize in a specific area (see below) by taking a minimum of three (3) courses listed in the specialization in accordance with requirements (b) and (c). Note that some specialization courses have prerequisites that must be fulfilled before enrolling in these courses.
Computer Networking and Security
Code | Title | Credits |
---|---|---|
Select three of the following: | 9 | |
Cryptography and Security | ||
Distributed Systems | ||
Computer Networks-Architectures, Protocols and Standards | ||
Network Management and Security | ||
Computer Security Auditing | ||
Total Credits | 9 |
Databases and Data Mining
Code | Title | Credits |
---|---|---|
Select three of the following: | 9 | |
Advanced Database System Design | ||
Applications of Database Systems | ||
Data Mining | ||
Data Mining and Management in Bioinformatics | ||
Data Mining and Management in Bioinformatics 1 | ||
Master's Project 1 | ||
Total Credits | 9 |
1 | Taking CS 700 level courses require permission of the graduate advisor. |
Image Processing and Pattern Recognition
Code | Title | Credits |
---|---|---|
Select three of the following: | 9 | |
Image Processing and Analysis | ||
Computer Vision | ||
Advanced Image Processing and Analysis 1 | ||
Master's Project 1 | ||
Total Credits | 9 |
1 | Taking CS 700 level courses require permission of the graduate advisor. |
Computer Algorithms
Code | Title | Credits |
---|---|---|
CS 611 | Introduction to Computability and Complexity | 3 |
CS 667 | Design Techniques for Algorithms | 3 |
CS 700B | Master's Project | 3 |
Total Credits | 9 |
Bioinformatics
Code | Title | Credits |
---|---|---|
Select three of the following: | 9 | |
Foundations of Bioinformatics I | ||
Foundations of Bioinformatics II | ||
Data Mining and Management in Bioinformatics 1 | ||
Introduction to Biostatistics | ||
Master's Project 1 | ||
Total Credits | 9 |
1 | Taking CS 700 level courses require permission of the graduate advisor. |
Master's Project
Students must
- Enroll in CS 700B Master's Project.
In the semester prior to enrolling in CS 700B Master's Project, the student must prepare and submit a project proposal to the Department no later than the last weekday class day of the 8th week of the
- Fall semester for a spring project, or
- Spring semester for a summer or fall project.
The student must have an advisor in the Computer Science Department who is a tenure- track faculty member or who holds a joint appointment in the department.
Project Requirements
- Before a student pursues a Master's Project, the following requirements must be fully satisfied:
- All bridge courses must be completed - In the semester prior to the project, a student prepares and submits a project proposal to the Department no later than the last weekday class day of the 8th week of the Fall semester for a spring project and no later than the last weekday class day of the 8th week of the Spring semester for a summer or fall project. The preparatory work for the proposal may be accomplished within the framework of a required course or an independent study course offered by the prospective advisor. Therefore, such a course must be taken in the semester prior to the project.
- A CS Department tenure-track faculty member or a faculty member who holds a joint appointment in the computer science department can advise an MS project.
- Proposal preparation must adhere to the existing departmental guidelines; the information and templates are available online.
Thesis Option
(30 credits)
Students must
- select a specialization, and
- enroll in the Thesis CS 701 course for two (2) semesters (Thesis must match specialization).
A student can enroll in CS 701 during the second semester of full time study. Normally the student enrolls for two semesters of CS 701 to prepare the thesis proposal, perform the research, and prepare the thesis. The thesis must be orally defended and follow the style set forth by the Graduate School at NJIT. The thesis committee is composed of a Computer Science tenure-track committee chair and two other tenure-track members of the Computer Science Department or Faculty holding a joint appointment to the department.
Thesis Requirements
- Before a student pursues a Master's Thesis, the following requirements must be fully satisfied:
- All bridge courses must be completed.
- In the semester prior to the thesis, a student prepares and submits a thesis proposal to the department no later than week 8 of the Fall semester for a spring thesis and week 8 of the Spring semester for a summer of fall thesis. The preparatory work for the proposal may be accomplished within the framework of a required course or an independent study course offered by the prospective advisor. Therefore, such a course must be taken in the semester prior to the thesis.
- A CS department tenure-track faculty member or a faculty member who holds a joint appointment in the Computer Science Department can advise an MS thesis.
- A thesis must adhere to the style requirements set forth by the Graduate School: https://www.njit.edu/graduatestudies/thesis.php.
- An oral defense is required. The defense must take place between one week prior to the Reading Day of the semester and the last day of the Examination period. A committee of at least three tenure-track faculty members from the CS Department, including the thesis advisor, collectively determines the grade for CS 701 at the conclusion of the oral defense.
Other Policies
- Transfer: Transfer of computer science courses from other US/Canada institutions is allowed as per university regulations provided that these courses are related to the program. Graduate Advisor and Graduate Studies Office approvals are required.
- MS/MS Program: Under the University MS/MS program, up to six credits of courses taken in other departments can be used for graduate credits toward the degree as long as these courses are related to computer science. Graduate advisor and Graduate Studies Office approvals are required.
- Co-op Program: Before a student applies for CS 590 Graduate Co-op Work Experience I/CS 591 Graduate Co-op Work Experience II/CS 592 Graduate Co-op Work Experience III registration, the successful completion of the bridge program, all ESL requirements, and at least four graduate courses is required.
- The same course cannot satisfy two or more requirements.
CS Advanced Courses
Code | Title | Credits |
---|---|---|
CS 611 | Introduction to Computability and Complexity | 3 |
CS 632 | Advanced Database System Design | 3 |
CS 643 | Cloud Computing | 3 |
CS 659 | Image Processing and Analysis | 3 |
CS 661 | Systems Simulation | 3 |
CS 667 | Design Techniques for Algorithms | 3 |
CS 670 | Artificial Intelligence | 3 |
CS 673 | Software Design and Production Methodology | 3 |
CS 677 | Deep Learning | 3 |
CS 680 | Linux Kernel Programming | 3 |
CS 681 | Computer Vision | 3 |
CS 696 | Network Management and Security | 3 |
CS 704 | Sequencing and Scheduling | 3 |
CS 731 | Applications of Database Systems | 3 |
CS 744 | Data Mining and Management in Bioinformatics | 3 |
CS 750 | High Performance Computing | 3 |
CS 759 | Advanced Image Processing and Analysis | 3 |
CS 782 | Pattern Recognition and Applications | 3 |