The department of Computer Science at UMass Boston offers programs in graduate studies leading to the degrees of Master of Science (MS) and Doctor of Philosophy (PhD). In addition to these programs, our department also offers a Graduate Certificate in Database Technology.
All graduate courses are scheduled in the late afternoon and evening. The programs are open to full-time and part-time students as well as those who want to strengthen specific skills by taking single courses.
The MS program is designed to accommodate students with a wide range of backgrounds. Therefore, an undergraduate degree in any discipline will be considered. Each applicant's background in Computer Science and Mathematics will be assessed individually and requirements for making up deficiencies in the major will be determined at an initial interview. General Computer Science undergraduate prerequisite courses include CS115L or CS110, CS210, CS240, CS310, and CS320L/CS220. Other undergraduate courses may be necessary, depending on the background and experience of the candidate. For the PhD program, we require that the applicant have a degree in the Computer Science field.
Masters and PhD applications are accepted in both the Fall and Spring semesters.
For more information, please visit the graduate admissions webpage.
Grade Point Average (GPA) Requirements
Students must maintain a minimum GPA of 3.0. A student may re-take one course once towards his or her degree and only the second grade will be applied. If a student’s GPA falls below 3.0 he or she will automatically be on academic probation. If the GPA does not improve the following semester the student may be recommended for dismissal for failing to make progress towards a degree.
The minimum grade for graduate credit is C. No more than two grades below B- may count for credit. MS students may register for three credits of CS699 (Research for MS Thesis) in order to write a thesis with the approval of the Director of the program. This option is open for students whose GPA is at least 3.5
With the exception of CS485, all Computer Science courses numbered 400 and higher are considered graduate level courses. All courses completed towards the masters degree will be considered in the student’s GPA; a student may not choose to take an additional course in lieu of a course in which he or she has earned a weak grade.
The Master of Science Degree
The MS program is intended as a preparation for professional careers in software development, although it will also provide the background for further graduate work leading to the PhD degree. The program stresses the integration of theoretical knowledge with practical applications. The course curriculum includes a two semester software engineering capstone project.
Candidates for the degree must complete a minimum of 30 credits, at least 24 of which must be in courses numbered 600 or above.
Object-Oriented Software Development I and II (CS680 and CS681), including Software Development Laboratory I and II (CS682 and CS683) are required courses and carry a total of 12 credits. Students must take this sequence during the final part of their coursework. We also require that students choose two theoretical electives and four applied electives from among the following courses:
Theory of Computation (CS620),
Theory of Formal languages (CS622),
Analysis of Algorithms (CS624),
Introduction to the Theory of Computation (CS420),
Logical Foundations in Computer Science (CS720),
Topics in Algorithm Theory and Design (CS724),
Mathematical Logic (Math470).
User Interface Design (CS615)
Database Management Systems (CS630)
Architecture of Database Systems (CS634)
Database Application Development (CS636)
Database-Backed Web Sites and Web Services(CS637)
Semi-Structured Data and XML Documents on the Web (CS639)
Computer Architecture (CS641)
Operating Systems (CS644)
Computer Communication Networks (CS646)
Multimedia Networking (CS647)
Wireless Networks and Mobile Computing (CS648)
Image Processing (CS664)
Artificial Intelligence (CS670)
Neural Networks (CS672)
Natural Language Processing (CS674)
Computer Vision (CS675)
Database System Internals (CS734)
Data Mining (CS738)
High Performance Computer Architectures (CS741)
Implementation of Very High Level Programming Languages (CS750)
Parallel Programming (CS752)
Color Science for Computer Graphic Applications (CS768)
or these following undergraduate courses:
No more than two upper-level undergraduate courses may be used for graduate credit in the MS program. Upper-level undergraduate courses are undergraduate courses at the 400 level mentioned in one of the previous lists.
To complete the MS program students must participate in a software development project by taking the software development sequence (CS680 through CS683). In general, this sequence is taken 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 development course and supervise the software development 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 development 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 an MS thesis.
The Doctor of Philosophy Degree
The Computer Science PhD Program prepares students for research careers in the software industry and in academia. It combines a commitment to theory with significant experience in software development. The areas in which students may carry out dissertation research are currently applied database research, biodiversity informatics, data mining, distributed software systems, network information systems, and visual attention.
The program requires 48 credits of course work, a minimum of 15 credits of dissertation research, at least one year of full-time status, and a doctoral dissertation containing original results. The first 30 credits of course work are subjected to the requirements of the MS program in Computer Science: two theory courses (excluding CS720 and CS724); the software engineering sequence; and four electives. A GPA of 3.5 must be maintained at all times.
After 30 credits of graduate work have been completed, candidates who leave the program will be awarded an MS degree in Computer Science if their course work satisfies the requirements specified for the degree.
Candidates who continue with the program will take a written qualifying exam to verify the breadth of his or her knowledge. The examination covers theoretical computer science and two of the following areas:
- Programming languages
- Computer architecture and operating systems
- Artificial Intelligence
The Major Advisor and the Thesis Committee
Every incoming PhD student will have a temporary advisor appointed by the department, until a major advisor is appointed through the procedure described below.
After the candidate passes the qualifying exam, he or she must apply to the Graduate Program Director for the appointment of the major advisor and the thesis committee. The Graduate Program Director submits a recommendation to the campus graduate program administration who will appoint the dissertation committee. The major advisor is then responsible for monitoring the candidate's progress
The PhD program must be completed in seven years. Thereafter, individual approval must be obtained on a yearly basis.
For guidelines regarding the dissertation defense see this website.
Curricular Practical Training (CPT)
Curricular Practical Training (CPT) is available only for students who have a cumulative GPA of at least 3.0 and have taken at least three courses that count for graduate credit. Only two CPTs are allowed.
Graduate Certificate in Database Technology
The Graduate Certificate Program in Database Technology provides students with a systematic education in databases, stressing database application development and database administration skills.
The decision to institute this program was made upon our assessment of a strong need for database training. From application development to database administration, there are many positions available in the industry a student may choose to pursue. There is also the need for professionals with formal training in contemporary tools; the database program offers such individuals an opportunity to strengthen this knowledge base.
Proficiency in programming will be expected. The entire program is offered in the extended day, so the students can attend while holding a full-time position in industry.
The certificate requires 12 credit hours (4 courses). The basic training consists of a sequence of three courses:
CS630 (Database Management Systems)
CS615 (User Interface Design)
CS634 (Architecture of Database Systems).
These courses provide a thorough introduction to relational and object-relational databases, SQL, indexing, concurrency and recovery, and design of user interfaces for database applications.
For information regarding the Graduate Certificate, including fees and registration, please visit the webpage for the College of Advancing and Professional Studies.