Computer Science is the study of algorithms and software systems: their theory, analysis, design, efficiency, implementation, maintenance, and application. Computer scientists seek to advance the fundamental understanding of how information is processed, as well as the practical design of software to perform specific functions. Computer science courses include, but are not limited to, the study of algorithm design, networks, security, programming languages, software engineering, graphics, databases, and artificial intelligence.

Computer Science majors are required to complete basic courses in calculus, core courses in programming and mathematical foundations, computer organization, data structures, software engineering, algorithmic theory, computer security, and systems software. An understanding of statistics is also required. Majors select senior-level courses from offerings such as graphics, artificial intelligence, networks, compilers, bioinformatics, architecture, parallel programming, cloud computing, big data, and database systems. A minor in Computer Science is also available.

Department of Computer Science laboratories are open to students 24/7. All major systems are networked and accessible by direct network connection from student residences.

Learning Outcomes

Students will:

  • Demonstrate proficiency in the areas of software design and development, computing systems, and algorithmic analysis. Students will, upon completing this program, have a thorough grounding in the key principles and practices of computing, and in the mathematical and scientific principles of computation
  • Be able to work effectively in groups to develop computational solutions to complex problems
  • Be able to communicate ideas effectively, both generally and specifically, with regard to technology and computing
  • Upon completing this program, either attend graduate school in computer science or find professional computer-related employment

Potential Occupations

The vast majority of Computer Science students are able to find related employment at graduation. The proven performance of CSU graduates has resulted in annual recruiting visits by a wide variety of commercial firms, government agencies, and research laboratories. Graduates have found employment as software developers and with research and development teams in government and industry. Internships are readily available that enhance skills and marketability.

Some career opportunities include, but are not limited to: systems programmer, software designer, computer researcher, software engineer, software tester, systems administrator, security systems designer, database programmer, consultant, technical product support personnel, and educator.

Effective Fall 2017

A minimum grade of C is required in CO 150 and in all mathematics, statistics, computer science, and departmental Group II courses which are required for graduation.

CO 150College Composition (GT-CO2)1A3
Select one course from the following: 4
Java (CS1) No Prior Programming  
Java (CS1) Prior Programming  
CS 165Java (CS2) Data Structures and Algorithms 4
MATH 160Calculus for Physical Scientists I (GT-MA1)1B4
MATH 161Calculus for Physical Scientists II (GT-MA1)1B4
Select at least two courses from two departments totaling a minimum of 7 credits from the following (one course must be or include the sequenced laboratory): 7
Principles of Animal Biology (GT-SC2)3A 
Principles of Plant Biology (GT-SC1)3A 
Fundamentals of Chemistry (GT-SC2)3A 
General Chemistry I (GT-SC2)3A 
Exploring Earth: Physical Geology (GT-SC2)3A 
Attributes of Living Systems (GT-SC1)3A 
Physics for Scientists and Engineers I (GT-SC1)3A 
Electives 5
 Total Credits 31
CS 220Discrete Structures and their Applications 4
CS 253Software Development with C++ 4
CS 270Computer Organization 4
MATH 229 or 369Matrices and Linear Equations
Linear Algebra I
STAT 301 or 315Introduction to Statistical Methods
Statistics for Engineers and Scientists
Arts and Humanities3B3
Historical Perspectives3D3
Social and Behavioral Sciences3C3
Electives 2-3
 Total Credits 29
CS 314Software Engineering 3
CS 320Algorithms--Theory and Practice 3
CS 356Systems Security 3
CS 370Operating Systems 3
Select a minimum of 5 credits additional science from the list of 3A courses in the freshman year and/or from the following for a total of at least 12 credits: 5
Astrophysics I  
Introduction to Weather and Climate  
Introduction to Weather and Climate Laboratory  
Introduction to Evolution  
General Chemistry II  
Engineering Mechanics-Statics  
Historical and Analytical Geology  
Biology of Organisms-Animals and Plants  
Introductory Genetics: Applied/Population/Conservation/Ecological (GT-SC2)3A 
Introductory Genetics: Molecular/Immunological/Developmental (GT-SC2)3A 
Physics for Scientists and Engineers II (GT-SC1)3A 
Learning and Memory  
Principles of Genetics  
Genetics Laboratory  
Advanced Writing23
Arts and Humanities3B3
Global and Cultural Awareness3E3
Electives 3
 Total Credits 29
Group 1-A:  
Select one course from the following: 4
Introduction to Computer Graphics4A,4C 
Object-Oriented Design4A,4C 
Introduction to Big Data4A,4C 
Introduction to Artificial Intelligence4A,4C 
Principles of Programming Languages4A,4C 
Introduction to Distributed Systems4A,4C 
Principles of Human-Computer Interaction4A,4C 
Parallel Programming4A,4C 
Group II:  
Select at least 9 hours from the following Technical Electives:14B6-9
Operating Systems and Networks4B 
Business Database Systems4B 
Systems Analysis and Design4B 
Web Application Development4B 
Advanced Networking and Security4B 
Introduction to the Study of Language4B 
Linear System Analysis I4B 
Linear System Analysis II4B 
Electronics Principles I4B 
Electronics Principles II4B 
Control Systems4B 
Telecommunications I4B 
Digital System Design4B 
Remote Sensing and Image Interpretation4B 
Web Design and Management4B 
New Communication Technologies and Society4B 
Introduction to Combinatorial Theory4B 
Advanced Calculus of One Variable4B 
Introduction to Mathematical Modeling4B 
Partial Differential Equations4B 
Introduction to Ordinary Differential Equations4B 
Differential Equations4B 
Mathematics of Information Security4B 
Introduction to Abstract Algebra4B 
Linear Algebra I4B 
Introduction to Number Theory4B 
Advanced Calculus I4B 
Advanced Calculus II4B 
Introduction to Complex Variables4B 
Projects in Applied Mathematics4B 
Introduction to Numerical Analysis I4B 
Introduction to Numerical Analysis II4B 
Information and Coding Theory4B 
Linear Algebra II4B 
Euclidean and Non-Euclidean Geometry4B 
Introduction to Topology4B 
Introduction to Differential Geometry4B 
Mechatronics and Measurement Systems4B 
Introduction to Geographic Information Systems4B 
GIS Applications in Natural Resource Management4B 
Applications of Global Positioning Systems4B 
Introduction to Modern Physics4B 
Modern Physics Laboratory4B 
Electricity and Magnetism4B 
Optics and Waves4B 
Physical Thermodynamics4B 
Introductory Quantum Mechanics I4B 
Philosophical Issues in the Professions: Information Science4B 
Formal Logic4B 
Logic and Scientific Method4B 
Human-Computer Interaction4B 
Cognitive Psychology4B 
Sensation and Perception4B 
Sampling Techniques4B 
Multiple Regression Analysis4B 
Design of Experiments4B 
Data Analysis Tools4B 
Probability and Mathematical Statistics I4B 
Probability and Mathematical Statistics II4B 
Applied Multivariate Analysis4B 
Group 1-B:  
Select three courses (not previously taken) from Group 1-A above and/or from the following for a minimum of 12 credits: 12
Introduction to Analysis of Algorithms4C 
Introduction to Bioinformatics Algorithms4C 
Database Systems4C 
Introduction to Compiler Construction4C 
Computer Networks and the Internet4C 
Computer Architecture4C 
Electives2 6-9
 Total Credits 31
 Program Total Credits: 120

Select three courses from the CS Department Group II list for a total of 6-9 credits (6 credits if MATH 369 is taken to meet the linear algebra requirement in the Sophomore year). 


Select enough elective credits to bring the program total to a minimum of 120 credits, of which at least 42 must be upper-division (300- to 400-level).

Distinctive Requirements for Degree Program:

To prepare for first semester: The curriculum for the Computer Science major assumes students enter college prepared to take calculus. Entering students who are not prepared to take calculus will need to fulfill pre-calculus requirements in the first semester. Those pre-calculus requirements are listed as benchmark courses in Freshman Semester 1 below. All students must maintain a C or better in CO 150 and in all CS, MATH, STAT and departmental Group II courses which are required for graduation.

Semester 1CriticalRecommendedAUCCCredits
MATH 160Calculus for Physical Scientists I (GT-MA1) X1B4
Select one course from the following:   4
Java (CS1) No Prior Programming X  
Java (CS1) Prior Programming X  
Department Approved Science (See list on Concentration Requirements Tab)  3A3
Electives   5
MATH 124 and MATH 126 may be necessary for some students to fulfill pre-calculus requirements.X   
 Total Credits   16
Semester 2CriticalRecommendedAUCCCredits
CO 150College Composition (GT-CO2)X 1A3
MATH 161Calculus for Physical Scientists II (GT-MA1) X1B4
Department Approved Science with Lab (See list on Concentration Requirements Tab)  3A4
CS 165Java (CS2) Data Structures and Algorithms X 4
CO 150 must be completed by the end of Semester 2 with a grade of C or better.X   
CS 163 or CS 164 and MATH 160 must be completed by the end of Semester 2.X   
 Total Credits   15
Semester 3CriticalRecommendedAUCCCredits
CS 220Discrete Structures and their Applications X 4
CS 270Computer Organization X 4
Arts and Humanities  3B3
Social and Behavioral Sciences  3C3
 Total Credits   14
Semester 4CriticalRecommendedAUCCCredits
CS 253Software Development with C++ X 4
Select one course from the following:   2-3
Matrices and Linear EquationsX   
Linear Algebra IX   
Select one course from the following:   3
Introduction to Statistical MethodsX   
Statistics for Engineers and ScientistsX   
Historical Perspectives  3D3
Electives   2-3
CS 165 and CS 220 and CS 270 must be completed by the end of Semester 4.X   
MATH 161 and MATH 229 or MATH 369 must be completed by the end of Semester 4.X   
 Total Credits   15
Semester 5CriticalRecommendedAUCCCredits
CS 314Software Engineering X 3
CS 320Algorithms--Theory and Practice X 3
CS 370Operating Systems X 3
Advanced Writing  23
Arts and Humanities  3B3
CS 253 must be completed by the end of Semester 5.X   
 Total Credits   15
Semester 6CriticalRecommendedAUCCCredits
CS 356Systems Security   3
Department Approved Science (See list on Concentration Requirements Tab)   5
Global and Cultural Awareness  3E3
Electives   3
CS 314 and CS 320 and CS 370 must be completed by the end of Semester 6.X   
 Total Credits   14
Semester 7CriticalRecommendedAUCCCredits
AUCC 4A/C 400-Level CS course (See Group I-A List on Concentration Requirements tab)  4A,4C4
AUCC 4B Technical Electives (See Group II List on Concentration Requirements tab)  4B3
AUCC 4C 400-Level CS course (See Group I-A/B List on Concentration Requirements tab)  4C4
Electives   3
CS 356 and at least one 400-level CS class must be completed by the end of Semester 7.X   
 Total Credits   14
Semester 8CriticalRecommendedAUCCCredits
AUCC 4B Technical Electives (Group II List)X 4B3-6
AUCC 4C 400-Level CS course (Group I-A/B List)X 4C8
ElectivesX  3-6
The benchmark courses for the 8th semester are the remaining courses in the entire program of study.X   
 Total Credits   17
 Program Total Credits:   120