Skip to main content
Department of Computer Science

Policies and Documentation

Welcome to your one-stop shop for documentation and policies regarding every program associated with the Department of Computer Science. This is the documentation that previously would have found in the Tufts Bulletin, a publication produced by the Registrar’s Office. As of Fall 2020, this information will be stored primarily on the department’s website instead.

The department offers undergraduate programs in computer science for both liberal arts and engineering students, MS and PhD degree programs, and several non-degree graduate programs, including certificates and postbaccalaureates. Both the School of Arts and Sciences and School of Engineering programs are included in the general accreditation conferred on the University by NEASC. In addition, the Bachelor of Science in Computer Science (BSCS) program offered through the School of Engineering is accredited by the Computing Accreditation Commission (CAC) of ABET, Inc. (http://www.abet.org).

Please find the name of your program below and click on the appropriate link, which will take you to the program description, its requirements, and additional information.

Programs

Undergraduate programs

Graduate programs

Program faculty

 

Undergraduate programs

Major in Computer Science — School of Arts and Sciences

Program Director: Associate Professor Sam Guyer

The major in Computer Science requires 10 courses: eight courses in computer science and two courses in mathematics. The computer science courses must include Computer Science 15, 40, 80 or 105, 160, and 170 and the remaining courses must be numbered above 15. Only one of Computer Science 80 or 105 may be counted toward the major. The mathematics courses are Calculus II (which can be taken as Mathematics 34 or 39) and Discrete Mathematics (which can be taken as Computer Science 61 or Mathematics 61 or 65). The introductory courses Computer Science 10 and 11, as well as Mathematics 4, 14, 30, and 32, do not count toward the major. Computer Science 53, 55, 99, 153, 154, and 155 do not count toward the major. No more than one Directed Study (93, 94, 193, 194) may be counted toward the major. All courses to be counted toward the major must be completed with a grade of C- or better. The above are minimal requirements for the concentration. For students who desire a stronger program, the following courses are recommended: Computer Science 97, 98, 111, and 181; as well as Mathematics 70 or 72, 145, 165, and 166.

For an ABET CAC accredited program, see the BSCS in the School of Engineering, described below.

Bachelor of Science in Computer Science - School of Engineering

Program Director: Associate Professor Alva Couch

The mission of the Bachelor of Science in Computer Science in Engineering program is to provide graduates with the durable knowledge necessary to become future leaders in the rapidly evolving discipline of computer science as well as in other computer-related fields. We aim to give each graduate a solid foundation in both computer science theory and programming practice, and to prepare each graduate for further advanced study in computer science and related fields. We aim to expose each graduate to the challenges and research problems involved in creating new kinds of computer software. We aim to give graduates the skills and commitment to lifelong learning necessary to prepare them to be effective employees or graduate students in computer-related fields. The faculty is dedicated to accomplishing this mission through integration of teaching and research. The Bachelor of Science in Computer Science (BSCS) program offered through the School of Engineering is accredited by the Computing Accreditation Commission (CAC) of ABET, Inc. (www.abet.org).

Our program objectives include success in industry careers and graduate school. Two to five years after graduation, graduates of the BSCS program will have:

  1. Succeeded and advanced in professional careers in or related to computing or software.

  2. Been admitted to and advanced in graduate study in computer science.

Outcomes of the BSCS program include that:

  1. Graduates should be able to use computer science theory to analyze algorithms and to reason about properties of programs, including structure, behavior, and performance.
  2. Graduates should be able to solve problems by using principled methods to create, extend, and improve software.
  3. Graduates should have had practice applying their knowledge and skills to open-ended problems with more than one good answer.
  4. Graduates should have practice working in teams.

Additionally, the BSCS degree aims to empower our students with ABET Computing Accreditation Commission outcomes 1-6, including the ability to:

  1. Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
  2. Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
  3. Communicate effectively in a variety of professional contexts.
  4. Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
  5. Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
  6. Apply computer science theory and software development fundamentals to produce computing-based solutions. [CS]

The Bachelor of Science in Computer Science (BSCS) requires a minimum of 120 semester-hours of study, including introductory, foundation, HASS, breadth, and concentration courses.

Introductory courses (10 courses) include Engineering 1; Engineering science 2 or an elective with attribute “Engineering requirements” and value “SOE-Engineering”; Mathematics 32, 34 or 39, and 42 or 44; Mathematics 70 or 72; two courses selected from Physics 11, Chemistry 1 or 16, and Biology 13; and one natural science or mathematics elective worth 3 or more semester hour units. For natural science courses accepted towards the Engineering degrees, refer to the online course catalog for courses with attribute “Engineering Requirements” and value “SOE-Natural Sciences.” For mathematics courses, refer to the online course catalog for courses with attribute “Engineering Requirements” and value “SOE-Mathematics”.

The Humanities, Social Sciences, and Arts (HASS) requirement (24 semester hour units) includes English 1 or 3 and additional courses in Humanities, Arts, or Social Sciences. Of these courses, one course must cover ethics and social context (Engineering Management 54 or Philosophy 24), one course worth at least 3 semester hour units must be Humanities, and one course worth at least 3 semester hour units must be Social Science. Allowable courses in Humanities, Arts, and Social Sciences are listed in the online course catalog with attribute “Engineering Requirements” and possible values “SOE- HASS- Humanities,” “SOE-HASS-Arts,” and “SOE-HASS-Social Sciences,” respectively; courses labeled with a value of “SOE-HASS” are also acceptable. Philosophy 24 does not satisfy the requirement for three credit hours in Humanities unless Engineering Management 54 is also taken. The breadth requirement (6 semester hour units) includes one course in ethics and social context (Philosophy 24 or Engineering Management 54); and additional courses chosen either from Humanities, Arts, and Social Sciences, or from selected courses covering the broader context of engineering, including COMP 99: Internship in Computer Science. A list of selected courses appropriate for fulfilling the remaining semester hour units of the breadth requirement is available from the department.

The Engineering requirement (three courses) includes Engineering Science 3 and 4; and a statistics course chosen from Mathematics 166, Engineering Science 56, Electrical Engineering 24 or 104, Biomedical Engineering 141, Biology 132, and Physics 153.

The Computer Science major requirement (14 courses) includes Computer Science 11, 15, 40, 80 or 105, 160, 170, 97, and 98; Computer Science 61, Mathematics 61, or Mathematics 65, and five or more elective courses in Computer Science, three of which must be numbered above 100. At least two credit hours of concentration electives must be chosen from courses covering the social context of computing, including Computer Science 27, 55, 116, 117, 120, or 155. In addition, the student must complete a minimum of 40 credit hours of courses with attribute “Engineering requirements” and value “SOE-Computing,” which includes Computer Science courses as well as selected courses from other departments.

In addition, there are several restrictions on which courses can be counted as concentration electives. Only one of Computer Science 80 or Computer Science 105 may be counted toward the concentration. At most three semester hour units of Independent Study or Research (Computer Science 93, 94, 191, 193, or 194) and four semester hour units of thesis (Computer Science 197) may be utilized as concentration electives. At most one course numbered 55 or 155 may be counted toward the degree. Computer Science 53, 153, and 154 may not be used as concentration electives. Internship credit (Computer Science 99) may not be counted toward the concentration requirement, though three semester hour units of Computer Science 99 (Internship in Computer Science) may be counted toward the breadth requirement. For a research experience, students should consider partly fulfilling concentration elective requirements via a senior thesis.

At the student’s option, one concentration elective may be replaced by one course in Mathematics, selected from the following choices:

  • Mathematics 51 - Differential Equations
  • Mathematics 63 - Number Theory
  • Mathematics 87 - Mathematical Modeling and Computation
  • Mathematics 125 - Numerical Analysis
  • Mathematics 126 - Numerical Linear Algebra
  • Mathematics 133 - Complex Variables
  • Mathematics 135 - Real Analysis I
  • Mathematics 136 - Real Analysis II
  • Mathematics 145 - Abstract Algebra I
  • Mathematics 146 - Abstract Algebra II
  • Mathematics 155 - Partial Differential Equations I
  • Mathematics 156 - Partial Differential Equations II
  • Mathematics 163 - Computational Geometry
  • Mathematics 165 - Probability
  • Mathematics 166 - Statistics

The following sample program is one way of satisfying the above requirements. Further information regarding options and procedures is available from the department.

First Year

FALL TERM

  • Engineering 1   
  • Mathematics 32 (or 39)
  • Physics 11, Chemistry 1 or 16, or Biology 13
  • English 1

SPRING TERM

  • Engineering Science 2 or elective with attribute SOE-Engineering
  • Mathematics 34
  • Physics 11, Chemistry 1 or 16, or Biology 13
  • Humanities, social sciences, or arts elective

Sophomore Year

FALL TERM

  • Computer Science 11: Introduction to Computer Science
  • Mathematics 42
  • Natural science or mathematics elective
  • Engineering Science 3: Introduction to Electrical Engineering
  • Humanities, social sciences, or arts elective

SPRING TERM

  • Computer Science 15: Data Structures
  • Computer Science or Mathematics 61: Discrete Mathematics
  • Engineering Science 4: Introduction to Digital Logic Circuits
  • Mathematics 70 or 72: Linear Algebra
  • Humanities, social sciences, or arts elective

Junior Year

FALL TERM

  • Computer Science 40: Machine Structure and Assembly-Language Programming
  • Computer Science elective
  • Engineering Management 54: Engineering Leadership
  • Humanities, social sciences, or arts elective

SPRING TERM

  • Computer Science 160 Algorithms
  • Computer Science elective
  • Humanities, social sciences, or arts elective
  • Humanities, social sciences, or arts elective

Senior Year

FALL TERM

  • Computer Science 97: Senior Capstone Project I
  • Computer Science 105: Programming Languages
  • Computer science elective
  • Probability & Statistics (Engineering Science 56 or Electrical Engineering 24)
  • Humanities, social sciences, and arts elective

SPRING TERM

  • Computer Science 98: Senior Capstone Project II
  • Computer Science 170: Theory of Computation
  • Computer science elective
  • Computer science elective
  • Breadth elective (humanities, social sciences, arts, or engineering)

Bachelor of Science in Data Science

Program Co-Directors: Associate Professor Alva Couch (Computer Science) and Associate Professor Shuchin Aeron (Electrical and Computer Engineering)

Data Science refers to the principles and practices in data analysis that support data-centric real-world problem solving. The Bachelor of Science in Data Science (BSDS), jointly administered by the departments of Computer Science and Electrical and Computer Engineering, is offered to students in the School of Engineering who desire to concentrate on applying computing to scientific and engineering analysis and problem solving. The BSDS is designed both as a stand-alone major and a double major option for those students in the School of Engineering who wish to add data science to an existing engineering major. The BSDS degree is only available to students in the School of Engineering. Double majoring in the BSDS and Bachelor of Science in Computer Science (BSCS) programs is not practical and will not be permitted due to overlap between the major concentrations.

The mission of the BSDS is to prepare students for Data Science careers in engineering, science, medicine, and other disciplines. The objectives of the BSDS program include that graduates should have, after five years:

  1. Succeeded and advanced in professional careers in or related to data science, analysis, and interpretation, and/or
  2. Been admitted to and advanced in graduate study in data science and related fields.

The outcomes of the Bachelor of Science in Data Science include the following:

  1. Graduates will demonstrate facility in a variety of data analysis techniques, including machine learning, optimization, statistical decision-making, information theory, and data visualization.
  2. Graduates will be qualified to engage in interdisciplinary projects with data analytics components, including facility in communicating with engineers, scientists, and computing professionals.
  3. Graduates will have been exposed to the ethical and scientific obligations of the data analyst.

The BSDS is not accredited by the Computing Accreditation Commission or Engineering Accreditation Commission of ABET. For an ABET-accredited degree, see the Bachelor of Science in Computer Science (BSCS), Bachelor of Science in Computer Engineering (BSCpE), or Bachelor of Science in Electrical Engineering (BSEE).

The Bachelor of Science in Data Science (BSDS) requires a minimum of 120 semester-hours of study, including introductory, foundation, HASS, breadth, and concentration courses. Introductory courses (10 courses) include an Engineering 1 course; Engineering Science 2; Mathematics 32, 34 or 39, 42 or 44; Computer Science 61 or Mathematics 61 or 65 and Mathematics 70 or 72; Physics 11; Chemistry 1 or 16; one of Physics 12, Chemistry 2, or Biology 13; and a natural science elective. For natural science courses accepted towards the Engineering degrees, refer to the online course catalog for courses with attribute “SOE-Natural Science.”

The Humanities, Social Sciences, and Arts (HASS) requirement (24 semester hour units) includes English 1 or 3 and additional courses in Humanities, Arts, or Social Sciences. Of these courses, one course must cover ethics and social context (Engineering Management 54 or Philosophy 24), one course worth at least 3 semester hour units must be in Humanities, and one course worth at least 3 semester hour units must be in Social Science. Allowable courses in Humanities, Arts, and Social Sciences are listed in the online course catalog with attribute “Engineering Requirements” and possible values “SOE- HASS-Humanities,” “SOE-HASS-Arts,” and “SOE-HASS-Social Sciences,” respectively; courses labeled with a value of “SOE-HASS” are also acceptable. Philosophy 24 does not satisfy the requirement for three credit hours in Humanities unless Engineering Management 54 is also taken.

The disciplinary breadth requirement includes nine semester hour units of courses in some application discipline related to Data Science.  Ideally, all of the 9 semester hour units should be in the same discipline, though it is permissible for 3 semester hour units of the 9 to come from a second discipline. Appropriate choices include:

  1. Any three courses in one natural science; courses must be in the same department with SIS attribute “Engineering Requirements” and value “SOE-Natural Sciences.”
  2. Any three courses in one social science; courses must be the same department with attribute “Engineering Requirements” and value “SOE-HASS-Social Sciences.”
  3. Any three courses in the department of Civil and Environmental Engineering.
  4. Any three courses in the Classics department.

See the “Guide to the Data Science Major in Engineering” for more specific course recommendations. Students may also petition the Program Directors to count a customized multi-disciplinary experience toward this requirement.

The Engineering requirement (two courses) includes Engineering 1 and Engineering Science 2.

The Data Science major requirement (12 courses) includes Computer Science 11, 15, 40, 135, and 160, Mathematics 165 or Electrical Engineering 24 or 104, Mathematics 166, Mathematics 128 or Computer Science 136, and four Data Science electives, three of which must be numbered above 100. Those three must include: (A) one course in data infrastructure (including Computer Science 51, 112, 115, 116, 117, 118, 119, 120, and 151); (B) one course in data analytics and/or interfaces (including Computer Science 52, 136, 137, 138, 142, 152, 171, 175, and 177; Mechanical Engineering 150; and Civil and Environmental Engineering 187); and (C) one course in computational and theoretical aspects of data science (including Computer Science 131 and 160; Data Science 53 or 153 (or Computer Science 53 or 153); Mathematics 123, 125, and 126; and Electrical Engineering 109, 127, 130, 133, and 140); plus one additional course chosen from (A)-(C) or from Mathematics 133, 153, 155, and 156. At most three semester hour units of Independent Study or Research (Computer Science 93, 94, 191, 193, or 194; Electrical Engineering 93, 94, 95, 96, 191, or 192) and at most four semester hour units of thesis (Computer Science 197 or Electrical Engineering 197) may be counted as Data Science electives. A capstone experience including the two courses Data Science 97 (or Computer Science 87) and Data Science 98 (or Computer Science 88) (Senior Capstone Project in Data Science I and II) is required. For a research experience, students should consider partly fulfilling concentration elective requirements via a senior thesis, coordinated with the capstone experience and breadth elective choices.

While only one of Mathematics 126 and Computer Science 136 is required among the concentration classes, students are encouraged to take both classes using a data science elective slot.

The following sample program is one way of satisfying the above requirements; further information regarding options and procedures is available from the program webpage.

First Year

FALL TERM

  • Mathematics 32 (or 39)
  • Physics 11
  • English 1
  • Engineering 1

SPRING TERM

  • Mathematics 34
  • Computer Science 11: Introduction to Computer Science
  • Chemistry 1 or 16
  • Engineering Science 2
  • (or elective with SIS attribute value “SOE-Engineering” or “SOE-Computing”)

Sophomore Year

FALL TERM

  • Mathematics 42 or 44
  • Computer Science 15 Data Structures
  • Computer Science/Mathematics 61 (or Mathematics 65) Discrete Mathematics
  • Physics 12, Chemistry 2, or Biology 13
  • Humanities, social sciences, or arts elective

SPRING TERM

  • Mathematics 70 or 72
  • Engineering Management 54: Engineering Leadership
  • Computer Science 40: Computer Architecture 
  • Natural science elective
  • Humanities, social sciences, or arts elective

Junior Year

FALL TERM

  • Computer Science 135: Machine Learning
  • Probability (Electrical Engineering 24 or Mathematics 165) 
  • Data science elective
  • Disciplinary breadth elective
  • Humanities, social sciences, or arts elective

SPRING TERM

  • Mathematics 166: Statistics
  • Computer Science 160: Algorithms
  • Data science elective
  • Disciplinary breadth elective
  • Humanities, social sciences, or arts elective

Senior Year

FALL TERM

  • Data Science 97 (or Computer Science 87): Senior Capstone Project in Data Science I
  • Computer Science 136: Statistical Machine Learning, or Electrical Engineering 140 Stochastic Processes (or other Data Science elective)
  • Data science elective
  • Disciplinary breadth elective
  • Humanities, social sciences, or arts elective

SPRING TERM

  • Data Science 98 (or Computer Science 88): Senior Capstone Project in Data Science II
  • Mathematics 126: Numerical Linear Algebra
  • Data science elective
  • Humanities, social sciences, or arts elective
  • Humanities, social sciences, or arts elective

Minor in Computer Science

The undergraduate minor in Computer Science is open to undergraduates in the Schools of Arts and Sciences and Engineering, and consists of five courses, including Computer Science 15; two courses chosen from Computer Science 40, 105, 160, and 170; Computer Science/Mathematics 61 or Mathematics 65; and one additional elective course in computer science numbered above 15. Only one of Computer Science 80 or 105 may be counted toward the minor. All courses to be counted toward the minor must be completed with a grade of C- or better. Computer Science 53, 55, 153, 154, and 155 may not be used as the computer science elective.

 

Graduate programs
Certificates

Certificate in Computer Science

The four-course, graduate-level certificate program in computer science is for the student with a bachelor’s degree in computer science or a closely related field with approved work experience. The program is designed for those who wish to update their skills and/or broaden their knowledge to meet the challenges of and opportunities available in today’s rapid-paced technology field.

The certificate requires four graduate-level courses in Computer Science. This flexible program allows the student to cluster course electives around a particular interest or specialty area. Courses may be chosen from our regular department offerings or from our Computer Science 150 Special Topics offerings, which are offered in particularly “hot” areas of interest or in a unique specialty area of Tufts faculty. For more information, please visit the website https://engineering.tufts.edu/cs/current/certificate-postbac.

Certificate in Human-Computer Interaction

In an interdisciplinary collaboration between the Department of Psychology, the Department of Computer Science, the Department of Mechanical Engineering–Human Factors Engineering Program, and the Department of Occupational Therapy at Tufts, this four-course, graduate-level certificate is designed to train the next generation of computer professionals for tomorrow’s complex challenges. The program is open to individuals with a bachelor’s degree and is designed to be pursued on a part-time basis by computer programmers, Web designers, human factors professionals, software engineers, and user interface designers who wish to develop or enhance their user-interface design and implementation skills. For more information, visit https://engineering.tufts.edu/me/current/certificate-programs/human-computer-interaction.

Certificate in Data Science

Program Co-Directors: Associate Professor Alva Couch (Computer Science) and Associate Professor Shuchin Aeron (Electrical and Computer Engineering)
The Certificate in Data Science is a postgraduate degree that prepares students for employment and further study in this quickly evolving field. The Certificate in Data Science is jointly administered by the departments of Computer Science and Electrical and Computer Engineering. The Certificate in Data Science requires a minimum of five courses, including Electrical Engineering 104 and Computer Science 135. Three electives must include: (A) one course in data infrastructure (including Computer Science 112, 115, 116, 117, 118, 119, 120, and 151); (B) one course in data analysis and/or interfaces (including Computer Science 136, 137, 138, 142, 152, 167, 171, 175, 177, 236, 272, 275, and 277; Mechanical Engineering 150; and Civil and Environmental Engineering 187); and (C) one course in computational and theoretical aspects of data analysis (including Computer Science 131 and 160; Data Science 153 (or Computer Science 153); Mathematics 123, 125, 126, 133, 153, 155, 156, 165, and 166; Electrical Engineering 109, 127, 130, 133, and 140;). Students lacking the prerequisites for these courses must complete those prerequisites as part of the certificate; these include Mathematics 32, 34, and 70, and Computer Science 11, 15, and 61. Computer Science 205 may be taken in lieu of Computer Science 11 and 15. 

Upon successful completion of certificate requirements with grades of B- or better, the student may either receive the certificate or apply for admission to the Master of Science in Data Science (MSDS) program. If accepted to the MSDS program, all graduate credits earned toward the certificate with a grade of B- or better may be transferred to apply toward MSDS requirements.

Certificate in Computer Engineering

The Certificate in Computer Engineering is jointly administered by the departments of Electrical and Computer Engineering and Computer Science. The Certificate in Computer Engineering requires a minimum of five courses taken from a published list of computer engineering core courses. From these core courses, at least one must be taken from each of the following core areas: Computer Networking, Computer Architecture, and Computer Software/Systems.

Post-Baccalaureate in Computer Science

The Computer Science Post-Baccalaureate program welcomes academically talented, highly motivated adult students, with at least a bachelor’s degree. This concentrated, rigorous, program of study prepares individuals to start a new career in high technology or to continue on for graduate study in Computer Science or another related field.

The Post-Baccalaureate program requires five Tufts courses. The program can be completed in as few as two semesters or as many as five semesters. The program requires five courses: Computer Science 15*, 61*, two courses chosen from Computer Science 40, 105**, 160**, and 170**, and one Computer Science elective numbered above Computer Science 15**. Courses numbered between 53-55 or 153-155 may not be applied to the post-baccalaureate. Completion of the program requires grades of B- or better in all courses. To be considered in good standing, the student should sustain a B average over all courses taken.

*Prerequisite course Computer Science 11 is available for individuals without a previous programming course.
** Courses numbered above 100 award graduate credit, and are transferable into the Tufts Master of Science in Computer Science program upon acceptance into that program.  Students who decide that they want to pursue an MS after they begin the program can apply during their post-baccalaureate studies. Students who already know that they intend to pursue an MS may want to consider the joint point-baccalaureate/MS program, which only requires a single application and admissions decision.

 

MS Programs

Master of Science in Computer Science - On Campus

The Master of Science in Computer Science degree (learn more) requires 30 semester hour units at the 100 level or above. At least 24 semester hour units must be earned by taking approved courses. The remaining six semester hour units may be earned by a combination of approved courses, a master’s project or thesis, or participating in an independent study or research experience. At least four of the courses must be in computer science, and at least two of the courses must include a serious programming component. To use courses offered outside the Department of Computer Science, the student must first obtain the approval of the department. Completion requires grades of B- or better in all courses. For students entering the program as of January 2019, the student must sustain a B average over all courses taken.

Students must also demonstrate competency as expected from a high-quality undergraduate program in computer science, particularly in the areas of discrete mathematics, computer architecture and assembly language, programming languages, data structures and analysis of algorithms, and theory of computation. These topics are covered, respectively, in Computer Science 61, 40, 105, 160, and 170. The courses 105, 160, and 170 may be taken as part of the master’s degree program.  

Students may also include a master’s project or thesis in lieu of one or more courses. The project includes a written report which must be approved by a member of the faculty. Substantial projects, typically involving research, can earn up to three semester hour units through the courses Computer Science 293 and 294. Alternatively, a master’s thesis, defended orally, may be counted as between three and six semester hour units, through the courses Computer Science 295 and 296.

The courses Computer Science 153 and 154 may not be used as electives in the Master of Science in Computer Science. At most one course numbered Computer Science 155 may be used as an elective for the Master of Science in Computer Science. 

Master of Science in Computer Science - Online

Program Director: Associate Teaching Professor Martin Allen 
The online Master of Science in Computer Science (learn more) is comprised of 33 semester hour units. All courses combine asynchronous education with weekly live class sessions, all conducted online. Course offerings are designed to provide the same material and outcomes as their counterparts in the residential MS program. Students will complete 10 required courses: Computer Science 105, 111, 115, 116, 135, 160, 170, 180, and a capstone project worth 6 semester hour units over two semesters.

Computer Science 105, 115, 116, 135, 160, 170, 180, and a capstone project worth 6 semester hour units over two semesters. Completing these 10 courses satisfies all core competency requirements for the MS. Prospective students with extensive undergraduate background in these material covered by any of these courses should contact the program director to discuss other course options that might be available.

Completion requires grades of B- or better in all courses. For students entering the program as of January 2019, the student must sustain a B average over all courses taken.

Master of Science in Human-Robot Interaction

Program Co-Directors: Professor Matthias Scheutz (Computer Science), Associate Professor Usman Khan (Electrical and Computer Engineering), Professor Jason Rife (Mechanical Engineering)
Human-Robot Interaction (HRI) is an interdisciplinary effort aimed at understanding and improving all aspects of interactions between humans and robots. It draws on knowledge from computer science, mechanical and electrical engineering, as well as psychology, philosophy, anthropology, and legal fields, among various others. Prospective students apply to the joint HRI programs through one of three host departments: Computer Science, Electrical and Computer Engineering, and Mechanical Engineering. For more details, please see http://hri.tufts.edu/academics/MSprogramRequirements.htm.

Master of Science in Bioengineering - Bioinformatics Track

The Department of Computer Science is the home for the Bioinformatics track of the interdisciplinary Master of Science in Bioengineering program. This interdisciplinary Master of Science program utilizes computational approaches to biomedical problems. For more information, visit the track website at https://engineering.tufts.edu/bioengineering/tracks/bioinformatics.htm.

Master of Science in Data Science

Program Co-Directors: Associate Professor Alva Couch (Computer Science), Associate Professor Shuchin Aeron (Electrical and Computer Engineering)
Data Science refers to the principles and practices in data analysis that support data-centric real-world problem solving. The Master of Science in Data Science (MSDS), administered jointly by the departments of Computer Science and Electrical and Computer Engineering, prepares students for future careers and/or further study in Data Science. 

Outcomes of the program include are that:

  1. Graduates will demonstrate facility in a variety of data analysis techniques, including machine learning, optimization, statistical decision-making, information theory, and data visualization. 
  2. Graduates will be qualified to engage in interdisciplinary projects with data analytics components, including facility in communicating with engineers, scientists, and computing professionals. 

The MSDS is built upon a disciplinary core of statistics and machine learning, with depth provided by courses in each of the following categories:

  • Data infrastructure and systems: those systems and strategies that are core to interacting with data, including computer networks, computer security, internet-scale systems, cloud computing, and others.
  • Data analysis and interfaces: those components of computing concentrated around effective human interaction with computers, including human-computer interaction, graphics, visualization, and others.
  • Computational and theoretical aspects of data science: mathematical foundations, including information theory, signal and image processing, and numerical analysis.
  • Practice of data science: examples of effective use of data science in practice, including case studies and applications of data science principles to real-world problems.

The MSDS is a one-year program that may be completed either in 9 or 12 months of study. Prerequisites for the MSDS include a Bachelor of Science degree in a science, technology, engineering, or mathematics (STEM) field. Applicants with Bachelor’s degrees in non-STEM fields may begin study with a Certificate in Data Science that—in an additional term—gives the applicant a sample of the program. 

Requirements for the degree include a minimum of 30 semester hour units of study, and must include Electrical Engineering 104 or Mathematics 165, Mathematics 166, and Computer Science 119 and 135. Three electives must include: (A) one course in data infrastructure (including Computer Science 112, 115, 116, 117, 118, 120, and 151); (B) one course in data analysis and/or interfaces (including Computer Science 152, 167, 171, 175, 177, 236, 272, 275, and 277; Mechanical Engineering 150; and Civil and Environmental Engineering 187); and (C) one course in computational and theoretical aspects of data analysis (including Computer Science 131 and 160; Data Science 153 (or Computer Science 153); Mathematics 123, 125, 126, 133, 153, 155, 156, 165, and 166; and Electrical Engineering 109, 127, 130, 133, and 140). A practice requirement may be fulfilled by (D) a course in the practice of Data Science (Data Science 154 or Computer Science 154) or a master’s project in Data Science (Data Science 293 or Computer Science 283). One more elective from categories (A)-(D) is chosen in consultation with the student’s advisor. 

One way of completing the program is as follows:

FALL TERM
Electrical Engineering 104 Probabilistic Systems Analysis
Computer Science 135 Introduction to Machine Learning
Computer Science 119 Big Data 
Data science elective

SPRING TERM
Mathematics 166 Statistics
Data science elective
Data science elective
Data science elective

SPRING OR SUMMER TERM
Computer Science 154 Special topics in the practice of Data Science 
or Data Science 293/Computer Science 283 Master’s project in Data Science

Combined BS/MSDS option
The MSDS may be combined with appropriate Tufts BS programs in Engineering or Arts and Sciences. Applicants should conform to application deadlines for combined degrees. In addition, applicants to the combined degree programs should take prerequisite undergraduate courses for the MSDS program toward their undergraduate requirements, including Computer Science 11 and 15; Mathematics 70 or 72; and Computer Science/Mathematics 61. 

Master of Science in Computer Engineering

Program Co-Directors: Professor Soha Hassoun (Computer Science) and Associate Professor Mark Hempstead (Electrical and Computer Engineering)
The Departments of Computer Science and Electrical and Computer Engineering jointly offer a Master of Science in Computer Engineering. This one-year professional program builds the skills necessary for employment in Computer Engineering. Please see the detailed program description listed under Electrical and Computer Engineering.

Master of Science in Cybersecurity and Public Policy

Program Director: Professor Susan Landau
The Master of Science in Cybersecurity and Public Policy requires 10 courses and 30 semester hour units divided between computer science and policy studies. The following courses are required: DHP 291: Computer Science for Future Presidents, DHP 292: How Systems Work, DHP 293: How Systems Fail, DHP 237: Privacy in the Digital Age, DPH 249: International Cyber Conflict: An Introduction to Power and Conflict in Cyberspace, and one course chosen from DHP 236: Cyber in the Civil Sector: Threats and Upheavals OR COMP 150-CCP: Cyberlaw and Cyberpolicy. Students will also complete 4 electives, which can be chosen from the lists on the program website: https://sites.tufts.edu/cybersecurityandpublicpolicy/ms-program/.

Master of Science in Software Systems Development

Program Director: Associate Professor Fahad Dogar
The Master of Science in Software Systems Development requires a minimum of 30 semester hour units and the fulfillment of at least 10 courses; all courses must be at the 100 level or above. Students must complete Computer Science 111, 116, 180. One or more of the following courses must be completed: Computer Science 112, 115, 118, 119, 120. The remaining 30 semester hour units can be chosen from the following electives: Computer Science 105, 117, 131, 135, 139, 140, 156, 175, 177. 

MSIM Dual Degree with the Tufts Gordon Institute

Students studying on campus can earn an MS in Innovation and Management (MSIM) and an MS offered by the Computer Science department (MS in Computer Science, Computer Engineering, Cybersecurity & Public Policy, or Data Science) in this dual program. For more information, please see the program website: https://gordon.tufts.edu/programs/m-s-in-innovation-and-management-2/dual-degree-option.

BS/MS Combined Degree

Tufts undergraduate students have the option of pursuing a combined Bachelor of Science and Master of Science degree (BS/MS). For more information, please see the Combined Degree website: https://engineering.tufts.edu/undergraduate/combined.

Post-Baccalaureate/MS Program

Students who successfully complete the post-baccalaureate program can continue on to one of our Masters programs if they are admitted. Any courses taken as part of the post-baccalaureate program numbered above 100 will count towards the Masters degree. Students who intend to continue into the MS can apply for the dual-degree program directly. This means that they will not need to re-apply for admission when they move into the MS portion of their program, so long as they successfully maintain the same grade standards as for the graduate degree: a minimum of B- in each course taken, and a B average overall.

 

PhD Programs

Doctor of Philosophy in Computer Science

Students may have either a bachelor’s degree or a master’s degree in computer science or a related field to be admitted to the PhD program. Doctoral study consists of preliminary coursework and study, qualifying exams, and creative research culminating in a written dissertation. Detailed requirements and procedures for the PhD program are outlined on the department web pages at https://engineering.tufts.edu/cs/current/phd/computer-science.

Joint Doctor of Philosophy: Computer Science and Cognitive Science

Cutting across the information and life sciences, cognitive science is a paradigmatic multi- and interdisciplinary research program with enormous future societal benefits, especially as intelligent artificial agents are becoming part of our lives. A graduate student in the Cognitive Science program is required to meet the requirements of their home department (Psychology, Child Study and Human Development, or Computer Science) as well as the requirements for the Cognitive Science program. In the Computer Science/Cognitive Psychology joint PhD program, in addition to the Computer Science PhD requirements, a minimum of 12 cognitive science courses are required: five core courses and seven electives. For more details, please see http://cogsci.tufts.edu/academics/.

Joint Doctor of Philosophy: Computer Science and Human-Robot Interaction

Human-Robot Interaction (HRI) is an interdisciplinary effort aimed at understanding and improving all aspects of interactions between humans and robots. It draws on knowledge from computer science, mechanical and electrical engineering, as well as psychology, philosophy, anthropology, and legal fields, among various others. For more details, please visit the program description at http://hri.tufts.edu/academics/PhDprogramRequirements.htm.