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
CS 110 - Programming Fundamentals I 
CS 111 - Programming Fundamentals IICS 110 and MATH 153
CS 112 - Foundations of Computer Science 
CS 301 - Data StructuresCS 111 and MATH 154
CS 302 - Advanced Data Structures and File ProcessingCS 301 and MATH 172
CS 311 - Computer Architecture ICS 110
CS 312 - Computer Architecture IICS 301 and CS 311
CS 325 - Technical Writing in Computer ScienceENG 102 and CS 301
CS 361 - Principles of Language Design ICS 302 and admission to CS Major
CS 362 - Principles of Language Design IICS 361 and MATH 260 and admission to CS Major
CS 380 - Introduction to Software EngineeringCS 302 and admission to CS Major
CS 392 - Lab Experience in Teaching Computer Science 
CS 420 - Database Management SystemsCS 302, CS 325, and MATH 330 and admission to CS Major
CS 427 - Algorithm AnalysisCS 302, CS 325, and MATH 330 and admission to CS Major
CS 446 - User Interface Design and DevelopmentCS 302 and admission to CS Major
CS 470 - Operating SystemsCS 302 and CS 312 and CS 325 and admission to CS Major
CS 480 - Advanced Software EngineeringCS 325 and CS 380 and admission to CS Major
CS 481 - Software Engineering ProjectCS 325 and CS 480 and admission to CS Major
CS 489 - Senior ColloquiumCS 325 and admission to CS Major
CS 492 - Lab Experience in Teaching Computer Science 
MATH 172 - Calculus IMATH 154 with a grade of C or higher, a score of 19 on the Advanced Math Placement Test, or a score of 46 or higher on the Compass Trigonometry test
MATH 260 - Sets and LogicMATH 173 with a grade of C or higher or MATH 172 and CS 301 with grades of C or higher
MATH 330 - Discrete MathematicsMATH 260 with a grade of C or higher
Prerequisites are subject to change. Check with the academic catalog.

Typical Elective Courses

CS ElectivesPrerequisites
CS 351 - Web Development Technologies IICS 250
CS 367 - Advanced Visual Basic ProgrammingCS 105 and CS 110
CS 370 - Introduction to the UNIX Operating SystemCS 301 and CS 311
CS 430 - Introduction to Computer SecurityCS 312
CS 440 - Computer GraphicsCS 302 and CS 325
CS 441 - Computer Graphics IICS 440
CS 442 - Computer VisionCS 302
CS 445 - Data and Information VisualizationCS 302
CS 450 - Computer Network and Data CommunicationsCS 301, CS 311, and CS 325
CS 455 - Artificial IntelligenceCS 302, CS 325, CS 362, and MATH 330
CS 456 - Data MiningCS 420 and either  MATH 311 or BUS 221
CS 457 - Computational IntelligenceCS 302, CS 325, CS 362 and MATH 330
CS 460 - Software Engineering for Mobile DevicesCS 301
CS 471 - OptimizationCS 302 and CS 325 and MATH 330
CS 473 -  Parallel ComputingCS 325 and CS 470
CS 475 - Distributed SystemsCS 302
CS 476 - Social InformaticsCS 301
CS 490 - Cooperative Education (Internship) 
CS 495 - Directed Research 
CS 496 - Individual Study 
CS 530 - High-performance ComputingCS 528


Core Curriculum Diagram



^ Back To Top ^


Take the Next Step to Becoming a Wildcat.