Skip to main content

Requirements

Requirements for the Computer Science Major (Bachelor of Science) (40 semester hours)

32 semester hours in Computer Science, 4 semester hours in Mathematics, and 4 semester hours in Data Science 

Required Core (24 semester hours)

  • CS 151 Introduction to Programming with Python (4)
  • CS 152 Data Structures (4)
  • CS 351 Analysis of Algorithms (4)
  • DATA 351 Data Management with SQL (4)
  • DATA 352W Ethics, Teamwork, and Communication (4)
  • MATH 251W Foundations of Advanced Mathematics (4)

Structured Electives (8 semester hours):

  • Choose two classes from the following list:
    • CS 261 Software Development (4)
    • CS 262 Web Development (4)
    • CS 263 Mobile Development (4)
    • CS 271 Networks and Systems (4)
    • CS 276 Advanced Collaborative Computing (4)

Open Electives (8 semester hours)

  • Eight hours of electives at any level chosen from classes with CS, DATA, or MATH prefixes. MATH 130 may not be used to to satisfy any part of this requirement. 

Requirements for the Computer Science Minor (20 semester hours)

 

  • CS 151 Introduction to Programming with Python (4)
  • CS 152 Programming with Data Structures (4)
  • CS 351 Analysis of Algorithms (4)
  • MATH 251W Foundations of Advances Mathematics (4)
  • 4 hours of elective coursework at any level chosen from classes with CS, DATA, or MATH prefixes. MATH 130 may not be used to satisfy this requirement

 

Requirements for the accelerated 3+1 BS/MS in Computer Science (64 semester hours)

The 3+1 program consists of six semesters of undergraduate studies and three semesters  of primarily graduate classes (Fall, Spring, and Summer), including five core classes and three electives. Students must complete 136 credits total to earn both their Bachelors and Masters Degrees in Computer Science. If a student has completed 124 credits (inclusive of graduate classes) by May of their final year (e.g. after eight semesters), they will receive their bachelors diploma.  

Required undergraduate Core (16 semester hours):
  • CS 151 Introduction to Programming with Python (4)
  • CS 152 Programming with Data Structures (4)
  • CS 351 Analysis of Algorithms (4)
  • MATH 251W Foundations of Advances Mathematics (4)

Undergraduate Electives (8 semester hours):

  • Eight hours of electives at any level chosen from classes with CS or DATA or MATH prefixes, or capstone or internship. MATH 130 may not be used to satisfy any part of this requirement.
Required graduate Core (36 semester hours):
  • DATA 504W Data Ethics, Policy, and Human Beings (4)

Two classes in Software and Systems:

  • DATA 503 Fundamentals of Data Engineering (4)
  • CS 529: Topics in Software and Systems (4)

Algorithms and Complexity (pick one from the following list):

  • DATA 505 Applied Machine Learning (4)
  • CS 540 Principles of Cybersecurity (4)
  • CS 549: Topics in Algorithms and Complexity (4):

Humans and Design (pick one from the following list):

  • DATA 502 Data Visualization and Presentation (4)
  • CS 580 Human-Computer Interaction (4)
  • CS 589: Topics in Humans and Design (4)

Graduate Electives (16 semester hours):

  • Sixteen hours of graduate electives with DATA prefix or CS prefix.

Willamette University

Computer Science