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.

M.S. in Computer Science (courses only)

Bridge Courses
CS 252Computer Organization and Architecture3
CS 332Principles of Operating Systems3
CS 505Programming, Data Structures, and Algorithms 13
CS 506Foundations of Computer Science 23
Total Credits12
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.

Core Courses
CS 610Data Structures and Algorithms3
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 courses6
Course either from the Computer Science graduate catalog or from another department's graduate catalog 13
Three courses from the Computer Science graduate catalog9
Total Credits30
1

Courses from outside the Computer Science Department must be relevant to the Computer Science program and require prior approval. 

M.S. in Computer Science (Master's project)

Bridge Courses
CS 252Computer Organization and Architecture3
CS 332Principles of Operating Systems3
CS 505Programming, Data Structures, and Algorithms 13
CS 506Foundations of Computer Science 23
Total Credits12
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.

Core Courses
CS 610Data Structures and Algorithms3
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 700BMaster's Project3
Elective Courses
One course from an approved list of advanced courses6
Course either from the Computer Science graduate catalog or from another department's graduate catalog 13
Three courses from the Computer Science graduate catalog6
Total Credits30
1

Courses from outside the Computer Science Department must be relevant to the Computer Science program and require prior approval. 

M.S. in Computer Science (Master's thesis)

Bridge Courses
CS 252Computer Organization and Architecture3
CS 332Principles of Operating Systems3
CS 505Programming, Data Structures, and Algorithms 13
CS 506Foundations of Computer Science 23
Total Credits12
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.

Core Courses
CS 610Data Structures and Algorithms3
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 701Master's Thesis (two semesters) 26
Elective Courses
Course either from the Computer Science graduate catalog or from another department's graduate catalog 13
Three courses from the Computer Science graduate catalog9
Total Credits30
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

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 Credits9

Databases and Data Mining

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 Credits9
1

Taking CS 700 level courses require permission of the graduate advisor.

Image Processing and Pattern Recognition

Select three of the following:9
Image Processing and Analysis
Computer Vision
Advanced Image Processing and Analysis 1
Master's Project 1
Total Credits9
1

Taking CS 700 level courses require permission of the graduate advisor.

Computer Algorithms

CS 611Introduction to Computability and Complexity3
CS 667Design Techniques for Algorithms3
CS 700BMaster's Project3
Total Credits9

Bioinformatics

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 Credits9
1

Taking CS 700 level courses require permission of the graduate advisor.

Master's Project

Students must

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 Master's Thesis course for two (2) semesters (Thesis must match specialization).

A student can enroll in CS 701 Master's Thesis during the second semester of full time study. Normally the student enrolls for two semesters of CS 701 Master's Thesis 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: www.njit.edu/v2/Directory/Admin/Graduate_Studies/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 Master's Thesis 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

CS 611Introduction to Computability and Complexity3
CS 632Advanced Database System Design3
CS 643Cloud Computing3
CS 659Image Processing and Analysis3
CS 661Systems Simulation3
CS 667Design Techniques for Algorithms3
CS 670Artificial Intelligence3
CS 673Software Design and Production Methodology3
CS 680Linux Kernel Programming3
CS 681Computer Vision3
CS 696Network Management and Security3
CS 704Sequencing and Scheduling3
CS 731Applications of Database Systems3
CS 744Data Mining and Management in Bioinformatics3
CS 750High Performance Computing3
CS 759Advanced Image Processing and Analysis3
CS 782Pattern Recognition and Applications3