Curriculum

Major Requirements

Below is a list of required courses and electives for a Data Science major. This list of electives is not exhaustive, and many other courses in the CS and MATH/STAT curricula or potentially other departments can be appropriate substitutes. We strongly encourage students to talk to the program directors about their interests and learning goals in order to select the most relevant courses for them.

  • Six (6) foundational courses. See course descriptions below.
     
  • Three (3) electives, including at least one from statistics and at least one from computer science. See course descriptions below.
     
  • Three (3) electives in an area of concentration, including at least one at the 200- or 300-level. Possible concentrations include but are not limited to digital humanities, social justice, data journalism, economics, education, global ecology, molecular bioinformatics, psychology, mathematical/statistical theory, and computer science/data engineering.
     
  • Students are also expected to complete an experiential capstone as part of the Data Science major. The capstone must be approved by the program directors and may include: a thesis or other independent project; a Quantitative Analysis Institute internship; a research assistantship; or another internship or data consulting experience on or off-campus, during the semester, wintersession, or summer. Students are encouraged to present their work at a conference or poster session.
Honors: A student may achieve honors by writing a thesis, if her GPA in major courses over the 100-level meets the college’s requirements. See Academic Distinctions.
 
We hope that students interested in data science also take a look at the following information docs:

 

2021-2022 Major Courses Offered

  Fall Spring Alternate Years
BISC 198: Applied Statistics and Data Science in Biology  
Offered in Spring
 
CS 111: Introduction to Programming
Offered in Fall
Offered in Spring
 
CS 230: Data Structures
Offered in Fall
Offered in Spring
 
CS 232: Artificial Intelligence  
Offered in Spring
Offered in Alternate Years
CS 234: Data, Analytics, and Visualization
Offered in Fall
 
Offered in Alternate Years
CS 304: Databases with Web Interfaces
Offered in Fall
Offered in Spring
 
CS 313: Computational Biology  
Offered in Spring
 
CS 315: Data and Text Mining for the Web  
Offered in Spring
 
CS 350: Machine Learning
Offered in Fall
   
ECON 103: Introduction to Probability and Statistical Methods
Offered in Fall
Offered in Spring
 
ECON 203: Econometrics
Offered in Fall
Offered in Spring
 
MATH 205: Multivariable Calculus
Offered in Fall
Offered in Spring
 
MATH 206: Linear Algebra
Offered in Fall
Offered in Spring
 
POL 299 Introduction to Research Methods in Political Science
Offered in Fall
Offered in Spring
 
PSYC 205 Statistics
Offered in Fall
Offered in Spring
 
MATH 220/STAT 220: Probability
Offered in Fall
   
STAT 160: Fundamentals of Statistics
Offered in Fall
   
STAT 218: Introductory Statistics and Data Analysis
Offered in Fall
Offered in Spring
 
STAT 221: Statistical Inference  
Offered in Spring
Offered in Alternate Years
STAT 228: Multivariate Data Analysis  
Offered in Spring
 
STAT/QR 260: Applied Data Analysis
Offered in Fall
   
STAT 309: Causal Inference    
Offered in Alternate Years
STAT 318: Regression and Stat Models
Offered in Fall
   

 

Foundational courses

Introductory Statistics
Any one of
  • STAT 160
  • STAT 218
  • BISC 198
  • ECON 103
  • POL 299
  • PSYC 105 (formerly called 205)
  • SOC 190

See course descriptions below.

Statistical Modeling

Either QR/STAT 260 or STAT 318

(Students may take both modeling courses and count the second as an elective.)

See course descriptions below.

CS 111: Introduction to Programming
An introduction to problem solving through computer programming. Students learn how to read, modify, design, debug, and test algorithms that solve problems. Programming concepts include control structures, data structures, abstraction, recursion, modularity, and object-oriented design. Students explore these concepts in the context of interactive programs involving graphics and user interfaces using the Python programming language. Students are required to attend an additional two-hour laboratory section each week. 
 
Prerequisites(s): Fulfillment of the basic skills component of the Quantitative Reasoning requirement. No prior background with computers is expected.
 
Typical Periods Offered: Spring; Fall
CS 230: Data Structures
An introduction to techniques and building blocks for organizing large programs. Topics include: modules, abstract data types, recursion, algorithmic efficiency, and the use and implementation of standard data structures and algorithms, such as lists, trees, graphs, stacks, queues, priority queues, tables, sorting, and searching. Students become familiar with these concepts through weekly programming assignments using the Java programming language. Students are required to attend an additional two-hour laboratory section each week.
 
Prerequisites(s): CS 111 or permission of the instructor.
 
Typical Periods Offered: Spring; Fall
MATH 205: Multivariable Calculus
Most real-world systems that one may want to model, whether in the natural or in the social sciences, have many interdependent parameters. To apply calculus to these systems, we need to extend the ideas and techniques of single-variable Calculus to functions of more than one variable. Topics include vectors, matrices, determinants, polar, cylindrical, and spherical coordinates, curves, partial derivatives, gradients and directional derivatives, Lagrange multipliers, multiple integrals, vector calculus: line integrals, surface integrals, divergence, curl, Green's Theorem, Divergence Theorem, and Stokes’ Theorem.
 
Prerequisites(s): MATH 116, MATH 120, or the equivalent. Not open to students who have completed PHYS 216.
 
Typical Periods Offered: Spring; Fall
MATH 206: Linear Algebra
Linear algebra is one of the most beautiful subjects in the undergraduate mathematics curriculum. It is also one of the most important with many possible applications. In this course, students learn computational techniques that have widespread applications in the natural and social sciences as well as in industry, finance, and management. There is also a focus on learning how to understand and write mathematical proofs and an emphasis on improving mathematical style and sophistication. Topics include vector spaces, subspaces, linear independence, bases, dimension, inner products, linear transformations, matrix representations, range and null spaces, inverses, and eigenvalues.
 
Prerequisites(s): MATH 205 or MATH 215; or, with permission of the instructor, MATH 116, MATH 120, or the equivalent. 
 
Typical Periods Offered: Spring; Fall

Introductory Statistics

STAT 160 Fundamentals of Statistics
An introduction to the fundamental ideas and methods of statistics for analyzing data. Topics include descriptive statistics, inference, and hypothesis testing. This course introduces statistical concepts from the perspective of statisticians and mathematicians, with concepts illustrated by simulation. Students will engage with statistics using the data analysis software R. Designed for students who plan to continue to study statistics and/or apply statistical methods to future work in the sciences or other fields. The course is accessible to those who have not yet had calculus.
 
Prerequisite(s): QR Basic Skills. Not open to students who have taken or are taking MATH 205, MATH 101/STAT 101, STAT 218, STAT 220, ECON 103/SOC 190, PSYC 105 (formerly called 205), BISC 198, POL 299, QR 180, QR 260/STAT 260, STAT 318 or the QAI Summer Course.
 
Typical periods offered: Spring
STAT 218 Introductory Statistics and Data Analysis 
This is a calculus-based introductory statistics course. Topics covered include data collection, data visualization, descriptive statistics, linear regression, sampling schemes, design of experiment, probability, random variables (both discrete and continuous cases), Normal model, statistical tests and inference (e.g. one-sample and two-sample z-tests and t-tests, chi-square test, etc). Statistical language R will be used throughout the course to realize data visualization, linear regression, simulations, and statistical tests and inference.
 
Prerequisite(s): MATH 205. Not open to students who have taken or are taking STAT 101, MATH 101Z/STAT 101Z, ECON 103/SOC 190, POL 199, or PSYC 105 (formerly called 205), or who have taken STAT 260/QR 260.
 
Typical Periods Offered: Spring; Fall

 

BISC 198 Statistics in the Biosciences
This course combines statistical theory and practical application, the latter using examples from ecology and experimental biology to illustrate some of the more common techniques of experimental design and data analysis. Students will learn how to plan an experiment and consider the observations, measurements, and potential statistical tests before data are collected and analyzed. Other topics include graphical representation of data, probability distributions and their applications, one- and two-way ANOVA and t-tests, regression and correlation, goodness-of-fit tests, and nonparametric alternatives. Students also learn to use statistical computer software.
 
Prerequisite(s): Fulfillment of the basic skills component of the Quantitative Reasoning requirement and one course in biology, chemistry, or environmental science. 
 
Typical Periods Offered: Spring

 

ECON 103 Introduction to Probability and Statistical Methods
An introduction to the collection, analysis, interpretation, and presentation of quantitative data as used to understand problems in economics and sociology. Using examples drawn from these fields, this course focuses on basic concepts in probability and statistics, such as measures of central tendency and dispersion, hypothesis testing, and parameter estimation. Data analysis exercises are drawn from both academic and everyday applications.
 
Prerequisite(s): ECON 101, ECON 102, or one course in sociology and fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have taken or are taking STAT 218 or PSYC 105 (or MATH 220 during or before Spring 2018.)
 
Typical Periods Offered: Spring; Fall

 

POL 299 Introduction to Research Methods in Political Science
An introduction to the process of conducting research in political science. Students will develop an intuition for problem-driven research in the social sciences, gaining specific insight into the range of methodological tools employed by political scientists. In this course, students will design and analyze a research question, formulate and test hypotheses about politics, evaluate techniques to measuring political phenomena, and assess methods of empirical analysis and interpretation. The course has a particular focus on quantitative analysis and students will gain fluency in statistical software. The course provides a foundation for conducting empirical research and is strongly recommended for students interested in independent research, a senior honors thesis, and/or graduate school.
 
Prerequisite(s): One course in political science. Fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have taken or are taking POL 199, MATH 101, MATH 101Z, ECON 103/SOC 190, QR 180, or PSYC 105 (formerly called 205).
 
Typical Periods Offered: Fall

 

SOC 190 Introduction to Probability and Statistical Methods
An introduction to the collection, analysis, interpretation, and presentation of quantitative data as used to understand problems in economics and sociology. Using examples drawn from these fields, this course focuses on basic concepts in probability and statistics, such as measures of central tendency and dispersion, hypothesis testing, and parameter estimation. Data analysis exercises are drawn from both academic and everyday applications.
 
Prerequisite(s): ECON 101, ECON 102, or one course in sociology and fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have taken or are taking STAT 218 or PSYC 205 (or MATH 220 during or before Spring 2018.)
 
Typical Periods Offered: Spring; Fall

 

PSYC 105 Statistics (formerly called PSYC 205)
The application of statistical techniques to the analysis of psychological, experimental, and survey data. Major emphasis on the understanding of statistics found in published research and as preparation for the student's own research in more advanced courses. 
 

Prerequisite(s): PSYC 101 or NEUR 100 or a score of 5 on the Psychology AP exam, or a score of 5, 6, or 7 on the Higher Level IB exam, or permission of the instructor. Fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have taken or are taking ECON 103/SOC 190, POL 299, or STAT 160 except for psychology majors and neuroscience majors..

Typical Periods Offered: Spring, Fall

STAT 101 Reasoning with Data: Elementary Applied Statistics (no longer offered)
Note: This course is no longer offered as of Fall 2020.
 
An introduction to the fundamental ideas and methods of statistics for analyzing data. Topics include descriptive statistics, basic probability, inference, and hypothesis testing. Emphasis on understanding the use and misuse of statistics in a variety of fields, including medicine and both the physical and social sciences. This course is intended to be accessible to those students who have not yet had calculus.
 
Prerequisite(s): Fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have completed MATH 205; such students should consider taking STAT 218 instead. Not open to students who have taken or are taking MATH 101Z/STA 101Z, POL 199, QR 180, ECON 103/SOC 190, or PSYC 105 (formerly called 205).
 
Typical Periods Offered: Spring; Fall

 

QR 180 Statistical Analysis of Education Issues (no longer offered)
Note: This course is no longer offered as of Fall 2020.
 
What factors explain individual and group differences in student achievement test scores and educational attainment? Do inequities in financing public elementary and secondary schools matter in terms of student achievement and future employment? Th is course explores the theories, statistical methods, and data used by social scientists and education researchers in examining these and other education issues. Students collect, analyze, interpret, and present quantitative data. They begin with descriptive statistics and work up to inferential statistics, including hypothesis testing and regression analyses.
 
Prerequisite(s): Fulfillment of the basic skills component of the Quantitative Reasoning requirement. Not open to students who have taken or are taking ECON 103/SOC 190, MATH 101, MATH 101Z, POL 199, or PSYC 105 (formerly called 205).
 

Statistical Modelling

QR/STAT 260: Applied Data Analysis and Statistical Inference
This is an intermediate statistics course focused on fundamentals of statistical inference and applied data analysis tools. Emphasis on thinking statistically, evaluating assumptions, and developing practical skills for real-life applications to fields such as medicine, politics, education, and beyond. Topics include t-tests and non-parametric alternatives, multiple comparisons, analysis of variance, linear regression, model refinement, missing data, and causal inference. Students can expect to gain a working knowledge of the statistical software R, which will be used for data analysis and for simulations designed to strengthen conceptual understanding. This course, offered through Wellesley's Quantitative Analysis Institute, can be counted as a 200-level course toward the major or minor in Mathematics, Statistics, Economics, Environmental Studies, Psychology or Neuroscience. Students who earned a Quantitative Analysis Institute Certificate are not eligible for this course.
 
Prerequisite(s): Any Quantitative Reasoning Overlay course. Prerequisite for economics students - ECON 103. Prerequisite for psychology students - PSYC 205.
 
Typical Periods Offered: Fall

 

STAT 318: Regression Analysis and Statistical Models
This is an applied regression analysis course that involves hands-on data analysis. Topics covered during the semester include simple and multiple linear regression models, model diagnostics and remedial measures, matrix representation of linear regression models, model comparison and selection, generalized linear regression models (e.g. binary logistic regression, multinomial logistic regression, ordinal logistic regression, and Poisson regression), and basic time-series autoregressive AR(p) models. Statistical language R will be used throughout the course to realize fitting linear (or generalized linear) regressions models, model diagnostics, model comparison and selection, and simulations.
 
Prerequisite(s): STAT 218, MATH 205 and MATH 206. (STAT 218 can be replaced by STAT 101, ECON 103, or STAT 260.)
 

CS Electives

CS 232: Artificial Intelligence
What is artificial intelligence (AI) and should humans fear it as one of "our biggest existential threats"? In this course we will grapple with these difficult questions and investigate them in different ways. We will follow the history of AI from Alan Turing's "Can Machines Think?" seminal paper to the recent Elon Musk musings on AI's threat to mankind. We will discuss the underlying theory of the symbolic, knowledge-rich approaches of the 20th century AI (e.g., rule-based systems) and the 21st century approaches relying on statistical learning from large amounts of data (e.g., machine learning algorithms). Finally, we will dissect some of the AI applications in modern life: personal assistant technology like Alexa and Siri, machine translation (Google Translate), and self-autonomous cars. By the end of the semester, students should be able to answer the starting questions in depth and with nuance.
 
Prerequisites(s): CS 230 or permission of the instructor.
 
Typical Periods Offered: Spring
CS 234: Data, Analytics, and Visualization
As the number of our digital traces continues to grow, so does the opportunity for discovering meaningful patterns in these traces. In this course, students will initially learn how to collect, clean, format, and store data from digital platforms. By adopting a computational approach to statistical analysis, students will then implement in code different statistical metrics and simulation scenarios for hypothesis testing and estimation. Finally, students will generate meaningful visualizations for data exploration and communicating results. Additionally, we will discuss the ethics of data collection and think critically about current practices of experimenting with online users. Students will work in groups to create their own datasets, ask an interesting question, perform statistical analyses and visualizations, and report the results.
 
Prerequisites: CS 230 or permission of the instructor.
 
Typical Periods Offered: Every other year; Fall
CS 304: Databases with Web Interfaces
A study of the three-layer architecture commonly used for Web-based applications such as e-commerce sites. We will learn to model and design databases using entity-relationship diagrams and the Standard Query Language (SQL) for managing databases. We will focus on Flask, a popular Python-based web micro-framework, as well as important alternatives such as PHP and Node.js. We will also discuss performance, reliability, and security issues. Finally, we will create dynamic websites driven by database entries.
 
Prerequisites: CS 230 or permission of the instructor.
 
Typical Periods Offered: Spring; Fall

 

CS 305: Machine Learning
Machine learning is the science of teaching computers how to learn from observations. It is ubiquitous in our interactions with society, showing up in face recognition, web search, targeted advertising, speech processing, genetic analysis, and even Facebook's selection of posts to display. It is currently at the forefront of research in artificial intelligence, and has been making rapid strides given the vast availability of data today. This course is a broad introduction to the field, covering the theoretical ideas behind widely used algorithms like support vector machines, neural networks, graphical models, decision trees, and many more. We will also study practical applications of these algorithms to problems in vision, speech, language, biology, and the social sciences.
 
Prerequisites: CS 230 and either MATH 206 or MATH 220 or MATH 225.
 
Typical Periods Offered: Spring; Fall 
CS 315: Data and Text Mining for the Web
In the past decade, we have experienced the rise of socio-technical systems used by millions of people: Google, Facebook, Twitter, Wikipedia, etc. Such systems are on the one hand computational systems, using sophisticated infrastructure and algorithms to organize huge amount of data and text, but on the other hand social systems, because they cannot succeed without human participation. How are such systems built? What algorithms underlie their foundations? How does human behavior influence their operation and vice-versa? In this class, we will delve into answering these questions by means of: a) reading current research papers on the inner-workings of such systems; b) implementing algorithms that accomplish tasks such as web crawling, web search, random walks, learning to rank, text classification, topic modeling; and c) critically thinking about the unexamined embrace of techno-solutionism using a humanistic lens.
 
Prerequisites: CS 230 or permission of the instructor.
 
Typical Periods Offered: Every other year
CS 313: Computational Biology
Many elegant computational problems arise naturally in the modern study of molecular biology. This course is an introduction to the design, implementation, and analysis of algorithms with applications in genomics. Topics include bioinformatic algorithms for dynamic programming, tree-building, clustering, hidden Markov models, expectation maximization, Gibbs sampling, and stochastic context-free grammars. Topics will be studied in the context of analyzing DNA sequences and other sources of biological data. Applications include sequence alignment, gene-finding, structure prediction, motif and pattern searches, and phylogenetic inference. Course projects will involve significant computer programming in Java. No biology background is expected.
 
Prerequisites: CS 230 or permission of the instructor.
 
Typical Periods Offered: Every other year; Fall
CS 342: Computer Security and Privacy
An introduction to computer security and privacy. Topics will include privacy, threat modeling, software security, web tracking, web security, usable security, the design of secure and privacy preserving tools, authentication, anonymity, practical and theoretical aspects of cryptography, secure protocols, network security, social engineering, the relationship of the law to security and privacy, and the ethics of hacking. Emphasis will include hands-on experience and the ability to communicate security and privacy topics to laypeople as well as experts. Assignments will include exercises with security exploits and tools in a Linux environment; problem sets including exercises and proofs related to theoretical aspects of computer security; and opportunities to research, present, and lead discussions on security- and privacy-related topics. Students are required to attend an additional 70-minute discussion section each week.
 
Prerequisites: CS 230 and CS 240 or permission of the instructor. Recommended - at least 2 of CS 242, CS 220, CS 204, and Math 225.
 
Typical Periods Offered: Every other year
CS 343: Distributed Computing
What is the “cloud”? What is a distributed system? This course is for students interested in understanding the fundamental concepts and algorithms underlying existing distributed systems. By the end of this course, students will have the basic knowledge needed to work with and build distributed systems, such as peer-to-peer systems and cloud computing systems. Topics include MapReduce, Spark, communication models, synchronization, distributed file systems, coordination algorithms, consensus algorithms, fault-tolerance, and security.
 
Prerequisites: CS 230 (required); CS 231 and CS 242 (recommended).
 
Typical Periods Offered: Every other year

STAT Electives

STAT 220/MATH 220: Probability
Probability is the mathematics of uncertainty.  We begin by developing the basic tools of probability theory, including counting techniques, conditional probability, and Bayes's Theorem.  We then survey several of the most common discrete and continuous probability distributions (binomial, Poisson, uniform, normal, and exponential, among others) and discuss mathematical modeling using these distributions. Often we cannot calculate probabilities exactly, and we need to approximate them.  A powerful tool here is the Central Limit Theorem, which provides the link between probability and statistics.  Another strategy when exact results are unavailable is simulation.  Time permitting, we examine Markov chain Monte Carlo methods, which offer a means of simulating from complicated distributions.  
 
Prerequisites: MATH 205. Open to students with a strong background in single-variable calculus (MATH 116, MATH 120, or the equivalent) by permission of the instructor.
 
Typical Periods Offered: Fall
STAT 221: Statistical Inference
This course introduces the theory of statistical inference: given a data set, how do we estimate the parameters of probabilistic models like those introduced in Math 220? What is the optimal way to make use of the information in our data? Topics include the theories that underly traditional hypothesis testing and confidence intervals, such as maximum likelihood inference and sufficiency. The course will also cover Bayesian techniques for point and interval estimation and resampling approaches, such as the bootstrap.
 
Prerequisites: MATH 220, STAT 220.
 
Typical Periods Offered: Every other year; Spring
STAT 228: Multivariate Data Analysis
This is a course in multivariate data analysis. Students will be introduced to modern multivariate techniques, their applications and interpretations, and will learn how to use these methods to understand relationships between variables, extract patterns, or identify clusters or classifications in a rich data set involving multiple variables. Topics covered during the semester include both dependence techniques (e.g. multiple linear regression, binary logistic regression, multinomial logistic regression, principal component analysis, linear discriminant analysis, decision trees, etc) and interdependence techniques (e.g. factor analysis, cluster analysis, etc). A selection of topics in machine learning and data mining are also introduced during the semester. Statistical language R is used in this class.
 
Prerequisites: MATH 205 and STAT 218 (or STAT 260).

 

STAT/QR 260: Applied Data Analysis
This is an intermediate statistics course focused on fundamentals of statistical inference and applied data analysis tools. Emphasis on thinking statistically, evaluating assumptions, and developing practical skills for real-life applications to fields such as medicine, politics, education, and beyond. Topics include t-tests and non-parametric alternatives, multiple comparisons, analysis of variance, linear regression, model refinement, missing data, and causal inference. Students can expect to gain a working knowledge of the statistical software R, which will be used for data analysis and for simulations designed to strengthen conceptual understanding.
 
Prerequisites: Any Quantitative Reasoning Overlay course.
 
Typical Periods Offered: Fall
STAT/QR 309: Causal Inference
This course focuses on statistical methods for causal inference, with an emphasis on how to frame a causal (rather than associative) research question and design a study to address that question. What implicit assumptions underlie claims of discrimination? Why do we believe that smoking causes lung cancer? We will cover both randomized experiments – the history of randomization, principles for experimental design, and the non-parametric foundations of randomization-based inference – and methods for drawing causal conclusions from non-randomized studies, such as propensity score matching. Students will develop the expertise necessary to assess the credibility of causal claims and master the conceptual and computational tools needed to design and analyze studies that lead to causal inferences. Examples will come from economics, psychology, sociology, political science, medicine, and beyond.
 
Prerequisites: Any one of QR 260/STAT 260, STAT 318, ECON 203, SOC 290, PSYC 305 or a Psychology 300-level R course; or a Quantitative Analysis Institute Certificate; or permission of the instructor.
 
Typical Periods Offered: Every other year; Spring
STAT 318: Regression Analysis and Statistical Models
This is an applied regression analysis course that involves hands-on data analysis. Topics covered during the semester include simple and multiple linear regression models, model diagnostics and remedial measures, matrix representation of linear regression models, model comparison and selection, generalized linear regression models (e.g. binary logistic regression, multinomial logistic regression, ordinal logistic regression, and Poisson regression), and basic time-series autoregressive AR(p) models. Statistical language R will be used throughout the course to realize fitting linear (or generalized linear) regressions models, model diagnostics, model comparison and selection, and simulations.
 
Prerequisites: STAT 218, MATH 205 and MATH 206. (STAT 218 can be replaced by STAT 101, ECON 103, or STAT 260.)

 

ECON 203: Econometrics (for students with concentrations related to economics)
This course introduces students to the methods economists use to assess empirical relationships, primarily regression analysis. Issues examined include statistical significance, goodness-of-fit, dummy variables, and model assumptions. Includes an introduction to panel data models, instrumental variables, and randomized and natural experiments. Students learn to apply the concepts to data, read economic research, and write an empirical research paper.
 
Prerequisites(s): ECON 101, ECON 102, and one math course at the level of MATH 115 or higher. The math course must be taken at Wellesley. One course in statistics (ECON 103, PSYC 205, STAT 218 or MATH 220 prior to fall 2018 ) is also required.
 
Typical Periods Offered: Spring; Fall