California State University, Fullerton College of Engineering and Computer Science

 Required Courses for CS Majors

You are probably on the edge of your seat now, asking "What classes do I get to take?!" If you are seeking a Bachelors degree in Computer Science, this is the section to read! (If you are seeking a minor in Computer Science, skip a few pages to the section entitled Required Courses for Minor.)
Your course work is divided into the following four categories:

bullet Computer Science Core
bullet General Education
bullet Writing Requirements
bullet Technical Electives [Track Electives]

NOTE: If your catalog year is prior to 1995/96, you should obtain the appropriate handbook supplement and ignore this section!

The front cover shows, in prerequisite order, the core courses required for a Bachelors degree in Computer Science. You can also find a very useful Progress Check Sheet at the end of this handbook. This check sheet lists all of the classes required for the major and can be used to track your progress.

Courses taken toward your major, including any applied general education courses, must be taken on a traditional letter grade basis. Exceptions are for course that are only offered on a credit/no credit basis or courses that you passed by a challenge examination. Additionally, you must earn a grade "C" or better in all classes that are either applied toward your major or that are prerequisites for a Computer Science course.

Transfer students from local community colleges should refer to the Community College Equivalence Tables toward the end of this handbook. Your advisor can help you determine these equivalencies; as well as give the required approval. Please refer back to the section on Undergraduate Transfer Student Advising.

Transfer courses are not officially accepted for use toward the major or as prerequisites until transcripts are received by the Department. Unofficial transcripts are acceptable for the Department, but official school transcripts are required by CSUF for graduation evaluation. (See Nearing Graduation above.)

layout image

 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.

Prior to any core courses, you must take CPSC 103 and CPSC 121, or have received an exemption. Please refer back to the section on Placement Examinations for additional information.

Lower Division Core (16 units)
Course Description Units
CPSC 131 Data Structures Concepts 3
CPSC 223V C++ Programming 3
CPSC 231 File System Concepts 3
CPSC 240 Computer System Architecture I 3
CPSC 241 Low-Level Language Systems 3
CPSC 253U Workshop in Unix 1
Upper Division Core (21 units)
Course Description Units
CPSC 321 High-Level Language Concepts 3
CPSC 331 Data Structures and Algorithm Analysis 3
CPSC 351 Operating System Concepts 3
CPSC 375 Problem Solving Strategies 3
CPSC 423 Language Processor Techniques 3
CPSC 440 Computer System Architecture II 3
CPSC 461 Software Engineering Techniques 3

 

>> back to top

layout image

 General Education

Your education at CSUF cannot be confined to the Computer Science building. In order to earn any bachelors degree, you must venture forth to the rest of the campus and achieve a General Education. A minimum of 51 semester units of general education courses must be selected from an approved list and taken for a letter grade. For transfer students, at least nine units of general education must be earned in residence at CSUF. Additionally, at least nine units of General Education courses must be taken at the upper division level (courses in the 300's and 400's) after you have reached junior standing. Junior standing is achieved upon having completed 60 units total.

There are many options available in fulfilling the University General Education requirements. The CSUF Catalog has a chapter specifically about general education. Academic Advising, room UH-179, has advisors who can help you concerning specific problems that you may have in understanding and meeting the requirements.

Mathematics
You are required to take the following mathematics classes:
Course Description Units
MATH 150A,B Analytic Geometry and Calculus 4,4
MATH 270A,B Mathematical Structures 3,3
MATH 338 Statistics Applied to Natural Sciences 3

NOTE: You must demonstrate qualifications before you may enroll in Mathematics 150A. Please refer to the prior section about the Mathematics Qualifying Examination (MQE) for additional information.

Science
You must take one of the following two biology courses:
Course Description Units
BIOL 101 Elements of Biology 3
  OR  
BIOL 131 Principles of Biology 3
One series of the following three physical sciences:
PHYS 225, 225L Fundamental Physics: Mechanics 3, 1
PHYS 226, 226L Fundamental Physics: Electricity and Magnetism 3,1
  OR  
CHEM 120A General Chemistry 5
CHEM 125 General Chemistry for Engineers 3
  OR  
GEOL 101, 101L Physical Geology 3,1
GEOL 201 Earth History 4

 

layout image

General Education Plan B Framework

Plan B is a general education study plan framework that is used by most students. Detailed information is available in the CSUF Catalog chapter on General Education, and in the current Class Schedule. Following is a recommended set of courses, under Plan B, which complement your computer science studies. It includes the aforementioned required mathematics and science courses. If you are not following Plan B, please disregard this framework.

Recommended General Education Courses (Plan B)
For Computer Science Majors
(Complies with requirements of Catalog 1987/88 - present)

Basic Subjects
ORAL COMMUNICATION
Course Description Units
Speech 102 3
WRITTEN COMMUNICATIONS
English 101 * 3
CRITICAL THINKING
Speech 235 or Philosophy 200 3,3

Historical and Cultural Foundations
THE DEVELOPMENT OF CIVILIZATION
History 110A, 110B 3,3
AMERIAN HISTORY, INSTITUTIONS AND VALUES
1. American History American Studies 201 3
2. Government Political Science 100 3

Disciplinary Core Courses
MATHEMATICS AND NATURAL SCIENCES
1. Physical Science* 8
Physics 225, 225L, 226, and 226L
or
Chemistry 120A and 125
or
Geology 101, 101L and 201
2. Biological Science * 3
Biology 101
or
Biology 131
3. Alternative in Natural Sciences and Mathematics 3
Mathematics 338
4. Mathematics * 4
Math 150A
ARTS AND HUMANITIES
1. Introduction to the Arts 3
Music 101
or
Art 101
2. Introduction to the Humanities 3
Philosophy 310
SOCIAL SCIENCES
1. Introduction to the Social Sciences 3
Economics 100

Implications, Explorations and Lifelong Learning
IMPLICATIONS AND EXPLORATIONS
1. Implications/Explorations/Participation Experience 3
Choose any course in this GE Category
2. Implications and Explorations in the Social Sciences 3
American Studies 301
LIFE-LONG LEARNING
Kinesiology 342 3
 
* These courses are also required for the major.
NOTE: IV.A.2 (American Studies 301) satisfies the cultural diversity course requirement.

 

>> back to top

layout image

  Upper Division Writing Requirement and Examination

Cal State Fullerton requires every bachelor degree candidate to take an upper division writing course and the English Writing Proficiency (EWP) examination. The EWP consists of two parts, a test of Standard Written English, and a written essay. CPSC 311 meets this University course requirement and is to be taken during the same semester as the EWP examination. This is to be completed prior to your senior year and as a prerequisite for CPSC 461.

You may retake the examination until you pass it. A limited number of students who fail two or more times may take English 199 - Intensive Writing Review. This course does not count towards graduation, nor will it satisfy the upper-division writing requirement, but is equivalent to passing the EWP.

 

>> back to top

layout image

 Elective Track Requirements

Computer Science is an extremely broad field, and nobody can learn every aspect of it. As such, you must select an elective track aimed at your specific career goals. There are four tracks to choose from:

bullet Systems Programming
bullet Scientific Computing
bullet Commercial Programming
bullet Information Systems

These standard tracks can fit into most career goals, and all meet the same general requirements. These requirements consist of:

bullet 12 units of upper division technical electives, only three of which may be selected from courses CPSC 490 - 499
bullet 3 units of scientific/quantitative studies.
bullet 9 units of undesignated units, which form a coherent body of knowledge, generally from courses numbered 200 level or higher

Systems Programming Elective Track
The systems programming emphasis will prepare you for a career in the design and maintenance of software written in software houses, computer vendors, and large user organizations.
Technical Electives
Course Description Units
CPSC 361 Software Design Concepts 3
CPSC 431 Database Systems 3
AND any approved upper division (300/400) level CPSC Courses 6
Science/Quantitative Elective
Description Units
Any, advisor approved, course from the Science/Quantitative list at the end of Elective Track Requirements section 3 - 4
Undesignated Electives
All systems Programming track students must take:
Course Description Units
CPSC 223A Ada Programming 3
In addition, you must choose courses from one of the following combinations
Any 200 level Computer Science workshop Course (1 - 3 units)
Any upper Division (300/400) Computer Science Course(s) (3 - 5 units)
6 min
or
Any upper division (300/400) Computer Science Courses 6
or
A two-course sequence outside of Computer Science, such as: 6 min
ACCT 201A,B Financial Accounting 3,3
ART 103, 223A 2D Design, Lettering & Typography 3,3
MATH 250A,B Intermediate Calculus 4,4
PHIL (or MATH) 368, 369 Symbolic Logic 3,3

 

Scientific Computing Elective Track
The scientific computing track will acquaint you with the tools necessary for programming mathematically intensive applications. As a bonus, completing this track automatically qualifies you for a minor in mathematics.
Technical Electives
Course Description Units
MATH 340 Numerical Analysis 3
CPSC 435 Parallel Processing 3
... and either
Any approved upper division (300/400) level CPSC Courses 6
or
MATH 440 Advanced Numerical Analysis 3
And any approved upper division (300/400) level CPSC course 3
** NOTE ** MATH 440 is not offered every semester. Be sure to plan ahead and consult the Mathematics Department for information needed
Science/Quantitative Electives
Course Description Units
MATH 370 Mathematical Model Building 3
Undesignated Electives
Course Description Units
CPSC 223F FORTRAN Programming 1
MATH 250A Intermediate Calculus 4
MATH 250B Introduction to Linear Algebra & Differential Equations 4

 

Commercial Programming Elective Track
The commercial programming track will acquaint you with the tools necessary for programming business oriented applications.
Technical Electives
Course Description Units
CPSC 341 Client / Server Systems 3
CPSC 431 Database Systems 3
And any approved upper division (300/400) level CPSC courses 6
Science/Quantitative Electives
Any, advisor approved course from the Science/Quantitative list at the end of Elective Track Requirements section. 3 - 4
Undesignated Electives
Course Description Units
CPSC 223N C# Programming using Microsoft .NET 3
CPSC 223H Visual BASIC Programming 3
ACCT 201A Financial Accounting 3
** NOTE ** Accounting courses are often very crowded. Be sure to plan ahead and register early.

 

Information Systems Elective Track
The information system track will prepare you for a career in the growing field of information acquisition, management and delivery.
Technical Electives
Course Description Units
CS 431 Database Systems 3
CS 433 Data Security and Encryption Techniques 3
and any advisor approved (300/400) level CPSC courses 6
Science/Quantitative Electives
Any, advisor approved, course from the Science/Quantitative list at the end of Elective Track Requirements section. 3 - 4
Undesignated Electives
Course Description Units
CS 223N C# Programming using Microsoft .NET 3
or
CS 223H Visual Basic Programming 3
In addition, you must pick 6 units from the following list:
(one course must be at the 400 level)
CS 286 Technology Based Graphical Communication 3
CS 303 Multimedia Concepts 3
CS 341 Client/Server Systems 3
CS 457 Computer Communications 3
CS 465 Principle of Computer Graphics 3
CS 477 Cybernetics and Information Theory 3

 

Science/Quantitative Electives
For System, Commercial, and Information Systems
Course Description Units
BIOL 241 Principles of Botany 4
BIOL 261 Principles of Zoology 4
CHEM 315 Theory of quantitative Chemistry 3
EGEE 425 Introduction to Systems Engineering 3
GEOG 385 Quantitative Geography 3
GEOL 120, 120L Introduction to Earth Science / Lab 4
GEOL 322 Principles of Paleontology 3
GEOL 333 General Oceanography 3
GEOL 335 General Hydrology 3
GEOL 376 Applied Geology 3
GEOL 380 Geologic Field Techniques 4
GEOL 470 Environmental Geology & Planning 4
KNES 349 Measurement and evaluation in Physical Education 3
MATH 335 Mathematical Probability 3
MATH 370 Mathematical Model Building 3
MSIS 361B Quantitative Business Analysis 3
PHYS 200 Introduction to Astronomy 4
PHYS 226, 227L Fundamental Physics: Waves, Optics & Modern Physics / Lab 4
PHYS 380 Methods of Experimental Physics 3
POSC 407 Quantitative Methods in Political Science 3
PSYC 202 Research Methods in Psychology 3
SOCI 302 Social Research Methods 3
SPCH 308 Quantitative Research Methods 3
** NOTE ** Many of these courses have prerequisites. It is often possible to choose your General Education Electives in such a way as to meet the prerequisites foro your quantitative elective.

 

>> back to top

layout image