Bachelor of Science (B.S.)

B.S. in Computer Science Overview
In addition to the outcomes listed for the Bachelor of Arts program, graduates of the Bachelor of Science degree program will also have an ability to:
- Analyze the worst-case computational performance of algorithms of varying complexity
For the Bachelor of Science in Computer Science degree, the goal is for students to develop both a wide and deep exposure to computer science topics. The degree can serve as appropriate preparation for continued (graduate-level) study at the Masters or Doctoral level in the field of computer science, though that is not the only goal.
Through the degree requirements, students are expected to obtain exposure to the:
- Fundamental concepts of computer programming (CSC 111, CSC 112)
- Common data structures (CSC 112, CSC 201, CSC 301)
- Fundamentals of algorithmic analysis (CSC 201)
- Programming language structures and paradigms (CSC 231)
- Mechanisms of program execution, at the architecture (CSC 250) and operating system level (CSC 251)
- Algorithm design (CSC 301)
- Computational theory, including the limits of computation (CSC 231, CSC 301)
- Advanced content in areas of interest (CSC 300-level electives)
The CSC 231 and CSC 301 course requirements, as well as the requirement that all electives are at the CSC 300-level, realize the intention of a deeper exposure to computer science topics than for the Bachelor of Arts degree offered by the department.
What is the difference between the B.S. and B.A. programs?
Neither degree is “better”; they are simply different. The B.S. degree requires more depth in some computer science areas, while the B.A. degree requires fewer hours and allows more flexibility to double major or spend more time in another program in which the student may have a passion and want to bring computer science to bear.
Employers never ask for only B.S. or B.A. students but are more apt to look at the courses and other computer science background.
How to Plan for a C.S. Major
Refer to our Planning for a Computer Science Major section for additional information.
Requirements
Computer Science Hours: You need a minimum of 36 hours in computer science.
Required CS Courses: 111, 112, 201, 231, 250, 251, 301, and 399.
Advanced CS Courses: At least 12 hours must be from computer science courses at the 300-level or higher.
Mathematics Courses: You need three math courses.
Required Math Courses: MST/MTH 112, MST/MTH 117, and one of the following: MST/MTH 121, MST/MTH 205, or MST/MTH 206.
Students with a special interest in multidisciplinary work may wish to consider a program of study that combines computer science with another discipline such as art, business, mathematics, biology, and others.
Students wishing to take graduate-level classes, 6XX or 7XX, for undergraduate or graduate credit should follow the directions at Undergraduates Taking Graduate courses.
Return the form to the Registrar’s office in Reynolda 110.
CS Degree Programs
The Department of Computer Science offers the following programs for undergraduate and graduate students:
Applying for Admission
Visit our admissions website for information on how to apply for admission.
Undergraduate Resources
Course Information
Special Programs