Computer Science Major

NSM PEAK

The Computer Science major prepares students for a broad variety of careers and for graduate study. Work in computer science includes software development and design, research in solving problems in computing (including data storage, networking, retrieval, organization, validation, and so on), and research into new ways of using computing devices (computer vision, robotics, machine learning, accessibility studies, etc.). Computer Science is one of the most rapidly expanding and changing fields of scientific inquiry. Preparation for work in this field is thus inherently interdisciplinary, requiring a strong mathematical background. The problem-solving capabilities acquired in the Computer Science major are of wide utility in many fields of study and careers not directly connected to computer science.

Computer Science majors may not minor in Scientific Computing; they should instead earn the Data Science specialization.

Major Requirements

36 Credits

Computer Science Core (26 credits):

CSC-150Comp Sci I: Intro to Comp Sci and Prog

3 credits

CSC-152Computer Science II: Data Structures

4 credits

CSC-160Introduction to Computer Architecture

3 credits

CSC-235Programming Languages

3 credits

CSC-270Applied Databases

3 credits

CSC-340Design and Analysis of Algorithms

3 credits

MAT-252Discrete Mathematics

3 credits

PHY-271Analytical Physics I

3 credits

PHY-271LAnalytical Physics I Lab

1 credit

Calculus (4 credits)

Complete one of the following.

MAT-175Single Variable Calculus

4 credits

MAT-275Multivariable Calculus

4 credits

MAT-175 is a prerequisite of CSC-340 and PHY-271 . Depending on the student's math background, MAT-150 may be required to enroll in MAT-175 .

Advanced Computer Science Elective (3 credits)

Complete 3 credits from the following.

CSC-350Formal Languages and Automata

3 credits

CSC-455Numerical Computation

3 credits

MAT-427Statistical Machine Learning

3 credits

Each course has different prerequisites and could require additional coursework beyond the CS Core and CS Calculus requirements. CSC-455 requires MAT-285 and MAT-361 . MAT-427 requires MAT-212 and CSC-285 .

Computer Science Capstone (3 credits)

Complete CSC-480 and a minimum of 1 credit of INT-497 .
CSC-480Software Engineering and Senior Design

2 credits

INT-497Internship

1-6 credits

Outcomes

Upon successful completion of the Computer Science major, students will have 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; and

6.      Apply scientific reasoning to develop and test scientific questions.