Computer Science Department

BS - Computer Science

This degree provides a solid background for a variety of careers in the computing profession. Entry level positions include jobs in programming, systems analysis, software engineering and customer support. Such positions are required by nearly every institution whether it is public or private. The Computer Science Program is accredited by the Computing Accreditation Commission of the Accreditation Board for Engineering and Technology (ABET), 111 Market Place, Suite 1050, Baltimore, MD, 21202-4012, 410.347.7700. The program not only prepares students for graduate work in computer science, but also for advanced work in the related fields of management science and operations research.

University Graduation Requirements

Students must complete all residency, curriculum, unit, and GPA requirements as outlined in the Graduation Requirements section of the Policies and Procedures.

4-Year Program Roadmap

Students may find a roadmap for this program here. Roadmaps should be used in consultation with the catalog and your advisor to identify additional requirements for completing the major (for example, course grade minimums). Associate Transfer Degrees (ADT) pathway roadmaps can be found here.

Major Exceptions

This degree program meets certain University Requirements through approved major modifications. Please see the Major Exceptions area in the Policy and Procedures section of this catalog to identify the specific adjustments for this degree program or contact your major advisor for more details.

Major-Specific Graduation Requirements

A grade of "C-" or better is required for courses being used to meet any requirement in any minor or major offered by the Department of Computer Science, including Preparation courses.

The Preparation for the Major and Requirements in the Major sections must include at least 37 units of upper division mathematics and computer science course work, excluding CS 100W.

Course Requirements

University Graduation Requirements44
Core Lower Division General Education21
Of the 39 units required by the university, 18 units may be satisfied by coursework outlined below. Courses that meet GE Areas A1, A2, A3 or B4 must be passed with a "C-" or better to meet the requirement. Consult with major advisor for details.
Note: Students who have completed the ADT Transfer Degree (under SB 1440) for this major will have completed all Lower Division GE Requirements and should follow the 60 unit guarantee roadmap. Meet with an advisor prior to registering for your first semester for the 60 unit roadmap or specific questions.
Upper Division General Education6
Of the 9 units required by the university, 3 units may be satisfied by coursework outlined below. Consult with major advisor for details.
American Institutions12
The 6 units of American Institutions (US123) coursework shown below also fulfills GE Areas D2 and D3. Other courses meet the American Institutions requirement, but may not include additional GE areas. The American Studies (AMS 1A/B) and Humanities Honors (HUM 1A/B, 2A/B) programs both offer larger integrated packages that meet this requirement. Consult with major advisor for details.
AMS 001A. American Cultures to 1877C1+D26
AMS 001B. American Cultures 1877 to presentC2+D3+US1236
Physical Education2
Graduation Writing Assessment Requirement3
At SJSU, students must pass both the SJSU Writing Skills Test (WST) and a 100W course. For additional information on the WST, please see Exceptions to the GWAR may be found at
A grade of C or better (C- not accepted) is required to meet graduation requirement.
CS 100W. Technical Writing WorkshopZ3
Preparation for the Major24
MATH 030. Calculus IB43
MATH 030P (5-units) may be used in place of MATH 030.
MATH 031. Calculus IIB44
MATH 042. Discrete Mathematics3
MATH 129A. Linear Algebra I3
PHIL 134. Computers, Ethics and SocietyV3
Approved Science Electives5
Approved science electives include BIOL 30, BIOL 31, CHEM 1A, GEOL 1, GEOL 4L, GEOL 7, METR 10, PHYS 50 and PHYS 51. Nine additional units of GE courses covering GE areas B1, B2, B3 and R are required. For additional information, please see:
Complete one course from:
MATH 032. Calculus IIIB43
MATH 142. Introduction to Combinatorics3
MATH 161A. Applied Probability and Statistics I3
Requirements of the Major52
Lower Division11
CS 046A. Introduction to Programming4
CS 046B. Introduction to Data Structures4
CS 047. Introduction to Computer Systems3
Upper Division24
CS 146. Data Structures and Algorithms3
CS 147. Computer Architecture3
CS 149. Operating Systems3
CS 151. Object-Oriented Design3
CS 152. Programming Paradigms3
CS 154. Formal Languages and Computability3
CS 160. Software Engineering3
Complete one course from:
CS 116B. Computer Graphics Algorithms3
CS 123B. Bioinformatics II3
CS 153. Concepts of Compiler Design3
CS 157B. Database Management Systems II3
CS 157C. NoSQL Database Systems3
CS 158B. Computer Network Management3
CS 161. Software Project3
Elective Computer Science Courses Not Counted Above17
At least two courses should be chosen from the following list of electives: CS 116A, CS 116B, CS 122, CS 123A, CS 123B, CS 134, CS 144, CS 153, CS 155, CS 156, CS 157A, CS 157B, CS 157C, CS 158A, CS 158B, CS 159, CS 161, CS 166, CS 174, CS 175. CS 190I or at most 3 units of CS 190 may be used. Additionally, at most 3 units of CS 085 and CS 185 may be used. CS 180, CS 180H, and MATH 203 may be used with prior approval.
Qualifying courses include all upper division CS courses except CS 100W and courses counted above.
Qualifying lower division CS courses include:
CS 085C. Practical Computing Topics3
CS 085C requires prior department approval. CS 49C and CS 49J can be used with department approval.
Qualifying Math courses include:
MATH 142. Introduction to Combinatorics3
MATH 161A. Applied Probability and Statistics I3
MATH 162. Statistics for Bioinformatics3
MATH 177. Linear and Non-Linear Optimization3
MATH 178. Mathematical Modeling3
MATH 179. Introduction to Graph Theory3
MATH 203. Applied Mathematics, Computation, and Statistics Projects3

Total Units:120