B.S. in Computer Science

Computer science is the scientific study of computing devices, the software that drives them, and the computational tasks they are capable of performing. Computer science studies both hardware and software; as with all sciences, each of these possesses both theoretical and applied components. Computing theory shares knowledge and techniques with the fields of mathematics, physics, engineering, philosophy, psychology and linguistics. Its applications span the range of human endeavors: the physical, life and social sciences; the literary, visual and performing arts; law, government, recreation, and virtually every sector of the commercial world. Thus, computer science is by its very nature an interdisciplinary subject that offers both a solid, unifying foundation for a liberal arts education and valuable career skills.

The curriculum consists of a rigorous course of study in computer science and mathematics, and provides the student with a thorough grounding in programming, fundamentals of computer organization, data structures and algorithm design. It is designed to prepare students for careers in the computer industry and graduate work in computer science.

Sample Four Year Plan

All courses submitted toward either major or minor requirements in the Computer Science Department must be taken for a letter grade (A-F). This includes electives in CS and all other courses taken to satisfy the major. This does not apply to courses that are challenged. Only those classes for which the student has received a C- or better may be used to satisfy prerequisite requirements. An instructor may require the student to provide evidence of having met prerequisite requirements.

Requirements

Degree requirements for B.S. in Computer Science
Degree Requirement Units
General Education (50 units, 6 covered by major requirements) 44
Computer Science Core 49
Computer Science Electives 9
Computer Science Capstone Requirement 3
Required Supporting Courses 10–16
General Electives 3–5
Total needed for graduation 120

General Education

Students will follow different GE patterns depending on whether you entered SSU as a first-time freshman or as a transfer student and on the date you entered SSU. For more information, see SSU's GE information page.

CS Core

CS Core Requirements (49 units total)
Requirement Units
CS 115: Programming I 4
CS 210: Introduction to Unix 1
CS 215: Programming II 4
CS 242 Discrete Structures for Computer Science 4
CS 252: Introduction to Computer Organization 4
CS 315: Data Structures 4
CS 351: Computer Architecture 4
CS 355: Database Management Systems Design 4
CS 370: Software Design and Development 4
CS 415: Analysis of Algorithms 4
CS 450: Operating Systems 4
CS 454: Theory of Computation 4
CS 460: Programming Languages 4

Computer Science Electives

Choose 9 units of upper-division CS electives (see list below). No more than 3 units can be satisfied by a combination of CS 349, CS 390, CS 495, and CS 497.

CS Elective Options
CS Elective Units
CS 330: Game Programming 3
CS 340: Computer Security and Malware 3
CS 349: Problem Solving in a Team Environment 1
CS 360: Object-Oriented Programming 3
CS 365: Computer Networking and the Internet 3
CS 375: Computer Graphics 3
CS 385: Selected Topics in Computer Science 1–4
CS 386: Selected Topics in Computer Science with Lab 3
CS 390: Computer Science Colloquium 1
CS 425: Parallel Computing 3
CS 452: Compiler Design and Construction 3
CS 465: Data Communications 3
CS 480: Artificial Intelligence 3
CS 495: Special Studies 1–4
CS 497: Internship 2

Computer Science Capstone Requirement

Students must take either:

  • CS 470: Advanced Software Design Project, or
  • CS 496: Senior Research Project

Total units in capstone requirement: 3

Required Supporting Courses

Students must take three supporting courses:

  • MATH 161 or 161X
  • Two additional courses of the student's choice, using the list below.
Support Course Options
Support Course Units
MATH 161 or 161X: Differential and Integral Calculus 1 (required) 4 or 6
MATH 165 or 165X: Elementary Applied Statistics 4 or 6
MATH 211: Differential and Integral Calculus II 4
MATH 222: Elementary Applied Linear Algebra 3
MATH 241:Linear Algebra with Applications in Differential Equations 4
MATH 306: Number Theory 4
MATH 316: Graph Theory and Combinatorics 4
MATH 352: Numerical Analysis 4
MATH 416: Graph Theory and Combinatorics 4
MATH 430: Linear Systems Theory 3
MATH 470: Mathematical and Statistical Modeling 4
PHYS 214: Introduction to Physics II 4
Other by arrangement with the CS Department