Computer Engineering and Computer Science
Undergraduate Programs
Bachelor of Science in Computer Science (122 units)
This degree is designed to prepare graduates for a variety of professional careers in the computer field. The curriculum is designed to provide a balance between the theoretical and practical aspects of computer science. Extensive laboratory time is required for these courses, and design and analysis experiences are emphasized.
Program Educational Objectives
Our students following graduation will be able
- to enter California's high technology workforce, and make significant contributions through the research, design and development of software and networked computer systems.
- to help further the state's economic growth by developing innovative ideas, and translating them into commercial products that benefit society.
- to function effectively as a team member and/or leader in multidisciplinary and multicultural environments.
- to recognize the societal and global context of their work and to understand professional and ethical responsibilities.
- to pursue lifelong learning through such activities as graduate school, distance education, professional training and membership in professional societies and to be able to adapt to new engineering tools.
Major Declaration
Freshmen admission to engineering majors is to a 'pre-major' status (i.e., Pre-Computer Science). Continuation in the major will be subject to meeting specific lower division course and GPA requirements at CSULB that indicate the student's ability to succeed and complete the major. Transfer applicants and CSULB students seeking admission into Computer Science must also meet similar major specific requirements. To become fully admitted into the Computer Science major, all prospective students (i.e., pre-majors, undeclared, major changes) must have a minimum cumulative 2.5 GPA and complete the following lower-division courses with a minimum grade of "C" prior to earning 60 units:
Core Lower-Division Major Requirements:
- MATH 122 (Calculus I), MATH 123 (Calculus II), PHYS 151 (Mechanics & Heat)
General Education Foundations Courses:
- Written Communication, Oral Communication, and Critical Thinking
Degree Progress
Students must complete the following requirements within one calendar year of declaring the major. Some students may need to take courses during Summer Session to meet these requirements. At the end of the year, students who have not met the requirements must either declare another major or meet with an Academic Advisor to determine if the student's performance in the courses merits an additional semester to complete.
- First-Time Freshmen: A grade of "C" or better must be achieved in MATH 122 within one calendar year.
- Transfer Students: A grade of "C" or better must be achieved in MATH 123 and PHYS 151 within one calendar year.
Requirements
Lower Division:
Take all of the following courses:
- CECS 100 Critical Thinking in the Digital Information Age (3)
Prerequisite/Corequisite: ENGL 100 or GE Composition (Area A1).
- CECS 105 Introduction to Computer Engineering and Computer Science (1)
Prerequisites: None.
- CECS 174 Introduction to Programming and Problem Solving (3)
Prerequisite: CECS 100 and MATH 113 (or equivalent) all with a grade of "C" or better.
- CECS 201 Computer Logic Design I (3)
Prerequisite: MATH 113 or equivalent all with a grade of "C" or better.
- CECS 228 Discrete Structures With Computing Applications I (3)
Prerequisites: CECS 174 and MATH 113 or equivalent all with a grade of "C" or better.
- CECS 274 Object Oriented Programming and Data Structures (3)
Prerequisite: CECS 174 with a grade of "C" or better.
- CECS 277 Object Oriented Application Development (3)
Prerequisite: CECS 274 with a grade of "C" or better.
- CECS 282 C++ for Java Programmers (3)
Prerequisite: CECS 274 with a grade of "C" or better.
- CECS 285 Computer Organization and Assembly Language Programming (3)
Prerequisites: CECS 201, 274 all with a grade of "C" or better.
- ENGR 101 Intro to the Engineering Profession (1)
Prerequisite/Corequisite: MATH 111 or MATH 113 or MATH 122.
- ENGR 102 Academic Success Skills (1)
Prerequisite: ENGR 101 with a grade of "C" or better.
- MATH 122 Calculus I (4)
Prerequisite: Appropriate MDPT placement or a grade of "C" or better in MATH 111 and 113, or a grade of "C" or better in MATH 117.
- MATH 123 Calculus II (4)
Prerequisite: A grade of "C" or better in MATH 122.
Three units of math elective taken from the following:
- MATH 224 Calculus III (4)
Prerequisite: A grade of "C" or better in MATH 123 or 222.
- MATH 233 Fundamental Concepts for Adv. Math (3)
Prerequisite: A grade of "C" or better in MATH 123 or 222.
- MATH 247 Introduction to Linear Algebra (3)
Prerequisite: MATH 123 or 222.
Take a minimum of 12 units of approved science-electives to include a two-semester science sequence chosen from the following groups of courses:
- PHYS 151 Mechanics and Heat (4)
Prerequisite/Corequisite: MATH 122.
- PHYS 152 Electricity and Magnetism (4)
Prerequisite: PHYS 151; Prerequisite/Corequisite: MATH 123.
or
- PHYS 151 Mechanics and Heat (4)
Prerequisite/Corequisite: MATH 122.
- EE 210 Electro-Magnetic Foundations in EE (3)
Prerequisite: PHYS 151 with a grade of "C" or better.
Corequisites: MATH 123, EE 210L.
- EE 210L Electro-Magnetic Foundations in EE Lab (1)
Corequisite: EE 210.
or
- CHEM 111A General Chemistry (5)
Prerequisites: A passing score on the Chemistry Placement Examination and a "C" or better in MATH 113 or 117 or 119A or 122. One year of high school chemistry is strongly recommended.
- CHEM 111B General Chemistry (5)
Prerequisite: CHEM 111A with a grade of "C" or better.
Remaining units to be chosen from the following:
Upper Division:
Take all of the following courses:
- CECS 323 Database Fundamentals (3)
Prerequisites: CECS 228, 277 all with a grade of "C" or better.
- CECS 326 Operating Systems (3)
Prerequisites: CECS 282 and either 285 or 346 all with a grade of "C" or better.
- CECS 327 Net-Centric Computing (3)
Prerequisite: CECS 326 with a grade of "C" or better.
- CECS 328 Data Structures and Algorithms (3)
Prerequisite: CECS 228 with a grade of "C" or better;
Corequisite: CECS 277.
- CECS 341 Computer Architecture and Organization (3)
Prerequisites: CECS 285 with a grade of "C" or better.
- CECS 343 Introduction to Software Engineering (3)
Prerequisites: CECS 277 or 282 all with a grade of "C" or better.
- EE 380 Probability, Statistics and Stochastic
Modeling (3)
Prerequisites: MATH 123; (CECS 100 or equivalent) all with a grade of "C" or better.
- ENGR 350 Computers, Ethics and Society (3)
Prerequisites: 3 units from GE Category A.1 (Writing) and 3 units from GE Category D (Social and Behavioral Science).
Take one course from the following:
- CEM 310 Communications in Engineering
Profession (3)
Prerequisites: ENGL 100, COMM 110 all with a grade of "C" or better and Senior standing.
- ENGL 317 Technical Writing (3)
Prerequisites: GE Foundation requirements, upper-division standing, and a previous composition course, i.e., ENGL 100, 101, 102, 300, or equivalents.
Take three units of study in formal languages and computation to be chosen from the following courses:
Take 9 units of approved electives chosen from:
Take three units of core electives chosen from the following:
- CECS 419, 424, 428, 429, 444, 445, 448, 449, 451, 474, 478, MATH 323
Take three units of applied electives to be chosen from the following:
- CECS 455, 470, 472, 475, 476
Take three units from a capstone course to be chosen from the following:
A grade of "C" or better is required in the following courses:
BIOL 153, 200, 205, 207; CEM 310; CHEM 111A, 111B; CECS 100, 105, 174, 201, 228, 274, 277, 282, 285, 323, 326, 327, 328, 341, 343, 423, 490A, 491, 492; EE 210 and 210L, 380; ENGL 317; ENGR 101, 102, 350; MATH 122, 123, 222, 224, 233, 247, 380; PHYS 151, 152.