# Programs

The Computer Science Department offers an undergraduate major leading to the degree of Bachelor of Arts or Bachelor of Science, and two minors. In addition, the Computer Science, Biology, and Mathematics departments jointly offer an interdisciplinary concentration in Bioinformatics.

Computer science majors pursuing a Bachelor of Arts degree must complete seven core requirements plus 12 additional credits earned through higher level computer science courses.

### Core Courses:

- Computer Science 1
- Computer Science 2
- Computer Systems
- Computer Organization
- Logic and Computation
- Randomness and Computation
- Algorithms

*(The final three courses must be taken in the order listed) *

### Additional courses (12 credits):

- Three credits from CSCI 2000 or above
- Nine credits from CSCI 3000 or above

### Mathematics Component (class of 2027 and prior classes)

- The Bachelor of Arts requires one semester of Calculus 2 for science majors.
- We strongly advise students pursuing the BA to also do Linear Algebra

### Mathematics Component (incoming class of 2028 and following classes)

- The Bachelor of Arts requires one semester of Calculus 2 for science majors.

Computer science majors pursuing a Bachelor of Science degree must complete seven core requirements plus additional coursework in computer science, mathematics, and the laboratory sciences.

### Core Courses:

- Computer Science 1
- Computer Science 2
- Computer Systems
- Computer Organization
- Logic and Computation
- Randomness and Computation
- Algorithms

*(The final three courses must be taken in the order listed) *

### Additional courses (12 credits):

- Three credits from the Social & Ethical Issues cluster (CSCI 2260- 2267)
- 12 elective credits from CSCI 3000 or above

### Mathematics Component (12 credits):

- Calculus II (mathematics or science majors)
- Multivariable Calculus
- Linear Algebra
- Any math course 3000 or higher (other than MATH 4426 - Probability)

### Science Component:

- A two-semester sequence in a laboratory science for science majors. Choose from among the Biology, Chemistry, Physics, or Earth & Environmental Sciences sequences listed below.

- Molecules & Cells + Ecology & Evolution + Investigations in Molecular Cell Biology Lab
- Molecules & Cells+ Introduction to Physiology + Investigations in Molecular Cell Biology Lab

- General Chemistry I + General Chemistry II
- Honors Modern Chemistry I + Honors Modern Chemistry II

Introductory Physics I (Calculus) + Introductory Physics II (Calculus)

**Option #1**

Exploring the Earth + any two of the following 2-credit Environmental Systems courses:

- Ecosystems
- Water Resources
- The Critical Zone
- Climate Change
- Oceans
- Earthquakes
- Quantitative Methods

**Option #2**

Exploring the Earth + any 2000, 3000, or 4000 level class in EESC (note pre-reqs)

**Option #3**

Any two of the following 2-credit Environmental Systems courses + any 2000, 3000, or 4000 level class in EESC (note pre-reqs)

- Ecosystems
- Water Resources
- The Critical Zone
- Climate Change
- Oceans
- Earthquakes
- Quantitative Methods

The computer science minor is designed to provide an introduction to computer science for students with a strong secondary interest in computer science and good analytical skills.

- Computer Science 1
- Computer Science 2
- Two electives numbered 2000 or higher
- One must be Computer Systems (CSCI 2271) or Logic and Computation (CSCI 2243).
- Courses from the social and ethical issues cluster (CSCI2260–2267) are
**not accepted**as one of the 2000-level required courses.

- Two electives numbered 3000 or higher.

*We strongly advise students pursuing the minor to also do Calculus II for Math and Science majors (MATH1103)*

*Please Note: Computer science minors should take CSCI 1101 and CSCI 1102 by the end of their sophomore year, and Logic & Computation (CSCI 2243) and Computer Systems (CSCI 2271) by the end of their junior year, as all 3000-level CS electives have one or both of these courses as prerequisites. Several 3000-level electives have additional prerequisites such as Randomness & Computation (CSCI 2244), Algorithms (CSCI 3383), and Linear Algebra (MATH2210).*

- Computer Science 1
- Computer Science 2
- Two electives numbered 2000 or higher
- One must be Computer Systems (CSCI 2271) or Logic and Computation (CSCI 2243).
- Courses from the social and ethical issues cluster (CSCI2260–2267) are not accepted as one of the 2000-level required courses.

- Two electives numbered 3000 or higher.
- MATH1103 Calculus II (Math/Science majors) – co-requisite

*Please Note: Computer science minors should take CSCI 1101 and CSCI 1102 by the end of their sophomore year, and Logic & Computation (CSCI 2243) and Computer Systems (CSCI 2271) by the end of their junior year, as all 3000-level CS electives have one or both of these courses as prerequisites. Several 3000-level electives have additional prerequisites such as Randomness & Computation (CSCI 2244), Algorithms (CSCI 3383), and Linear Algebra (MATH2210).*

*Many students will need to complete a prerequisite calculus course (e.g., MATH1102 (Calculus I for Science Majors) before MATH1103, so this calculus requirement is often satisfied by enrolling in a two-semester sequence.*

**Declaring a minor:
**Students can declare a minor in computer science after they have taken CS2 or enrolled in the course (following the add/drop deadline). The minor must be declared before the end of the student's sophomore year.

The data science minor is an interdisciplinary program emphasizing human-centered applications of data analysis and modeling for the common good. The minor has been designed to be flexible and accessible for students across a variety of disciplines; no previous programming experience is required, and students will be able to construct a 6-course pathway that connects data science to their application area of interest. The minor is open to all undergraduate students at Boston College

### Course Requirements (18 credits):

- Data Science Principles (CSCI 1090) (no prerequisite)
- Mathematical Foundations of Data Science (MATH 2250) (prerequisite: Math 1101 or AP Calculus AB)
- Data Science: Methods and Applications (CSCI 2291) (prerequisite: CSCI 1090 and MATH 2250)
- Elective 1
- Elective 2
- Data Science Capstone (CSCI 4900)

*Please Note: CSCI 1090 and MATH 2250 can be taken in either order or concurrently. Consistent with the University’s academic regulations, students must have at least 15 credits in the data science minor that are not used to fulfill requirements for another major or minor or a Core requirement. At most, 3 credits (1 course) can be “double-counted” towards the minor and the student’s major requirements.*

- BIOL 4200, Introduction to Bioinformatics
- BIOL 4075, Research in Molecular Phylogenetics
- BIOL 4802, Research in Evolutionary Genomics
- BZAN 6604, Management Science
- BZAN 3307, Machine Learning
- BZAN 3310, Sports Analytics
- BZAN 3384, Predictive Analytics
- BZAN 3385, Applied Statistical Modeling
- CHEM 5510, Drug Discovery and Medicinal Chemistry
- CSCI 2289, Data Science Ethics
- CSCI 2257, Database Systems and Applications
- CSCI 3343, Computer Vision
- CSCI 3345, Machine Learning
- CSCI 3346, Data Mining
- CSCI 3349, Natural Language Processing
- CSCI 3383, Algorithms
- CSCI 3390, Topics in Computer Science: Intro to Network Science
- CSCI 3391, Topics in Data Science: Computational Modeling of Contagion & Epidemics
- CSCI 3397, Biomedical Image Analysis
- ECON 2228: Econometric Methods
- ECON 2231: Financial Forecasting
- ECON 3370: Topics in Applied Econometrics
- ECON 3327: Financial Econometrics
- ECON 3389: Machine Learning for Economics
- ISYS 3350, Data Management for Analytics
- ISYS 6625, Geographic Information Systems
- ISYS 6645, Data Visualization
- MATH 4427, Mathematical Statistics
- MATH 4461, Stochastic Processes
- MATH 4480, Mathematics and Machine Learning
- MATH 4480, Advanced Data Analysis
- MKTG 2153, Customer Research and Marketing Decisions
- MESA 6460, Interpretation and Evaluation of Research
- MESA 6469, Intermediate Statistics
- PHCG 2000, Spatial Data Science and Applications
- POLI 2300, Introduction to Data Science
- POLI 3316, Technology and Politics
- PSYC 3397, Cognitive and Neural Bases of Person Knowledge

Applying for the minor

** **To be eligible to apply for entry to the data science minor program students must:

- Declare the minor before the end of your sophomore year.
- Complete CSCI 1090 and MATH 2250. (It is recommended that you maintain a minimum GPA of 3.0 averaged across these two courses.)
- Have a degree audit
- Complete the data science minor pathway form listing the focus area of your pathway, the two elective courses you will take, and two additional courses outside of the minor that support your pathway plan.
- Apply by November 20 in the fall or April 20 in the spring. Notifications on acceptance will be made in December and May (once degree audits can be reviewed).

*For further information or to receive a data science minor pathway form as part of the application, contact the program director, Professor George Mohler.*

Students enrolled in the computer science BS, BA, or Minor programs must maintain a grade point average (GPA) of 1.67 or above in the CSCI courses counted toward their program's requirements. This policy applies to students who declare any CSCI major or minor after the spring 2023 semester.