Students interested in computer science specifically should instead declare the "BS Computer Science" degree for greater depth.
Students enrolled at Willamette prior to Fall 2025 may complete these requirements and choose either a BA or BS.
BACHELORS OF ARTS
Five (5) courses in Computer Science, two (2) courses in Data Science, one (1) course in Mathematics,
two electives.
Electives may be courses with MATH, DATA, or CS prefix, pre-approved courses from other
departments, or courses approved in consultation with your major advisor.
Requirements
Dependency Graph
CS__ 151 : Intro to
Programming in Python
CS__ 152 : Data Structures
MATH 251W: Foundations of Advanced Mathematics
CS__ 351 : Analysis of Algorithms
DATA 351 : Data Management with SQL
DATA 352W: Ethics, Teamwork, Communications
Advanced Computing Requirement, choose two of
CS 261 Software Development
CS 262 Web Development
CS 263 Mobile Development
CS 271 Networks and Systems
CS 276
Advanced Collaborative Computing
Advanced Computing Requirement 2/2
Elective
Elective
Bx/MS 3+1
Interested students should contact Prof. Calvin Deutschbein (ckdeutschbein@willamette.edu) at earliest convenience.
Three (3) courses in Computer Science, one (1) course in Mathematics, one (1) course in Mathematics,
two electives.
Electives may be courses with MATH, DATA, or CS prefix, pre-approved courses from other
departments, or courses approved in consultation with your major advisor.
At this time, it seems likely CS 3+1 students will need to study at the Portland center, and will not have an option to study in Salem.
The M.S. in Computer Science is a PROFESSIONAL and TERMINAL degree. It is not a research degree, does not have a thesis component, and is not intended to prepare students for doctoral (Ph.D.) study. Students interested in graduate school with a research focus should consult their advisor before committing to the program. As a professional degree, the M.S. is tuition-funded, rather than grant-funded, though undergraduate financial aid agreements apply.
Students must ensure they meet the undergraduate credit requirement to graduate on time. In practice, this means taking four full courses (16 credit hours) every semester during the three undergraduate years, and an additional course over the three years, usually by taking two half-courses (2 credit hours each) to avoid additional tuition costs. I recommend MATH 102X, MATH 153, and ARTH 10X classes.
Dual Degree students should not take the following which is redundant with graduate level coursework:
DATA 352W: Ethics, Teamwork, Communications
Requirements
Dependency Graph
Undergraduate Core
CS__ 151 : Intro to Programming in Python
CS__ 152 : Data Structures
MATH 251W: Foundations of Advanced Mathematics
CS__ 351 : Analysis of Algorithms
Elective
Elective
Master's Core
Data Ethics, Policy, and Human Beings
Software and Systems 1/2
Software and Systems 2/2
Algorithms and Complexity
Humans and Design
500+ Elective 1/4
500+ Elective 2/4
500+ Elective 3/4
500+ Elective 4/4
MINOR
Three (3) courses in Computer Science, one (1) course in Mathematics, one elective.
Elective may be
courses with MATH, DATA, or CS prefix, pre-approved courses from other departments, or courses approved in
consultation with your major advisor.