Program Description
The Department of Computer and Electrical Engineering and Computer Science (CEE/CS) offers a graduate program leading to a Master of Science in Computer Science degree. The program is intended to prepare students for high-tech careers in the computing industry, government agencies, academic research, or graduate studies at the doctoral level. Thesis and project options are both available in the program and the electives are designed in response to regional, state, and national needs in computing. A broad range of faculty research interests, access to modern facilities, and a strong student-faculty interaction permit the student to choose from a broad spectrum of research or project topics.
Program Objectives
The program educational objectives are to prepare graduates who:
- Demonstrate expertise in advanced computing topics and an ability to maintain a high standard of professional competence.
- Analyze and solve significant real world problems with contemporary computing knowledge.
- Apply computing knowledge ethically, with an understanding of realistic constraints and for the overall benefit of a diverse society.
- Enhance the economic well-being of their region through a combination of computing expertise, communication skills, social responsibility, leadership, and entrepreneurship.
All graduates are also expected to adhere to the Association for Computing Machinery (ACM) Code of Ethics, https://www.acm.org/code-of-ethics.
Program Administration
Program Committee and Graduate Program Director
The Program Committee consists of at least three faculty members from the CEE/CS Department. The Graduate Program Director is the chair of the committee. The committee is appointed following the procedures outlined in the CSUB University Handbook, in consultation with the faculty of the CEE/CS Department, the Dean of Natural Sciences, Mathematics, and Engineering (NSME) and the Dean of Extended Education and Global Outreach (EEGO).
The Program Committee makes decisions regarding student admission and classification, petitions from students in the program, curriculum development and revision, and course offerings. The Graduate Program Director is responsible for approving each student’s Plan of Study, approving changes in student status such as advancement to Candidate status, overseeing advising for students in the program, and coordinating other program administrative tasks (in consultation with the CEE/CS Department Chair). The Graduate Program Director also serves as the faculty liaison between the program and EEGO.
Advising
The Graduate Program Director is responsible for assigning a Program Advisor to each student. The Program Advisor is a member of the program faculty who can best serve the student’s needs. The Program Advisor mentors the student through the graduate program, helps the student select elective and capstone options for their Plan of Study, assists the student in identifying an appropriate Thesis or Project Advisor, and responds to concerns raised by the student. Students should meet with their Program Advisor early on in the program to develop their Plans of Study in order to facilitate timely completion of the degree.
Capstone Options
Students in the program have two options for their capstone experience:
- a Thesis or
- a Project.
Each student will choose a capstone option in consultation with their Program Advisor, as part of their approved Plan of Study.
Students who select the Thesis option are expected to complete a research project on a significant problem, with broad scope and originality, within computer science, including appropriate background research on the selected topic. Thesis option students should identify their Thesis Advisor by the end of their second term. The Thesis Advisor will supervise the student’s research and chair the student’s Thesis Committee. Each student will have a Thesis Committee with at least three members, including the Thesis Advisor. At least two of the committee members must be faculty members within the program. The third committee member should preferably be a faculty member from outside the program, a faculty member from another institution, or a community member. Committee members from other institutions or from the community must follow campus policies for participation in the committee, as listed in the Division of Graduate Programs section of CSUB’s catalog. The Thesis Advisor will serve as the instructor of record for the CMPS 6910 Thesis Research and CMPS 6920 Thesis Defense Thesis course sequence. The student’s selected research topic must be approved by the student’s Thesis Committee and the Graduate Program Director to advance to Candidate status. The student is expected to orally defend their thesis, complete all revisions required by the Thesis Committee and the Program Committee, and file their thesis with the CSUB library to satisfactorily complete CMPS 6920 Thesis Defense.
Students who select the Project option are expected to complete an innovative software or computing project of significant undertaking, including appropriate market research for the project. Project options students will have a Project Committee with at least three members, with one Project Committee member designated as the Project Advisor. The majority of the Project Committee members must be faculty members from within the program. The Project Advisor will serve as the instructor of record for the CMPS 6950 Graduate Project I and CMPS 6960 Graduate Project II Graduate Project course sequence. The student’s project must be approved by the student’s Project Committee and the Graduate Program Director to advance to Candidate status. The student must complete all revisions to the project and project report required by the Project Committee and the Program Committee to satisfactorily complete CMPS 6960 Graduate Project II.
For both capstone options, the Program Advisor will assist the student in identifying an appropriate Thesis or Project Advisor prior to enrollment in CMPS 6910 Thesis Research or CMPS 6950 Graduate Project I, depending on the capstone option selected. The student’s Thesis or Project Advisor will assist the student in identifying the other members of the Thesis or Project Committee.
Any thesis or project involving human subjects research, either through direct measurement or from secondary sources, must have a human subjects protocol reviewed and approved by the CSUB Institutional Review Board (IRB). Any thesis or project involving non-human animals must have their research or educational protocol reviewed and approved by the CSUB Institutional Animal Care and Use Committee (IACUC).
Application and Admissions Process
Application for the Master of Science in Computer Science
Persons seeking a Master of Science in Computer Science must apply to both the university and the MS Computer Science graduate program for admission to this specific graduate program. Students will be admitted into the program with either conditionally classified status or classified status, depending on their prior academic preparation in computer science. In order to apply to the program, students must submit their application packet to CSUB Extended Education.
Admissions Requirements for the Master of Science in Computer Science
The following criteria must be met for a student to be admitted to the Master of Science in Computer Science program:
- An earned bachelor’s degree from an accredited institution.
- Minimum coursework equivalent to
Course List
Code |
Title |
Units |
CMPS 2010 | Programming I: Programming Fundamentals | 4 |
CMPS 2020 | Programming II: Data Structures and Algorithms | 4 |
CMPS 2120 | Discrete Structures | 4 |
CMPS 2240 | Computer Architecture I: Assembly Language Programming | 4 |
MATH 2510 | Single Variable Calculus I | 4 |
MATH 2520 | Single Variable Calculus II | 4 |
is required to be considered for admission in the program. Additional upper-division coursework is required to be admitted at Classified Graduate Student status, as detailed in that section.
- An undergraduate GPA of at least 3.0 in the last 60 semester units or 90 quarter units of course work is required for Classified Graduate Student status. The Program Committee may admit students with at least a 2.5 GPA, but less than a 3.0 GPA, at Conditional Graduate Student status on a case-by-case basis.
- Submission of three letters of recommendation, including EEGO reference forms.
- Submission of a personal statement and curriculum vitae/resume.
- Formal decision by the Program Committee to accept the student into the graduate program. The decision will be based on a formal application procedure, which includes evaluation of coursework, GPA, letters of recommendation, personal statement, curriculum vitae, and other application materials that may be required by the Committee and/or offered by the student.
Applicants whose bachelor’s degree is not yet awarded at the time of application may be admitted as a Conditionally Classified Graduate Student. Proof of degree completion must be submitted to the Program Committee prior to beginning the MS Computer Science program.
In addition to meeting the above requirements for admission, all graduate applicants, regardless of citizenship, whose preparatory education is principally in a language other than English must demonstrate competence in English, both in spoken and written forms. The minimum score on the Test of English as a Foreign Language (TOEFL) required for admissions is a score of 550 or higher (or 80 on the Internet-based TOEFL exam or 6.5 on the IELTS). Documentation must be provided in original form by the testing institution.
Graduate Student Classification
Classified Graduate Student
Acceptance as a Classified Graduate Student indicates that space is available in the program for the student and that the student has met the minimum academic preparation requirements for the program, as follows:
- An earned baccalaureate degree from an accredited institution.
- Computer science coursework equivalent to:
- An undergraduate GPA of at least 3.0 in the last 60 semester units or 90 quarter units of course work.
Conditionally Classified Graduate Student
Applicants who do not meet the requirements for Classified Graduate Student status may be provisionally admitted to the MS Computer Science program as a Conditionally Classified Graduate Student if, in the judgement of the Program Committee, the applicant has potential to successfully complete all remaining requirements for Classified Graduate status within a reasonable time frame. The remaining requirements and the time frame will be determined by the Program Committee and will be specified in the admissions letter. Upon successful completion of all requirements (or approved substitutions for remaining coursework), the student can apply for full acceptance to the program as a Classified Graduate Student. Failure to satisfactorily complete all requirements within the specified time frame will result in dismissal from the program.
Note: Conditionally Classified Graduate Students may not enroll in more than 10 semester units of coursework for graduate credit prior to advancing to Classified Graduate Student status. Conditionally Classified Graduate Students are also not allowed to enroll in any 6000-level courses.
Advancement to Candidate Status
Advancement to Candidate status indicates that the student has completed at least 20 semester units (30 quarter units) within the student’s approved Plan of Study and that there is a reasonable expectation that the student will complete all remaining degree requirements within one calendar year. Students will be advanced to Candidate status when they have met the following criteria:
- Completion of all requirements for Classified Graduate Student status.
- Approval of the student's Plan of Study by the Graduate Program Director.
- Completion of at least 20 semester units (30 quarter units) towards the Master of Science in Computer Science degree with a graduate GPA of at least 3.0 and grades of “B-” or better in all graded courses on the approved Plan of Study.
- Approval of the capstone option selected by the student:
- Thesis option: Approval of the student’s Thesis research topic by the student’s Thesis Committee and the Graduate Program Director.
- Project option: Approval of the student’s Project by the student’s Project Committee and the Graduate Program Director.
- Certification by the student’s Thesis or Project Advisor that the student will satisfactorily complete their capstone option within one calendar year.
Graduation Writing Assessment Requirement (GWAR)
The California State University system requires all degree candidates to demonstrate upper division writing competency before the degree can be conferred. Students who do not meet the GWAR Waivers for Graduate Students guidelines as specified in the Academic Information and Division of Graduate Programs sections of the CSUB Catalog are required to satisfy GWAR prior to the end of the first semester of the program.
Time Limits
Time limits have been set for completion of requirements at each level of status. For students admitted as Conditionally Classified Graduate Students, advancement to Classified Graduate Student status must be accomplished in the time frame specified in the admissions letter. Advancement to Candidate status must be accomplished within three calendar years of achieving Classified Graduate Student status. The three-year limit may be extended upon approved petition to the Program Committee. All requirements, and graduation, must be completed within five calendar years of admission to the program. The five-year limit may be extended upon approved petition to the Program Committee.
Course List
Code |
Title |
Units |
CMPS 5000 | Colloquium in Computer Science (2 terms) | 2 |
CMPS 5010 | Current Topics in Computer Science | 2 |
CMPS 5100 | Research Methodologies and Professional Ethics | 2 |
CMPS 5120 | Graduate Algorithm Design and Analysis | 3 |
| 6 |
| Graduate Computer Architecture | |
| Graduate Software Engineering | |
| Graduate Programming Languages and Compilers | |
| Graduate Operating Systems | |
| Graduate Distributed Computation | |
| 3-6 |
| Thesis Research | |
| Thesis Defense | |
| Graduate Project I | |
| Graduate Project II | |
1 | 9-12 |
Total Units | 27-33 |
Electives should be chosen in consultation with the student’s Program Advisor and submitted to the Graduate Program Director for approval. Approved electives will be recorded on the student’s Plan of Study.
Electives are available in the following areas:
Units from
Course List
Code |
Title |
Units |
CMPS 5240 | Graduate Computer Architecture | 3 |
CMPS 5350 | Graduate Software Engineering | 3 |
CMPS 5500 | Graduate Programming Languages and Compilers | 3 |
CMPS 5600 | Graduate Operating Systems | 3 |
CMPS 5640 | Graduate Distributed Computation | 3 |
in excess of the 6 units needed to satisfy the Core Course requirements may also be used as elective units, with approval of the Graduate Program Director.
Up to 6 semester units of CMPS 4000-level coursework not previously used to meet baccalaureate degree requirements may be used as elective units, with approval of the Graduate Program Director. However, international students under certain visas must take all courses used for the MS Computer Science degree at the graduate level (5000 and above) and cannot use the 4000-level petition for elective credit.
Graduation Requirements
The university will confer the degree upon the fulfillment of the following requirements:
- Completion of all required courses according to an approved Plan of Study with a GPA of 3.0 or better.
- Completion of all graded courses on the approved Plan of Study with a grade of “B-” or better.
- Satisfactory completion of the student’s chosen capstone option (Thesis or Project):
Thesis option: Satisfactory completion of the thesis, including oral examination, any revisions required by the student’s Thesis Committee or the Program Committee, and filing the thesis with the library.
Project option: Satisfactory completion of the project and project documentation, including any revisions required by the student’s Project Committee or the Program Committee.