computer science banner
| Home | Contact | ECS Home | CSUF Home | Admissions
Skip Navigation Links. Skip Navigation LinksCS Home>Programs/Courses>BS in Computer Science

Bachelor of Science in Computer Science background Programs
The B.S. degree in Computer Science is accredited by the Computing Accreditation of ABET, 111 Market Place, Suite 1050, Baltimore, MD 21202-4012 – telephone: (410) 347-7700. The B.S. degree in Computer Science requires 124 units of course work in the following categories:
Computer Science Core
The core courses cover topic areas of both theoretical and practical interest to all Computer Science majors. These courses are divided into the lower division core and the upper division core.
Lower Division Core
Upper Division Core
  • CPSC 311 (Technical Writing for Computer Science)
  • CPSC 315 (Social and Ethical Issues in Computing)
  • CPSC 323 (Programming Languages and Translation)
  • CPSC 332 (File Structures and Database Systems)
  • CPSC 335 (Problem Solving Strategies)
  • CPSC 351 (Operating Systems Concepts)
  • CPSC 362 (Foundations of Software Engineering)
  • CPSC 440 (Computer System Architecture)
  • CPSC 471 (Computer Communications)
  • CPSC 481 (Artificial Intelligence)
Basic Programming Course Exemption
Computer Science 120 (Introduction to Programming) can be waived if you have already taken an equivalent course or passed the Computer Science Placement Exam. If this course is waived, you will need to take an elective course to meet the 124 unit degree requirements.

Object-Oriented Programming Language
You must take 3 units of a modern object-oriented programming language course other than C++. Computer Science 223J (Java Programming), 223H (Visual Basic Programming), or 223N (C# Programming) meets this requirement.

UNIX or Open Source Systems
You must take at least 1 unit of UNIX or Open Source Systems. If you take CPSC 253U (UNIX Workshop), you must take 2 additional units of elective courses.

Examination in Programming Proficiency (EPP)
You must pass the Examination in Programming Proficiency (EPP) before taking most of the 300-level and 400-level Computer Science courses except for CPSC 440 (Computer System Architecture). This examination determines whether you have the basic programming skills needed to succeed in upper division courses. It focuses on the concepts and skills covered in CPSC 121 and CPSC 131.

The EPP is given as part of CPSC 301 (Programming Lab Practicum). You must register in CPSC 301 and attend the first two weeks of the course.

Upper Division Writing Requirement
The University requires every bachelor degree candidate to take an upper division writing course and the English Writing Proficiency (EWP) examination. The EWP has two parts: a test of Standard Written English and a written essay. CPSC 311 (Technical Writing for Computer Science) meets the writing course requirement.

You cannot take the EWP until you reach upper division standing and you should take it before your senior year. You may retake the examination until you pass it. If you fail two or more times, you may take English 199 (Intensive Writing Review) to satisfy this requirement. This course does not count towards graduation and it does not satisfy the writing course requirement, but passing it is equivalent to the EWP.

Elective Track Requirements
Computer Science is a very broad field and the technologies in each area change rapidly. Elective tracks provide you with flexible choices of elective courses so you can quickly adapt to rapid technology advancements and meet the professional goals.

You must select an elective track aimed at your specific career goals. There are five tracks to choose from:
More information about the program can be found in the Undergraduate Handbook.
This site is maintained by Department of Computer Science, California State University, Fullerton. Report any problem related to this website to: webmaster@ecs.fullerton.edu
This site may contain links to Web sites not administered by the Department of Computer Science, California State University, Fullerton. The Department of Computer Science, California State University, Fullerton, is not responsible or liable for the accuracy or the content of linked pages.