Skip to body

Computer Science

Computer Science -- Major

In order to expose computer science majors to a broad theoretical base while emphasizing the laboratory experience, students will complete the CS core courses. To add depth and flexibility to their academic programs, with major advisor, students will work out a focus area and choose the elective courses approved by the department.  A specific focus may be developed in many areas of computer science; examples include: software engineering, intelligent systems, computational science, graphics, visualization and computer vision, human-computer interaction, big data analytics, and computer security.
General university requirements ENG 101 and ENG 102.

Standards for Admission
Admission to the computer science major or minor is selective. The minimum grade for each pre-admission required course listed below is B-. Students should submit their application during the quarter in which they are completing the pre-admission requirements. Applications will be accepted through the last day of classes (i.e., the week before finals) of the fall, winter, and spring quarters for admission the following quarter. A completed application must include the standard major application form and an advisor-approved graduation plan.

Students should request admission to the computer science pre-major prior to completion of the pre-admission requirements.

Students must be accepted as a computer science major or minor prior to enrolling in computer science classes beyond CS 301 with the exception of CS 311. Students applying for admission to the major may register for courses for the following quarter but will be dropped if not admitted.

Click here to schedule academic advising, for the Computer Science Major.

Pre-Admission Requirements

General University RequirementsCredits
ENG 101, Composition I: Critical Reading and Responding4
ENG 102, Composition II: Reasoning and Research4
Major Requirements 
CS 110, Fundamentals of Computer Science I4
CS 111, Fundamentals of Computer Science II4
CS 301, Data Structures4
MATH 172, Calculus I4
Pre-admission Total25


The information below can be used to see the prerequisites for the core courses in the Computer Science major. It is subject to change and cannot replace the academic planning available through an advisor in the Computer Science Department.

For a complete list of Computer Science courses, click here.

Course Prerequisites

CS CoursesPrerequisites
CS110 - Programming Fundamentals I 
CS111 - Programming Fundamentals IICS110, MATH153
CS112 - Foundations of Computer Science 
CS301 - Data StructuresCS111, ​MATH154
CS302 - Advanced Data Structures and File ProcessingCS301, MATH172
CS311 - Computer Architecture ICS110
CS312 - Computer Architecture IICS301, CS311
CS325 - Technical Writing in Computer ScienceENG102, ​CS301
CS361 - Principles of Language Design ICS302
CS362 - Principles of Language Design IICS361, MATH260
CS380 - Introduction to Software EngineeringCS302
CS420 - Database Management SystemsCS302, CS325, MATH330
CS427 - Algorithm AnalysisCS302, CS325, MATH330
CS446 - User Interface Design and DevelopmentCS302
CS470 - Operating SystemsCS302, CS312, CS325
CS480 - Advanced Software EngineeringCS325, CS380, CS420 or CS446
CS481 - Software Engineering ProjectCS325, CS480
CS489 - Senior ColloquiumCS325
MATH153 - Pre-Calculus IMATH100C or at least 66+ on the Compass Algebra Test
MATH154 - Pre-Calculus IIMATH153 or at least 46+ on the Compass College Algebra Test
MATH172 - Calculus IMATH154 or at least 46+ on the Compass Trigonometry Test
MATH260 - Sets and LogicMATH173, or MATH172 and CS301
MATH330 - Discrete MathematicsMATH260
Prerequisites are subject to change. Check with the academic catalog.

Typical Elective Courses

CS ElectivesPrerequisites
CS255 (currently 298) - Introduction to ModelingCS111
CS351 - Web Development Technologies IICS250
CS367 - Advanced Visual Basic ProgrammingCS105
CS370 - Introduction to the UNIX Operating SystemTBD
CS375 - Ethical Hacking for CybersecurityCS301
CS440 - Computer GraphicsCS302
CS441 - Computer Graphics IICS440
CS442 - Computer VisionCS302
CS450 - Computer Network and Data CommunicationsCS301
CS455 - Artificial IntelligenceCS302
CS460 - SE for Mobile DevicesCS301
CS473 -  Parallel ComputingCS361, CS427
CS490 - Cooperative Education ( internship)Case-by-case
CS495 - Undergraduate ResearchCase-by-case
CS496 - Individual StudyCase-by-case
CS456 - Data MiningCS420 & (MATH311 || BUS221)
CS457 - Computational IntelligenceCS302, CS362, MATH330
CS445 - Data VisualizationCS440
CS430 - Introduction to Computer Security 
CS475 - Distributed Systems 
CS476 - Social InformaticsCS302
CS530 - High-performance ComputingCS528, CS312 with B or better


Core Curriculum Diagram



^ Back To Top ^


Take the Next Step to Becoming a Wildcat.