Nov 19, 2017
The Master of Science Program
The MS program is intended as preparation for professional careers in research and commercial applications, although it also provides the background for further graduate work leading to the PhD degree. The program stresses the integration of theoretical knowledge with practical applications. The central course in the curriculum is a two-semester sequence in software engineering.
Candidates must complete a minimum of 30 credits, at least 24 of which must be in courses numbered 600 or above. CS 680 , CS 681 , CS 682 , CS 683 constitute a required Advanced Software Development sequence that carries a total of 12 credits. Students are also required to choose two theoretical electives and four applied electives from among the following:
1) Theoretical Electives:
Students may also choose among the following upper-level undergraduate electives:
- CS 420 An Introduction to the Theory of Computation
- CS 444 An Introduction to Operating Systems
- CS 445 Real-Time Systems
- CS 460 Graphics
- CS 470 An Introduction to Artificial Intelligence
- MATH 470 Mathematical Logic
However, no more than two upper-level (400-level) undergraduate courses may be counted toward the requirements of the MS program.
To complete the MS program, students must participate in a software engineering project by taking the second half of the required software development sequence, CS 681 and its corequisite lab, CS 683 . In general, these two courses are completed during the last two semesters in the MS program. The project is approved by a committee that consists of two faculty members (professors who are currently teaching the software engineering course and supervise the software engineering laboratory) and the graduate program director. Students must submit the documentation for the projects and give a final oral presentation. The final project documentation will contain a signatory page containing the signatures of all members of the committee; a copy of the project will be retained by the department.
In exceptional circumstances, students with significant industrial experience may request a waiver of the software engineering requirement by applying to a faculty committee established for this purpose.
As a part of the waiver application, the student must present a portfolio demonstrating the nature of this experience. Students who receive a waiver will be required to complete a master’s thesis.
Minimum Requirements for Graduate Credit
The minimum grade for graduate credit is C. No more than two grades below B- may count for credit. With the approval of the director of the program, students may register for three credits for CS 699 Research for MS Thesis in order to write an MS thesis. This option is open to students whose grade point average is at least 3.5.
Students must maintain a grade point average (GPA) of at least 3.0 during their studies. The computation of the GPA takes into account all graduate courses the student has taken and all upper-level undergraduate courses that may count toward the program requirements.
Please see the general statement of admission requirements for all graduate studies programs in the “Admissions ” section of this publication.
Entrance requirements include a good working knowledge of computer science and mathematics. Each applicant’s background will be assessed individually with respect to these skills, and specific requirements for making up deficiencies in preparation will be determined at an initial interview. The program requires the GRE test and, for applicants from countries where English is not the primary language, the TOEFL test.
The MS program is designed to accommodate students with a wide range of backgrounds. In particular, the undergraduate degree need not be in computer science. Students may make up deficiencies by taking specific undergraduate courses. A typical set of such recommended courses includes:
- CS 110 (a sequence of introductory programming courses)
- CS 210 (a sequence of introductory programming courses)
- CS 240 Programming in C
- CS 310 Advanced Data Structures and Algorithms
- CS 320 Applied Discrete Mathematics
Other undergraduate courses may be necessary, depending on the background and experience of the candidate. These courses are described in the Computer Science Information booklet available from the program office.
Graduate students who take undergraduate courses at UMass Boston to satisfy prerequisite course requirements must earn a B or better in each such course.