Frequently Asked Questions
What are the differences between the BS in Computer Science, BS in Computer Engineering, and BS in Software Engineering programs?
Conventionally, Computer Engineering focuses on hardware and systems software (compilers and operating systems), Computer Science focuses on programming and theory (formal languages, programming paradigms, etc.), and Software Engineering focuses on programming and methodology (analysis, design, testing, maintenance, cost estimation, project management, etc.).
All three programs overlap. For example, all three programs cover programming, methodology, hardware, and systems software, but in different amounts.
Readers can get a quick overview of the three programs at SJSU from the following lists:
The BSCS program requires:
- 36 units of support courses (math, physics, 100W, ethics)
- 38 units of core courses (mostly programming with some theory and hardware)
- 9 units of electives
The BSCmpE program requires:
- 38 units of support courses (math, physics, 100W, chemistry)
- 12 units of engineering courses (general, mechanical, electical)
- 36 units of core courses (mostly hardware and systems programming)
- 9 units of electives
The BSSE Program requires:
- 36 units of support courses (math, physics, 100W, human-computer interface)
- 57 units of core courses (software engineering, programming, some hardware)
- 6 units of electives
Notes:
- It should be added that the BSSE program is relatively new and therefore somewhat unstable.
- The BSSE program is jointly administered by the CS and CmpE departments.
Are the BSSE and MSSE programs related?
The two programs are related in terms of content-- i.e., Software Engineering-- but not administration. Readers interested in the MSSE program should consult the MSSE web site.