Computer Science BS

In the CS program, you will learn fundamental computer science concepts while applying your knowledge to solve real-world problems. Collaboration, team work, and communication skills are infused into the learning experiences with heavily project-based courses in a state-of-the-art technological environment.

You'll begin by taking a set of common core courses to establish a strong foundation in computer science, followed by coursework in one of four concentration areas: Software Engineering, Network and Security, Data Science, or Game Development. The curriculum provides you the opportunity to learn concepts and develop skills in more than one concentration, helping you to become a well rounded computer science professional.

To learn more about the major, visit the School of Computing & Design website.

Required Courses

Special Requirements

If you have been accepted into the CS Online Degree Completion Program, you can find specific information for your degree on the CS Online Degree Completion Requirements page.

AS-T certified students can earn a Computer Science B.S. by completing the special requirements found on the Requirements for AS-T certified students in Computer Science.

All other CS majors, see below.

Standard Requirements

In order to graduate, you will also need to complete your general education and university requirements. You must maintain a minimum GPA of 2.0 or above in the major, and must earn a C- or above in any course that serves as a pre-requisite to a more advanced course.

Complete all of the following courses with a grade of C- or above:

Complete all of the following courses:

Computer Science Electives

All students must complete twelve (12) units of CS elective coursework from the list below, and not used in fulfillment of concentration requirements.

Complete one of the following Concentrations to fulfill the requirements of the CS major:

Please note: Twelve (12) of the units taken to complete a concentration (all of which are upper division) may not be used in fulfillment of other minors or concentrations.

Network & Security Concentration

Complete all of the following courses:

Data Science Concentration

Complete all of the following courses:

Software Engineering Concentration

Complete all of the following courses:

Game Development Concentration

Complete all of the following courses:

Learning Outcomes

MLO 1: Problem Solving & Computational Thinking

Apply analytical, mathematical, and computational methods to solve problems, abstracting essential structure, recognizing sources of uncertainty, and utilizing appropriate tools. More specifically, graduates should be able to:

  1. Apply knowledge of mathematics, programming, and computational thinking to solve problems;
  2. Analyze a problem, abstract its essential structure, and design, develop, and implement an appropriate solution;
  3. Evaluate the correctness and efficiency of a computer-based solution, process, component, or program to meet a desired outcome.

MLO 2: Professional Communication

Demonstrate the ability to analyze, understand, and evaluate information, ideas, and insights from multiple perspectives through written, oral, visual, and electronic means of communication, and explain their significance at an advanced collegiate level. More specifically, graduates should be able to:

  1. Receive information, ideas, and arguments through active listening and effective reading skills;
  2. Communicate effectively with a range of audiences through college-level writing;
  3. Communicate effectively with a range of audiences through well-organized, precise, and effective oral presentations.

MLO 3: Professional Ethos

Demonstrate professionalism through team work, punctuality, integrity, and reliability, as well as a commitment to ethical action based on an ability to rigorously evaluate multiple perspectives. More specifically, graduates should be able to:

  1. Function effectively on teams with diverse individuals from diverse backgrounds to accomplish a common goal;
  2. Analyze the local and global impact of computing on individuals, organizations, community, society, and the world;
  3. Understand and apply their professional, ethical, legal, security, and social responsibilities in the service of their community, society, and world.

MLO 4: CS Core Knowledge and Skills

Apply core computer science knowledge, theories, methods, and practices to address new and complex real-world challenges and opportunities. More specifically, graduates should be able to:

  1. Apply mathematical foundations, knowledge, tools, and methods in the modeling and design of computer-based systems in a way that demonstrates understanding of the tradeoffs involved in design choices;
  2. Apply systems knowledge, tools, and methods in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices;
  3. Apply software design, algorithmic knowledge, tools, and methods in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.

MLO 5: CS Specialized Knowledge and Skills

Apply specialized knowledge, theories, methods, and practices from multiple CS disciplines to address new and complex real-world challenges and opportunities. More specifically, graduates should be able to:

  1. Apply design and development principles, tools, and methods of specialized knowledge, possibly from multiple specializations, in the construction of computing systems of varying complexity in a way that demonstrates comprehension of the tradeoffs involved in design choices.