CS Home Page: FAQ

Frequently Asked Questions About the BSCS

(Last updated October 2014)


Questions relevant to new students:

  1. I'm entering as a freshman. What do I do?
  2. Does the department participate in the Four-Year Graduation Pledge Program?
  3. What is Science 2? What is Science 90T?
  4. Does the first computer science course (CS 46A) assume any background in computing?

    Questions relevant to transfer students and potential transfer students (including second baccalaureate students):

  5. What is the STAR Act? What is SB 1440? What is C-ID?
  6. I'm considering entering as a transfer student (or a second baccalaureate student). What do I do?
  7. I'm entering as a transfer student. What do I do?
  8. Can I get credit toward the BSCS degree based on Advanced Placement (AP) exams?
  9. Can lower-division courses I have taken at other institutions count toward the BSCS degree?
  10. Can I use courses taken elsewhere to satisfy upper division BSCS requirements at SJSU?

    Questions about entering the CS major or minor:

  11. How can I change my major to computer science?
  12. How do I go about getting a minor in computer science? Do I need to declare a computer science minor in advance?
  13. What is disqualification from the university? How does it differ from disqualification from the major? Can I get back into the major after I have been disqualified? What is academic probation?

    Questions about particular courses or groups of courses:

  14. Are there any General Education requirements that are satisfied automatically by the major?
  15. What is Phil 134? How does it differ from Phil 110?
  16. What is SJSU Studies? What is Advanced General Education?
  17. What are the physics requirements for the BSCS?
  18. I don't understand the BSCS science requirements.
  19. What is the difference between the calculus courses Math 30 and Math 30P? What are Math 19, Math 19W, Math 30W, Math 31W, and Math 32W?
  20. How do I know whether I have satisfied the language prerequisite for CS 46B (or 49J or 146 or 151)?
  21. Does the department offer short courses on current computing topics? Is that what CS 85 and CS 185 are?
  22. What is a "deep" course? If I chose a "B" course for the deep course but have changed my mind, how can I complete my graduation requirements? What if I already took the corresponding "A" course?

    Questions about courses in general:

  23. Can I make substitutions for courses in the BSCS program?
  24. Can I take a course without having taken the prerequisite courses?
  25. When and how can I drop classes? When and how can I add classes? grade? If so, how does it work?
  26. Is there a way of retaking a course to improve my grade? If so, how does it work?
  27. Can I use a graduate course to satisfy a BSCS requirement? Can a graduate course be used to satisfy the "deep course" requirement for CS 116B or 123B or 153 or 157B or 158B or 161 or 167B or 167C?
  28. I think I already know the material in a particular course. Can I get credit by examination?
  29. Can I use courses taken in the College of Engineering to satisfy BSCS requirements?
  30. Does the department offer credit for extension courses taken elsewhere? For work experience?

    Questions about certificates, programs, and resources:

  31. How can I get a Unix System Administration certificate?
  32. What CS offerings are avaialble in software engineering?
  33. Are there internship or co-op programs for BSCS students?
  34. What is the wireless laptop project at SJSU? Do I need to buy a laptop?
  35. Are there jobs available through the CS department?
  36. Is there any software that is available at special rates to CS students?

    Questions about rules and requirements:

  37. What is an advising hold? What is a probation hold? Why do I have one? How can I get it removed?
  38. Haven't the BSCS requirements changed recently? Which requirements should I use? How can I find the most up-to-date statement of the requirements?
  39. May I count a newly created elective or deep course toward the BSCS? Must I follow a newly imposed prerequisite?
  40. Who should I see if I am having trouble with department or university rules and regulations? Who should I see for other types of assistance?

    Questions about graduation:

  41. What is a graduating senior? What is a graduation worksheet? What is a graduation checklist? Why are these important?
  42. When should I apply for graduation?
  43. I'm trying to fill out my major form. What do I do on the form about courses I still need to take?
  44. I've already turned in my major (or minor) form, but I will not be taking one or more of the courses listed on the form. What do I need to do?
  45. What are the requirements for graduation with honors?
  46. Is it difficult for CS majors to get a minor in another field?
  47. Who should I see if I am having trouble with graduation?


  1. Q: I'm entering as a freshman. What do I do?

    1. Make sure to attend frosh orientation, as described in the material sent to you by the university upon your acceptance.

    2. Strongly consider enrolling for Science 2 in your first semester.

    3. At the beginning of the semester, meet with the College of Science Advising Center (COSAC) advisor, as described on the CS department advising web site.

    4. Make sure that you have met the ELM (Entry Level Mathematics) requirement, or are registered to take the ELM exam. If you have questions about the ELM requirement, there is a web site that gives an overview of the ELM and another web site that covers the ELM in more detail Other information about the ELM is available from the Schedule of Classes (select the current semester's Policies and Procedures and then follow the Test Requirements and EPT/ELM Placement Tests links).

    5. If you are considering Calculus I in your first semester, be sure that you are registered to take the Calculus Placement Exam (or are exempt from it). This test is independent of the ELM exam. For more information on the Calculus Placement Exam, see the Math Department's web page on this test or the official Schedule of Classes (select the current semester's Policies and Procedures and then follow the Test Requirements and Calculus Placement Examination links). If you have received AP credit for calculus, physics, or computer science, you should fill out a course equivalency form with the appropriate advisor. You can do this at your meeting with the advisor listed in part 3 above, if you cannot do it earlier.

    6. Make sure that you have taken the English Placement Test. For more information on the EPT, see the Schedule of Classes (using the links given in the previous paragraph). Or check the EPT web site, or the Schedule of Classes (select the current semester's Policies and Procedures and then follow the Test Requirements and EPT/ELM Placement Tests links).

    7. Become familiar with the Schedule of Classes, the university catalog, and the "blue sheet" (the Computer Science Department handout summarizing the BSCS requirements). There is an online version of the blue sheet. In particular, check the prerequisites for the courses you plan to take. The department web site contains a prerequisite chart. Note that the blue sheet does not give the prerequisites for any courses, although the sample programs are consistent with all prerequisites. This sample program is also available either on the CS department web site, or by following the Sample Programs For B.S. Computer Science Students link from the online version of the blue sheet. Be aware that this program is only a sample, and will not be appropriate for every student.

    8. Also see the answer to the question about the SJSU wireless laptop project.

    slightly modified, August 2014

    Top of Document


  2. Q: Does the department participate in the Four-Year Graduation Pledge Program?

    Yes, although the conditions for BSCS students are very strict due to the large number of required courses in the program. In addition to all university requirements, you must get grades of C- or better in all courses, not repeat any courses, be ready to start calculus in your first semester, and stick with the sample program publicized by the department (on the back of the blue sheet) unless your advisor has approved a deviation. You may need to avoid university probation, since in some recent semesters students on probation have been allowed to register for a limited number of units.

    For more details, contact the undergraduate CS coordinator.

    somewhat modified, June 2012

    Top of Document


  3. Q: What is Science 2? What is Science 90T?

    Science 2 (Sci 002) is a course designed to improve retention rates in science and engineering and poor student preparation in general. Effective Fall 2007, it is a permitted General Education course under Area E. It is an appropriate course for a substantial proportion of frosh CS majors. Since the course is a General Education course, you can count it toward graduation (if you have not already taken another Area E course).

    See the Science 2 web site for more information.

    There is a similar course for transfer students, Science 90T. This course is not approved for GE. It has a course web site maintained by the College of Science.

    slightly modified, June 2012

    Top of Document


  4. Q: Does the first computer science course (CS 46A) assume any background in computing?

    Officially, no. However, a number of students in the past have attempted to take the course without any experience with text editors, manipulating files, or running commercial software. Many of these students have not succeeded.

    The laboratory associated with CS 46A covers a lot of material that's useful for a programmer to know, although not really part of programming. The lab exercises for this course are available through the department web site. You might consider attempting those of the exercises that do not involve programming if you want to get a head start in the course.

    If you don't have some computer experience of the sort suggested at the beginning of this answer, you might consider first taking CS 40 (Introduction to Computers). However this course will not count toward the BSCS degree. Another possibility is to take a course similar to CS 40 at a community college. At many schools, an appropriate course is the prerequisite course to the CS 46A equivalent. Such a course, however, is unlikely to count toward the BSCS degree.

    somewhat modified, May 2010

    Top of Document


  5. Q: What is the STAR Act? What is SB 1440? What is C-ID? What is an AS-T degree?

    SB 1440, the STAR act, is a California law designed to improve the interface between community college programs and CSU degree programs. C-ID is a course numbering system used in the implementation of this act. Students with an appropriate AS degree (an "AS degree for transfer", or "AS-T degree") are automatically exempt from certain BSCS requirements.

    You do not need to have an AS-T degree in order to transfer from a community college to the BSCS program at SJSU.

    One provision of the STAR act states that students with an appropriate AS-T degree will need at most 60 units beyond the AS to complete a 120- unit degree program in the same field. Since the BSCS program at SJSU has been reduced to 120 units, this provision applies to it. A sample program showing how the BSCS can be attained in 4 semesters of 60 total units is available on the CS department web site. This sample program will not be appropriate for every student.

    Students with an AS-T degree in CS will be given BSCS credit for Math 30 and 31 and 42, Physics 50 and 51, CS 46A and 46B, and 47, and all but 12 units of General Education. The sample program assumes that students will be able to pass the Writing Skills Test (WST) without any additional coursework, and have completed the American Institutions requirement as part of their AS degree. Students for whom these assumptions are not true should see the undergraduate coordinator to see how they can complete the BSCS in only 60 additional units.

    somewhat modified, June 2014

    Top of Document


  6. Q: I'm considering entering as a transfer student (or a second baccalaureate student). What do I do?

    For general information about transferring to SJSU, see the university web page on Transfer Admission Requirements. Pay special attention to the sections on transferring as a lower-division student or entering as a second baccalaurate student if those are relevant to you, since these kinds of transfers may not be possible in a given semester.

    If you are reasonably sure that you want to be a CS major, you are a community college student, and you think you will be attending SJSU or another California State University, you should seriously consider getting an AS-T degree in CS. Also check the section on transfer associate degrees on the web page mentioned above.

    If you are not able to complete all of the coursework that is part of an AS-T degree in CS by the time you are ready to transfer, you should at least try to complete the Computer Science portion of the program. The other courses can be made up easily when you arrive at SJSU.

    Since SJSU uses Java for its introductory courses, if the institution you are attending gives you a choice between a Java-based introduction to computing and an introduction that uses another language, it will probably be better for you to take the Java-based introduction.

    There is a 70-unit limit on units transferred from a two-year college, but this limit is irrelevant for determining which requirements in the major you have satisfied.

    Ideally you will be prepared to take the Writing Skills Test (WST) when you arrive at SJSU.

    Also see the answer to the next question.

    somewhat modified, June 2012

    Top of Document


  7. Q: I'm entering as a transfer student. What do I do?

    1. Make sure to attend one of the campus Transfer Orientation sessions, as described in the material sent to you by the university upon your acceptance. A description of this program, along with other useful information for transfers, appears on the SJSU web site.

    2. Ideally, the issues and questions below will be addressed and resolved at your Transfer Orientation session. If not, make an appointment to resolve any unresolved issues with the appropriate advisor, as listed on the CS department advising web site. Be aware that your faculty advisor may not be on campus until just before the first day of classes. If you feel that you need to sign up for one or more classes before all of your questions have been answered, choose classes that you know you have never taken before, and for which you are prepared. Lists of courses at other institutions that are guaranteed to be acceptable in place of SJSU courses are available on university web sites.

    3. Determine, preferably in consultation with an advisor, whether you are ready to start upper-division coursework in Computer Science. It's still a good idea to meet with your advisor even if you have an Associate Degree for Transfer in CS.

      • If you have successfully completed equivalents of CS 46A and CS 46B that use the Java language, then you have the computing background needed for CS 146 (Data Structures and Algorithms) and CS 151 (Object-Oriented Design). You should consider taking these courses in your first semester at SJSU if you have met their mathematics prerequisites.

      • If you have successfully completed equivalents of CS 46A and CS 46B that use a language other than Java, then you should enroll in CS 49J (Programming in Java) as soon as possible. After completing CS 49J successfully, you should take CS 146 and CS 151 as soon as you can.

      • If you have successfully completed a CS 46A equivalent but not a CS 46B equivalent, then if the CS 46A equivalent used Java you may enroll in CS 46B. Otherwise you should consider enrolling in CS 49J and then CS 46B, and then follow the instructions above for students who took equivalents of CS 46A and 46B in Java. CS 49J may be counted as an elective for the CS major.

        If you want, you may instead take a 46B equivalent at the same institution where you took your 46A equivalent, and then follow the instructions above for students whose 46A and 46B equivalencies didn't use Java.

        A third possibility is to simply take CS 46A at SJSU. Your 46A will almost certainly count as equivalent to CS 49C if it used the C language, and perhaps if it used C++ -- consult the Computer Science Department's undergraduate coordinator. The CS 49C equivalent may be counted as an elective for the CS major.

      • If you have not successfully completed a CS 46A equivalent, then you should enroll in CS 46A.

    4. Determine which General Education (GE) and Physical Education requirements apply to you. If you are a second baccalaureate student, then

      • you needn't complete any of the Core GE or physical education requirements, but

      • you are subject to the American Institutions requirements in US and California history and government, if you haven't completed it already. This requirement is technically not a GE requirement. For more information about this requirement, check the university web site

      • if you have a baccalaureate from a regionally accredited US university, then you needn't complete any of the SJSU Studies requirements, except for CS 100W and Phil 134, which are required courses in the BSCS. You will need to complete the "additional science" course requirement of the BSCS, which many students complete with an SJSU studies course.

      If you are not a second baccalaureate student, then you are responsible for all of the General Education requirements. The Registrar's office will determine which of your transfer courses will count as SJSU GE courses. This will take a semester or two. If you need this information earlier, or if you have questions about a particular determination, you may consult a GE Advisor at the academic advising center.

      You are responsible for meeting the university Physical Education requirement if and only if you arrive with fewer than 60 units, according to the university catalog (follow the Undergraduate Information and Requirements | Graduation Requirements - Undergraduate | Graduation Requirement - Physical Education (PE) links).

      For more information about General Education requirements, check the Schedule of Classes. Select the appropriate semester's Policies and Procedures, and then follow the General Education (GE) link.

    5. Take the Writing Skills Test (WST) as early as you can -- unless you have been exempted from the CS 100W and General Education Area Z requirements. This test is a prerequisite for CS 100W, and all other SJSU studies courses.

      Many students transferring into the CS major have satisfied all graduation requirements except for SJSU Studies and coursework in the Math & CS departments. If you are one of these students and you haven't taken the Writing Skills Test, then in your first semester you will either have to take all your classes in Math or CS, or take classes that won't help you graduate. And you may not be able to take very many classes in Math or CS, depending on which prerequisite courses you have taken, and on your knowledge of Java.

      If you need to take CS 100W, it is a good idea to take it as early as possible, since it helps you in all of your other courses. In particular, CS 100W is a prerequisite for the required software engineering course (CS 160), which may not be offered in spring semesters. It's not uncommon for students to have to delay their graduation because they did not take CS 100W early enough.

    6. Become familiar with the Schedule of Classes, the university catalog, and the blue sheet (and the web version). In particular, check the prerequisites for the courses you plan to take. The department web site contains a prerequisite chart that shows the mathematics and CS prerequisites for all CS courses that count toward the BS in CS.

    Note that the blue sheet does not give the prerequisites for any courses, although the sample program on the reverse side of the hard copy version is consistent with all mathematics and computer science prerequisites. This sample program, which is also available on the CS department web site, is only a sample, and will not be appropriate for every student.

    Also see the answers to the next two questions, and the answer to the question about the SJSU wireless laptop project.

    slightly modified, June 2014

    somewhat modified, August 2014

    Top of Document


  8. Q: Can I get credit toward the BSCS degree based on Advanced Placement (AP) exams?

    Current CS Department policy is to give 3 units of credit and a CS 46A waiver to any student scoring 3 or better on the Computer Science A exam.

    The department currently grants a Math 30 waiver to any student scoring 3 or better on the Calculus AB exam. We give waivers for both Math 30 and Math 31 to any student scoring 3 or better on the Calculus BC exam.

    The department grants a Physics 50 waiver to any student scoring 3 or better on Part 1 of the Physics C exam. We grant a Physics 51 waiver to any student scoring 3 or better on Part 2 of this exam. No waiver is given to students based on their having taken the Physics B exam.

    No waiver of the additional science course BSCS requirement will be given based on the Chemistry AP exam -- it corresponds only to Chem 30A and not to a course for science majors.

    Major requirements that are met by an AP exam should be included on a Course Equivalency Form.

    slightly modified, June 2014

    Top of Document


  9. Q: Can lower-division courses I have taken at other institutions count toward the BSCS degree?

    In most cases, lower-division courses that are substantially similar to Math or CS courses at SJSU can be used to satisfy major requirements. In particular, students with an Associate Degree for Transfer in CS are guaranteed BSCS credit for Math 30, 31, and 42; Phys 50 and 51; and CS 46A, 46B, and 47.

    However to make sure that university officials know which BSCS requirements you have satisfied, and to make sure that your course instructors know that you have met course prerequisites, you need to meet with an advisor to make sure that your prior coursework gets recorded properly. You should do this even if you have an Associate Degree for Transfer in CS. The best time to do this is at your Transfer Orientation session. If you cannot do this at your Transfer Orientation session, then you should make an appointment to see the appropriate advisor, preferably before you enroll for courses. In any case, you should bring

    1. transcripts showing all work you are attempting to transfer toward the BSCS (unofficial transcripts are fine, but make sure that each one includes your name or other information that identifies the transcript as yours), and

    2. catalog information (in the English language if at all possible) from the schools and years when and where you took the courses you are trying to transfer. Your advisor MIGHT be satisfied with looking at the school's web site, or at course green sheets, outlines, or syllabi,

    If you have transfer courses that count toward the BSCS, you and your advisor will fill out a Course Equivalency Form. It's this form that you can demonstrate to instructors of your first semester's classes that you have the appropriate prerequisites. This form is available from the department office in MH 208, and from the department's web site.

    The Computer Science Department maintains a list of equivalencies that we accept from nearby community colleges. The university maintains a list of articulation agreements for SJSU courses. If an SJSU course is articulated with a course at another institution, then this latter course is automatically accepted in place of the SJSU course with which it is articulated. You may view the university's list of articulated courses either sorted by college or sorted by subject.

    Statewide information regarding transfers and transfer credit is available at http://www.assist.org/.

    The course equivalency form is not appropriate for General Education courses. GE courses taken elsewhere are approved by a separate process.

    slightly modified, June 2013

    Top of Document


  10. Q: Can I use courses taken elsewhere to satisfy upper-division BSCS requirements at SJSU?

    In general

    1. Upper-division courses that were taken before entering the CS major, and that closely match SJSU courses allowable for that major, may be used to waive the corresponding SJSU BSCS requirements.

    2. A lower division linear algebra course is likely to be accepted for waiver of the Math 129A requirement. A combined course in linear algebra and differential equations of at least 5 semester units is likely to be accepted for waiver of the Math 129A requirement.

    3. For current CS majors, waiver of upper-division courses by coursework taken elsewhere while a student is a CS major at SJSU must be approved IN ADVANCE by the department. This includes courses taken at SJSU outside the CS department. Check with the CS department office (MH 208) for particulars.

    4. In rare cases, a lower-division course taken at a topnotch institution before a student enters the CS major at SJSU may be used to waive an upper-division BSCS requirement at SJSU.

    5. Otherwise, waivers or substitutions for upper-division BSCS requirements are very unlikely to be approved.

    Note that waiving a requirement is not the same thing as substituting one course for another. Using a lower-divison course to waive an upper-division course means you have satisfied the upper division requirement with a lower division course. It does not mean that you get credit for the upper division units. In particular, the courses that you use for "Support for the Major" and "Requirements in the Major" MUST STILL INCLUDE THE PROPER NUMBER OF UNITS of upper division mathematics and computer science coursework, excluding CS 100W and CS 110L.

    To make sure that equivalent courses are credited toward your BSCS, you should follow the procedure described in the previous question.

    Upper-division GE courses (SJSU studies courses) generally need to be taken at SJSU. The one exception to this policy is detailed in the discussion of CS 100W in the answer to the question on SJSU studies.

    somewhat modified, May 2010

    Top of Document


  11. Q: How can I change my major to computer science?

    Assuming that you have met the appropriate requirements, you may change your major to Computer Science. Download the correct Change of Major form from the registrar's office (which form is correct depends on whether you have completed 90 units). Bring the form to the Computer Science department office, MH 208, to get the appropriate department signature. The form states where to turn it in once you get the appropriate signature.

    Note that if you have 90 or more units, you will need a signature from the Dean's office of the College of Science. This signature is not granted automatically; it will depend on how much additional coursework you need to complete your new major.

    If you are a new student, you may change your major to CS, but only after classes begin.

    Information on changing majors and possible restrictions on doing so is available on the university web site.

    slightly modified, October 2014

    Top of Document


  12. Q: How do I go about getting a minor in computer science? Do I need to declare a computer science minor in advance?

    The answer to the second question is technically "no", but it's generally a good idea to declare a computer science minor as soon as you know that you are interested. Whether or not you choose to declare a minor, it's wise to see the Computer Science Minor advisor.

    The procedure and the form for adding a minor are the same as for changing majors, as described in the previous question. Again you will need an extra signature if you have completed 90 units. One reason for declaring a minor early is to avoid to need for additional signatures described there, and the possibility that your change may not be allowed.

    The requirements for the computer science minor are listed on the Computer Science department web site. When you are ready to submit your graduation application, even if you haven't yet completed these requirements, you should obtain a minor form from the Computer Science department office in MH 208, fill it out (with the assistance of the the Computer Science Minor advisor if you prefer) and leave it with the office staff to be signed. The signed minor form is to be turned in along with your major form and your graduation application to the Student Services Center.

    You will want to consider which upper-division electives you are interested in before you consider which lower or upper division course you want to take. This is because of the prerequisite structure of the CS courses.

    If you cannot preregister for a class, there is space available in the class, and you have the prerequisites for the class, most CS instructors will be happy to add you to their class. However during some semesters many or most classes are full by the first day of instruction, and you may not be able to add the courses you need. So there's a significant chance that even students who complete the first few classes for their minor will not be able to get the remaining classes. This means that your progress toward the minor may be halted at any point, and you should be aware of this possibility before beginning the coursework toward the CS minor. One reason for declaring a minor in advance is that an instructor may give declared CS minors priority in adding classes over other nonmajors.

    somewhat modified, June 2014

    Top of Document


  13. Q: What is disqualification from the university? How does it differ from disqualification from the major? Can I get back into the major after I have been disqualified? What is academic probation?

    An undergraduate student whose SJSU GPA falls too far below 2.0 is subject to disqualification from the university. The university's policy on disqualification is given in the university catalog (follow the Undergraduate Information and Requirements | Disqualification and Probation - Undergraduate & Postbaccaluareate | Disqualification, Academic links). If you are disqualified from SJSU, then you are no longer enrolled at SJSU, although you may petition for reinstatement. Disqualified students are eligible to take courses through Open University.

    For information about petitioning for reinstatement, check the Office of the Registrar.The university's policy on reinstatement is given in the university catalog, (follow the Undergraduate Information and Requirements | Readmission -- Former Students Returning (FSR) links).

    Reinstatement is not automatic. Petitioners generally need to demonstrate that they are capable of succeeding in university level work. Except for the occasional hardship case, this is done simply by raising one's SJSU GPA back to 2.0.

    Note that if you are disqualified from the university, then you are no longer enrolled in any major. If you become eligible for reinstatement, you must reapply to the university. You may reapply in a different major than your original major.

    Academic probation is a first step toward disqualification from the university. The relevant SJSU policy is given in the university catalog (follow the Undergraduate Information and Requirements | Disqualification and Probation - Undergraduate & Postbaccaluareate | Probation, Academic links). Every semester, a registration hold is placed on all students on academic probation. For information about removing this hold, and for general advising information related to probation, see the question on removing advising and probation holds.

     

    Effective Fall 2014, Computer Science majors are now subject to disqualification from the major and probation in the major. The policy in both cases is that of the College of Science. The university policy on disqualification from the major is given in the university catalog, under the Policies and Procedures heading (follow the Undergraduate Information and Requirements | Disqualification and Probation - Undergraduate & Postbaccaluareate | Disqualification -- Major links).

    modified, August 2014

    Top of Document


  14. Q: Are there any General Education requirements that are satisfied automatically by the major?

    Yes. The calculus courses in the major cover Area B4, as well as requirement B3 for a science lab course. Areas Z and V of SJSU Studies are also covered with the required courses CS 100W (Technical Writing Workshop) and Phil 134 (Computers, Ethics, and Society). It is also possible (and common) for students to satisfy Area R (or Area B2) and the "additional science requirement" with a single course. Thus of the 51 required GE units, 36-39 must be satisfied outside the major.

    For students using the requirements in effect before Fall 2014, Phys 50 is required and will satisfy GE Areas B1 and B3.

    For more information about Core GE, SJSU studies, and the General Education requirements, check the Schedule of Classes (in the online version, select the appropriate semester's Policies, and Procedures, and then follow the General Education (GE) link). Or see a General Education advisor.

    A waiver examination is available for GE requirement A3 (Critical Thinking). If you are able to waive the requirement, you will still need to make up 3 units of GE. Information about the exams is available from the Schedule of Classes (select the appropriate semester's Policies, and Procedures, and then follow the Test Requirements | Waiver Examinations links).

    somewhat modified, June 2014

    Top of Document


  15. Q: What is Phil 134? How does it differ from Phil 110?

    Phil 134 (Computers, Ethics, and Society) is a new General Education course that satisfies the Area V requirement. It differs from Phil 110 by having been designed specifically for Computer Science majors. It focuses more strongly than Phil 110 does on the ethics and social impact of computing.

    Effective Spring 2007, Phil 134 replaces Phil 110 as a requirement for the B.S. in Computer Science. Thus students entering the major in Spring 2007 or later must take Phil 134. The department strongly recommends that other students who have not yet taken Phil 110 take Phil 134 instead. Phil 134 is an acceptable substitute for Phil 110 in all BSCS programs for which Phil 110 is stated as a requirement.

    See the following question for information about substitutions for Phil 134 (or Phil 110).

    new, December 2006

    Top of Document


  16. Q: What is SJSU Studies? What is Advanced General Education?

    SJSU Studies is the advanced portion of General Education. It consists of four requirements -- one course each from Areas R, S, V, and Z. Two requirements are met by BSCS Support Courses -- the Area Z requirement is met by CS 100W (Technical Writing Workshop) and the Area V requirement is met by Phil 134 (Computers, Ethics, and Society), as it was for Phil 110.

    Advanced General Education is an old name for SJSU Studies.

    Students using requirements in effect before Fall 2014 may use certain courses to satisfy both the "additional science requirement" and the Area R requirement -- many students have taken advantage of this double counting. To see a list of qualifying courses, ask in the CS department office for the blue sheet for the requirements that you are using.

    Note that Phil 134 is specifically a course in the ethics and social impact of computing. No substitute course is available at SJSU, although students who are eligible to use Phil 110 are urged rather than required to take Phil 134. If you are a second baccalaureate student, you will still need to satisfy this requirement, even though you are exempt from all GE requirements. On the other hand, if your degree is from another institution and you've already taken a course or courses with significant coverage of the ethics and social impact of computing, you may be able to waive the Phil 134 requirement. However in this case, you will still need to satisfy the Area V requirement (unless you are a second baccalaureate student).

    All SJSU studies courses officially require completion of Core GE and successful completion of the Writing Skills Test (WST) (or an exemption from 100W). Many SJSU Studies courses have 100W as at least a corequisite. The university expects you to take the WST in the semester in which you achieve 75 earned units (counting no more than 70 community college units). The SJSU Advising Hub gives suggestions on what you can do if you cannot pass the WST.

    For the BSCS, a sufficiently high score on the WST will exempt you from the 100W requirement. The only other exemption that is routinely granted by the CS department is for students who passed an appropriate 100W course while enrolled as a math or science or engineering major. However note that for BSCS students, Engr 100W may count only toward Area Z, and not toward Area R

    Sometimes the department will waive the CS 100W requirement for second baccalaureate or other transfer students based on upper-division writing courses taken at other institutions. Almost always in these cases the Area Z requirement is also waived by the university, although there is no guarantee that this will happen. Occasionally, if the other institution's course is not a technical writing course, the Area Z requirement is waived for a student but the CS 100W requirement is not.

    For more information about General Education requirements, check the Schedule of Classes. Select the Policies and Procedures, and the General Education (GE) links. Or see a General Education advisor.

    somewhat modified, June 2014

    somewhat modified, August 2014

    Top of Document


  17. Q: What are the physics requirements for the BSCS?

    For students using the requirements of Fall 2014 or later, no physics course is required. But see the answer to the next question.

    For other students, two calculus-based physics courses with labs are required. The first covers primarily mechanics; the second covers electricity and magnetism. Phys 50 and 51 will satisfy these requirements; these courses are recommended for CS majors who take these physics courses at SJSU. At many community colleges the equivalent courses are called Phys 4A and 4B.

    Phys 52 may be used for the additional science course requirement for the BSCS. The BSCS elective CS/Phys 120A may be double counted toward the "additional science course" requirement, for students using a set of requirements in effect before Fall 2014.

    Phys 50 will satisfy both GE Area B1 and GE Area B3 for BSCS students.

    modified, June 2014

    Top of Document


  18. Q: I don't understand the BSCS science requirements.

    For the requirements in effect for Fall 2014 or later, 14 units of science coursework must be taken from a specified list, including 5 units from a sublist of this list. If you don't count any of these 5 units toward GE, then you may satisfy the remaining 9 units with GE Areas B1/B3, B2, and R. To see the course lists and for other information, click the quick link New science requirements on the CS department web site.

    In the earlier requirements,

    There is also a separate GE requirement (Area B2) for a life science course. Since Area B2 is a core GE requirement, second baccalaureate students are exempt from it. Biol 1A, 1B, and 23 may be used as the additional science course, but only if they are not also be used for Area B2.

    It is not necessarily the case that each of the science courses is offered every semester.

    modified, June 2014

    Top of Document


  19. Q: What is the difference between the calculus courses Math 30 and Math 30P? What are Math 19, Math 19W, Math 30W, Math 31W, and Math 32W?

    Math 30P is an alternate entry point into the traditional calculus sequence of Math 30, 31, and 32. In other words, either version of Calculus I, Math 30 or Math 30P, may be used as a prerequisite for Math 31, provided that you get a C- or better in the course that you take. Math 30P is 5 units and Math 30 is 3 units. This difference stems from the fact that Math 30P contains some precalculus material.

    Math 19 is a traditional precalculus course. Math 19W, 30W, 31W, and 32W are new courses that have been developed to help increase student success in precalculus and calculus.

    Check the Mathematics Department web site for details on whether you need to take the Calculus Placement Test, on how to register for precalculus or calculus courses, and on whether you can or should enroll for Math 19W, Math 30W, Math 31W, or Math 32W.

    It is possible to drop any of the "W" courses without dropping the corresponding course (without the "W"). You may need to check with the Mathematics Department office in MH 308 to do so. When deciding whether to do so, you should keep in mind the reasons listed on the web site for remaining enrolled in the course.

    Although Math 30 is acceptable in satisfaction of General Education Area B4, and a C- grade is acceptable when counting Math 30 for the CS major, university policy requires a grade of C or better in any course used for Area B4. If you get a C- in Math 30, you may still count Math 31 or 32 toward Area B4 if you receive a grade of C or better in one of those courses.

    slightly modified, June 2012

    Top of Document


  20. Q: How do I know whether I have satisfied the language prerequisite for CS 46B (or 49J or 146 or 151)?

    If you took CS 46A at SJSU, you have satisfied the language prerequisite for CS 46B. If you took CS 46B at SJSU, you have satisfied the language prerequisite for both CS 146 and 151. If you took CS 49J at SJSU, you have satisfied the language prerequisite for both CS 146 and CS 151. If you took CS 46A at SJSU, you should not take CS 49J.

    If you haven't satisfied one of these language prerequisites by taking an SJSU course, you should have learned at your initial CS advising session whether you have satisfied these prerequisites, if you entered SJSU in Fall 2006 or later. If so, this information should be recorded on a course equivalency form that you can show your instructor. If not, or if you entered SJSU before Fall 2006, then you should see the undergraduate coordinator.

    The instructor of the course whose prerequisite you are trying to satisfy may be able to assist you, or may refer you to an advisor.

    slightly modified, June 2013

    Top of Document


  21. Q: Does the department offer short courses on current computing topics? Is that what CS 85 and CS 185 are?

    In a sense, yes. Sections of these two courses vary in their content vary from 1 to 3 units. One-unit sections (numbered CS 85A or CS 185A) will be graded credit/no credit. Two-unit sections (numbered CS 85B or CS 185B) and three-unit sections (numbered CS 85C or CS 185C) will use letter grades.

    Most CS 85 and CS 185 courses will count as CS electives. Only one BSCS elective may be satisfied in this way (however courses such as Mobile Device Development that have become permanent courses under a different number are not subject to this limitation).

    Recall that 6 units of BSCS electives must be chosen from a specified list. Not all CS 85 and 185 courses qualify. A list is available of which ones do.

    If you take CS 85, you are still responsible for taking the right number of upper-division units in math and CS courses.

    In addition to each semester's offerings of CS 85 and CS 185 courses, you should also check each semester's offerings of CS 96 and CS 196 courses. These are the course numbers that are used for experimental courses.

    somewhat modified, June 2012

    Top of Document


  22. Q: What is a "deep" course? If I chose a "B" course for the deep course but have changed my mind, how can I complete my graduation requirements? What if I already took the corresponding "A" course?

    A "deep course" is just one that can be used as the last required computer science course in the BSCS requirements. For Fall 2014 the deep courses are CS 116B, 123B, 153, 157B, 158B, 161, 167B, and 167C.

    You can change your mind about what deep course to take just as you can change your mind about an elective. How you do this will depend in part on whether you have taken another "A" course, whether you have room in your electives to take another "A" course, and whether you are willing to take another "A" course even though you have completed your electives.

    If you cannot answer "yes" to any of these questions, then you might consider CS 153 (Concepts of Compiler Design) or CS 161 (Software Project). Both of these courses have only required courses as electives. Either of them will satisfy the deep course requirement in place of 116B, 123B, 157B, or 158B.

    If you have taken another "A" course, then you can use the "B" course corresponding to it to satisfy the "deep course" requirement. The same is true if you are willing to take another "A" course.

    If the "B" course that you are unwilling to take is something you were planning to use as an elective, rather than to satisfy the "deep course" requirement, then you can replace it by any permissible BSCS elective. But be aware of the limitations on permissible CS electives, as described on Note 9 of the blue sheet.

    Note that CS 167C can be used in place of CS 167B for the final required CS course. CS 167B is not a prerequisite for CS 167C.

    In any case, you should be sure to check the course offering patterns to see when your chosen alternative course is being offered. And if you have already turned in a major form stating that you'll be taking your disfavored "B" course, don't forget to fill out a course substitution form to replace it.

    very slightly modified, June 2014

    Top of Document


  23. Q: Can I make substitutions for courses in the BSCS program?

    In some cases, yes, with approval from an advisor (subject to approval by the department's undergraduate coordinator).

    For lower-division courses, many substitutions are accepted automatically based on articulation with SJSU courses, many have been approved in advance by the CS department, and many are approved after consultation with an advisor.

    See the question on SJSU Studies for information about substitutions for CS 100W and Phil 134. See the question on Engineering courses regarding courses taken from the SJSU College of Engineering. See the question on transferring upper-division courses for information on other upper-division courses.

    Graduate courses are never approved automatically for BSCS requirements, but they are allowed under certain circumstances.

    It is possible to use credit by examination to satisfy BSCS requirements. Substitutions based on extension courses or work experience are rarely approved.

    slightly modified, December 2014

    Top of Document


  24. Q: Can I take a course without having taken the prerequisite courses?

    This is really two questions: (a) Can I take a course ..., and (b) Should I take a course ...

    In the vast majority of cases, the answer to (b) is "no". The department recognizes that there are rare cases in which a student is prepared for a course without having taken the official prerequisite courses. Thus the department allows instructors to admit such students at their discretion in virtually all of its courses. These courses can be recognized in the catalog by a phrase like "or instructor consent" in the list of prerequisites. So the answer to (a) for most courses is "yes, if you get the consent of the instructor".

    modified, October 1995

    Top of Document


  25. Q: When and how can I drop classes? When and how can I add classes?

    University policy S09-7 states that for a student to drop after the first two weeks, there must be serious and compelling reasons. In the last 20% of the semester, exceptions are granted only if these serious and compelling reasons are beyond your control.

    The policy also establishes a limit on the number of course units that can be dropped between the drop deadline and the last 20% of the semester. This limit is 18 units for undergraduate students, 12 units for postbaccalaureate students, and 9 units for graduate students. Units dropped based on the granting of an exception do not count toward these limits.

    More specific information about registration issues, including course adds and drops, is available through the Schedule of Classes (start by following the Policies and Procedures and Registration links).

    modified, June 2012

    Top of Document


  26. Q: Is there a way of retaking a course to improve my grade? If so, how does it work?

    SJSU has a provision allowing undergraduate students to retake an undergraduate course to improve their grade in the course. Effective Fall 2009, this provision is called "grade forgiveness". Before Fall 2009, it was called "academic renewal", a term that is now used for something rather different. Constraints on the use of grade forgiveness can be found in the university catalog.

    A course may be repeated with grade forgiveness only once. As for any other repeated course (that is not designated as "repeatable for credit"), the original grade must have been less than a C. You need not petition for grade forgiveness -- it is automatic for students and courses that meet the conditions above. You will need to petition not to use grade forgiveness for a given course if you are eligible to use it for the course. In particular, if you got a C- in a course but choose to reenroll in it to improve your understanding, the university will assume that you are seeking grade forgiveness unless you petition otherwise.

    You cannot use grade forgiveness for a class and also preregister for the class, since you cannot preregister for a course that you have already taken. By department policy, instructors of computer science classes must give priority for adds to students who are not repeating the course, except that graduating seniors have highest priority for adds regardless of whether they have taken the course before. Among students wanting to repeat the course, CS instructors must not have a policy of giving lower priority to students using grade forgiveness.

    If you repeat a course and do not use grade forgiveness, both grades will be counted in your GPA (assuming that the earlier grade was C- or below). If you repeat a course for which you have already received a grade of C or better, the new grade will appear on the transcript, but it will not be used in GPA computations, and the new units will not count toward graduation.

    You may use grade forgiveness even if you have been disqualified from the university (and are therefore not a registered SJSU student). In this case you will need to take the course through Open University.

    Repeating a course more than once requires special approval from the registrar's office.

    Effective Fall 2009, the term "academic renewal" is to be used for what was previously called "Disregard of Previous Semesters' Work". Petitions for this new sort of academic renewal are available on the from the Undergraduate Studies Office.

    somewhat modified, June 2012

    Top of Document


  27. Q: Can I use a graduate course to satisfy a BSCS requirement? Can a graduate course be used to satisfy the "deep course" requirement for CS 116B or 123B or 153 or 157B or 158B or 161 or 167B or 167C?

    Current departmental policy is to allow this only if the student has at least a 3.0 GPA in upper division CS courses, and receives written approval of the instructor and from the undergraduate CS coordinator prior to taking the course.

    Whether a graduate course may be used in place of the "deep course" requirement is determined on a case-by-case basis by the undergraduate CS coordinator.

    slightly modified, August 2013

    Top of Document


  28. Q: I think I already know the material in a particular course. Can I get credit by examination?

    The new department policy is as follows:

    1. CBE can be arranged either near the end of the previous semester or within the first four weeks of the current semester.
    2. To arrange a CBE, the student must go to the course coordinator
    3. Only required undergraduate courses may be challenged.
    4. The coordinator reviews the students request to determine if it is likely that the student would pass a challenge exam. If so, the course coordinator identifies a faculty member willing to proctor and grade a final exam from some previous semester.
    5. The student must enroll in the course to be challenged, either before or after the exam is taken. If the student passes the exam, the student receives a credit for the course at the end of the semester. Otherwise, the student must actually take the course. There is no option for the student to drop the course.

    You can check in the CS department office to see who the course coordinator is.

    It's possible that the policy may change over time once we have some experience with it.

    modified, October 2014

    Top of Document


  29. Q: Can I use courses taken in the College of Engineering to satisfy BSCS requirements?

    In many cases, yes. For example, Engr 100W may be used to replace CS 100W if you took the former course while an engineering major. However note that when it comes to SJSU Studies, BSCS students may count Engr 100W toward Area Z only, and not toward Area R.

    A number of other courses, from several different Engineering departments, may be counted as equivalent to BSCS requirements or electives, by students who took these courses while Computer Engineering majors. A list of equivalent courses is available online. Note that this list is subject to change from semester to semester. If you took any of these courses while enrolled in another engineering major, they are likely to be approved, but you will need to consult the undergraduate Computer Science coordinator to be sure.

    somewhat modified, August 2008

    Top of Document


  30. Q: Does the department offer credit for extension courses taken elsewhere? For work experience?

    Since extension courses vary so widely and offerings change so frequently, it is not possible for us to evaluate the vast number of extension and online courses being offered. Therefore, it is our policy not to accept extension courses as equivalent to SJSU courses, unless the course is accepted in a university's CS degree program.

    Similarly, we are not equipped to give academic credit for work experience, with the exception of CS 180I (Internship Project).

    Students who feel that they know the material covered by a particular course are welcome to challenge our existing courses.

    modified, June 2014

    Top of Document


  31. Q: How can I get a Unix System Administration certificate?

    The CS department's certificate program in Unix Systems Administration is in effect through Spring 2015. Its renewal requires a university review, and therefore not guaranteed.

    The program currently provides for two levels of certification. Level I covers the basics of Unix systems administration. Level II covers Perl and shell scripts, security, network systems management, and administration of Web servers, NIS, and email.

    Any student who completes CS 72, CS 172A, and 172B will receive a Unix System Administration Level I certificate. Currently, the only way to get a Level II certificate is to complete the courses CS 122, CS 173 and CS 174. CS 173 has not been offered for some years. When you complete all of the courses for a level, you may apply in the CS department office for the certificate.

    Lower-division courses from other institutions are not normally accepted in place of the upper-division courses in the program. You may waive the CS 72 requirement using a course taken elsewhere; a list of qualifying courses at nearby community colleges is available on the CS department web site.

    If you are not a Computer Science major, you are still eligible for the program. The only CS prerequisite is a course that is equivalent to our introductory course CS 46A. However the courses in the program may fill quickly with CS majors.

    CS 72, CS 172A, and CS 172B are all electives in the CS major. However,

    1. neither CS 72 nor CS 172A nor CS 172B is in the group of electives from which a particular number of units must be chosen
    2. these courses may be offered less frequently than other CS electives
    3. the courses that you use for "Support for the Major" and "Requirements in the Major" MUST STILL INCLUDE THE RIGHT NUMBER OF UNITS of upper division mathematics and computer science coursework

    For more information on the program, see the CS department web site.

    modified, June 2014

    Top of Document


  32. Q: What CS offerings are avaialble in software engineering?

    The Computer Science department now offers an undergraduate software project course (CS 161) along with the longstanding undergraduate course in software engineering (CS 160) and the graduate software project course (CS 240).

    Several years ago, the CS department joined with the department of Computer Engineering to create a B.S. degree in Software Engineering. The program is described in the university catalog. Other current information on the program is available from the web page at http://www.se.sjsu.edu/. You may access the menus at the top of this page, despite the request for a password elsewhere on the page.

    A brief discussion of the differences between the computer science field and the software engineering field is given in a pair of boxes in the MSCS FAQ (at about the 8th question down).

    According to the catalog descriptions of the CS and SE programs, the SE program has 6 more units of math and 14 more units of beyond the level of support courses. Most of this 20 unit difference consists of hybrid GE/SE courses. The rest is explained by GE and physical education waivers granted to the SE program.

    The CS program allows considerably more electives than the SE program.

    It should be relatively easy for students to transfer between programs as late as their sophomore year, since all of the lower-division courses and several of the upper-division courses that are required in each program are also acceptable for the other program. However BSCS students who haven't ruled out an eventual transfer to Software Engineering should consider deferring any kinesiology course work and General Education Areas A3, B2, E, R, S, and v, since Software Engineering students needn't take separate courses in these areas.

    modified, June 2014

    Top of Document


  33. Q: Are there internship or co-op programs for BSCS students?

    Yes. The CS department has an internship program, and BSCS students are eligible for the math department's Center for Applied Mathematics and Computer Science (CAMCOS). The SJSU Career Center also provides support for seeking and profiting from internship opportunities.

    The department's program offers students the opportunity to earn academic credit (in CS 180I -- Internship Project) for work done at corporate partners of the department. Students must interview with and be chosen by the corporate partner. For more information, consult the CS 180I course instructor.

    In a CAMCOS project, sponsors from industry and elsewhere present problems to a team consisting of 4 to 8 students working under a faculty supervisor. Students receive 3 units of credit through enrollment in Math 203 each semester they participate. Math 203 can in many cases be counted toward the BSCS degree; check with the undergraduate CS coordinator for information about particular projects. Information about the CAMCOS projects available in particular semesters is publicized on the CAMCOS web site.

    The CS department web site now maintains links to lists of job opportunities, including internship opportunities, independently of the Career Center. From the Resources menu, select After College

    Many students in the department have obtained jobs in industry on their own, and attend class part-time or at night. A check of this semester's schedule of classes (follow the direct link from the CS department web site) will show that the department makes an effort to schedule many courses, especially graduate and advanced undergraduate courses, in the evening or early in the morning.

    slightly modified, June 2014

    Top of Document


  34. Q: What is the wireless laptop project at SJSU? Do I need to buy a laptop?

    The wireless laptop project is a university initiative that the Department of Computer Science has voted to join. For general information about the project, see the document http://www.cs.sjsu.edu/faqs/.

    Instructors may require their students to have access to a laptop equipped with wireless web access. So to determine whether you need a laptop for your courses, you will need to consult your course instructors.

    To get a login account for wireless connection, check the SJSUOne web site.

    slightly modified, June 2013

    Top of Document


  35. Q: Are there jobs available through the CS department?

    A very few jobs are available. Check with the department office or see the question on financial assistance in the FAQ for the MS program (at about question 6). Keep in mind that this discussion refers to aid available through the department, rather than through the university. Also, teaching associate positions are unlikely to be offered to undergraduates.

    slightly modified, June 2014

    Top of Document


  36. Q: Is there any software that is available at special rates to CS students?

    Check the links from the CS Club web site.

    modified, May 2010

    Top of Document


  37. Q: What is an advising hold? What is a probation hold? Why do I have one? How can I get it removed?

    An advising hold is a mechanism by which students are prevented from registering for classes until they have seen an advisor. For every semester's registration, advising holds are now placed on all Computer Science majors, graduate and undergraduate students alike. Probation holds are registration holds for students on academic probation.

    To remove either kind of hold, see the advisor given by the instructions at the CS department web site. It is important to remove advising holds before the end of each semester, since you cannot count on your advisor being on campus between semesters.

    To the meeting with your advisor, you should bring copies of your transcripts (unofficial copies are acceptable), a signed course equivalency form if you have one, and a filled-out advising release form. Advising release forms may be obtained through the CS department office in MH 208, or from the department's web site.

    somewhat modified, August 2014

    Top of Document


  38. Q: Haven't the BSCS requirements changed recently? Which requirements should I use? How can I find the most up-to-date statement of the requirements?

    The requirements have changed for Fall 2014. There were also earlier changes that affect some current majors. The other two questions will be answered after a brief summary of the changes.

    the changes

    The requirements over the years differ largely in

    The changes effective for Fall 2014 were to change the second and fourth unit count above from 10 and 34. In addition, the science requirements were liberalized. The requirement for CS 49J and 49C was removed (most students will qualify to take one of them as an elective). To keep the program size at 120 units, students are now assumed to take the sequence AMS 1A/1B.

    The changes for Fall 2013 were to reduce the four unit counts above from 121, 12, 6, and 36 respectively. Also, the number of units for CS 47 (Introduction to Computer Systems) was increased from 3 to 4.

    The changes for Fall 2009 were as follows:

    The changes for Fall 2006 were as follows:

  39. The specified list constraint became effective Spring 2006. Effective Spring 2007, Phil 134 (Computers, Ethics, and Society) became a required course for the BS in CS. Students who were in the CS major before Spring 2007 should still take Phil 134 rather than Phil 110, since Phil 134 is tailored to CS majors.

    the effect of the changes

    Changes not listed above include changes in prerequisites and introduction of new courses. For information on how these are treated, see the question on these topics. Otherwise, the general principle for determining which requirements to use is that

    1. you can always use the newest requirements, and
    2. you can use any set of older requirements (from the last 10 years) as long as you have maintained continuous attendance between a time when they were in effect and the time when you graduate, and
    3. you cannot mix old and new requirements.

    The official definition of continuous attendance (sometimes called "continuous enrollment") is given in the university catalog (use the Undergraduate Information and Requirements, Graduation Requirements - Undergraduate, and Graduation Requirement - Election links). For most students, maintaining continuous attendance means being enrolled for one semester (or two quarters) in each CALENDAR year.

    The conditions determining whether students need to reapply for admission after an absence from SJSU are not the same as for continuous attendance. You may need to reapply even though you have maintained continuous attendance.

    Students using the Fall 2013 or Fall 2014 requirements may use the 3-unit version of CS 47.

    Students eligible to use either the Fall 2006 requirements or the Fall 2009 requirement should choose the Fall 2009 requirements, since the Fall 2009 requirements are strictly more liberal.

    Students already in the major as of Fall 2006 may or may not find it helpful to choose to use the Fall 2006 set of requirements. Students using the Fall 2006 requirements must comply with the constraint on electives in Note 9 of the blue sheet, regardless of when they entered the major. This constraint is an inseparable part of those major requirements.

    statements of the requirements

    Since changes to degree requirements (as opposed to changes in course offerings and prerequisites) may change only for fall semesters, the university catalog will contain the most recent set of major requirements. Some information on other changes may be available from MySJSU, from the department's web site (including these FAQs), and the bulletin boards outside the department office.

    Announcements regarding experimental courses or "topics courses" (e.g., CS 85, 96, 185, or 196) cannot be made in the catalog. Check the department's bulletin boards and web site for information on these courses.

    Relying on friends for information on official department policies has gotten students into trouble in the past. The safest thing to do is to check with your advisor.

    somewhat modified, June 2014

    Top of Document


  40. Q: May I count a newly created elective or deep course toward the BSCS? Must I follow a newly imposed prerequisite?

    The answer to the first question is yes, subject to any explicit restrictions placed on doing so. That is, if you are following the BSCS requirements as of a certain date, it doesn't matter whether the course was an elective or a deep course was permitted on that date. For example, if you were already a CS major when CS 167B (DB2 Application Development for z/OS) became a deep course, and you are following the BSCS requirements that were in effect when you became a CS major, you can still use CS 167B as a deep course. The same applies to CS 161 (Software Project), which was another late addition to the list of deep courses. And the same applies to newly created elective courses such as CS 167A (DB2 Fundamentals for z/OS). However CS 49C (once known as CS 49) (Programming in C) may be used as an elective only by those students using requirements in effect before Fall 2006 -- this is not a newly created course.

    In every case, the use of electives is subject to the distributional constraint on electives, and the constraint on upper-division units in Math & CS courses.

    New prerequisites, on the other hand, need to go into effect uniformly for all students, no matter when they entered the major. For most CS courses, instructors have the authority to waive the course prerequisites. Partly for this reason, enforcement of new prerequisites rarely presents a hardship for students. But feel free to consult the undergraduate CS coordinator if this is the case for you.

    somewhat modified, June 2013

    Top of Document


  41. Q: Who should I see if I am having trouble with department or university rules and regulations? Who should I see for other types of assistance?

    for assistance with Computer Science issues

    The Department of Computer Science and the College of Science attempt to maintain the positions of CS Undergraduate Advisor and Undergraduate Coordinator to assist the CS Department chair and the regular faculty advisors in helping students with special circumstances. In most cases it is only the department chair who has the authority to waive department rules, although in some cases this authority will have been delegated to the Undergraduate Coordinator.

    The primary duty of the CS Undergraduate Advisor is in assisting new students. However this advisor also assists students who have been disqualified or are in danger of being disqualified. To determine which advisor to see, check the CS advising web page.

    The Undergraduate Coordinator has the authority to approve modifications to the major requirements in special cases, and to make rulings on curriculum-related matters in cases where the rules are unclear. If you have problems with your graduation, you should see the undergraduate coordinator. The undergraduate coordinator and CS minor advisor for 2014-15 is Prof. Jeffrey Smith.

    For 2014-15, the department chair is Prof. Sami Khuri and the graduate coordinator is Prof. Chris Pollett. Appointments may be made with the department chair through the CS department office in MH 208.

    for other assistance

    In some cases, it is possible to petition the university for waiver of university rules. In some cases it is not. The web sites of the the office of the registrar and the the Undergraduate Studies Office provide petition forms for many of the most common cases.

    Many university facilities, including

    also stand ready to assist you.

    slightly modified, June 2014

    slightly modified, August 2014

    Top of Document


  42. Q: What is a graduating senior? What is a graduation worksheet? What is a graduation checklist? Why are these important?

    By university policy, graduating seniors are to be given priority in registration for courses that they need to take in order to graduate on time. In particular, they are to be given priority over other students for adding courses. In recent semesters, the registrar's office has been providing special cards to graduating seniors that they may use to identify themselves to instructors.

    Graduation worksheets (sometimes called graduation checklists) can also be used as proof of graduating senior status. A graduation worksheet is only prepared and sent to a student after the student turns in a graduation application. So you should apply for graduation early to ensure that you can document your status as a graduating senior.

    For CS students, graduating senior status is no longer an issue only in a student's final semester. There are a couple of important situations in which graduating seniors need to be given priority in the semester before they are scheduled to graduate. Specifically,

    A graduation worksheet lists a graduation date, and all of the graduation requirements that the records office evaluator determines that the student still needs to complete in order to graduate by that date. These pending requirements may include courses in the major, courses outside the major, courses that are being taken in the current semester, and courses to be taken in later semesters.

    very slightly modified, June 2013

    Top of Document


  43. Q: When should I apply for graduation?

    The university expects you to apply for graduation in the semester in which you will complete 105 earned units. It's a good idea to apply early in the semester -- as soon as you're sure you know exactly what courses you're taking in that semester. It's important to apply this early so that the records office can check which courses you need, and so you can make sure that you agree with them. In the past, students have found out that they needed more courses that they thought -- sometimes so late that their graduation was delayed.

    Another reason for applying early is given in the previous question.

    If you miss the university deadline for filing for graduation, you should file as early as you can. If you have signed up for the right courses, you might still be able to graduate in the semester that you planned for.

    If you make a change in your plans that requires you to delay graduation, you will have to fill out a Graduation Date Change Form (available from the Office of the Registrar or on its web site) and pay a small fee as described on the form.

    modified, June 2012

    Top of Document


  44. Q: I'm trying to fill out my major form. What do I do on the form about courses I still need to take?

    You should include these courses on the form. List the semester you intend to take them instead of the grade.

    In the case of electives, you should make your best guess about which electives you will be taking, and when you will be taking them, and put these guesses on the form.

    If you end up taking different courses than the ones you indicated on the form, you need to fill out a course substitution form reflecting the change. It is much simpler to fill out than the major form.

    If you end up taking a course in a different semester than you indicated on the form, you needn't do anything.

    slightly modified, June 2012

    Top of Document


  45. Q: I've already turned in my major (or minor) form, but I will not be taking one or more of the courses listed on the form. What do I need to do?

    This is a fairly common occurrence. Of course you will need to replace the courses you won't be taking with other courses, and the new set of courses still has to satisfy some set of major or minor requirements that you are entitled to use. A simple form called the Major/Minor Course Substitution Form is used to amend a major (or minor) form. You can download the form from the records office web site. You don't need to see an advisor or the undergraduate coordinator.

    You need only list on the form (1) those courses which were listed on the major or minor form and will not be taken, and (2) the courses that will be taken instead. If any of these courses are offered by an institution other than SJSU, the name of that institution should be given along with the course prefix and number. If you are replacing a course by a course at another institution that you have not yet taken, make sure that the SJSU Registrar's office gets a copy of the appropriate transcript(s).

    There is space on the Course Substitution Form for comments. You shouldn't write anything in this space. It's the responsibility of the undergraduate coordinator to determine how and whether you will be satisfying the major or minor requirements after the substitution, and to document for the Registrar's office any special circumstances.

    The Course Substitution form is appropriate only for changing courses. If you end up taking a course in a different semester than you indicated on the form, you needn't do anything. If you want to change your date of graduation, there is a separate form to do that.

    slightly modified, June 2014

    Top of Document


  46. Q: What are the requirements for graduation with honors?

    The requirements for graduation with honors are described in the department's section of the university catalog. These are departmental honors, in the sense of the university catalog (follow the Undergraduate Information and Requirements | Honors links), as distinct from university honors at graduation (follow the same links).

    The Humanities Honors Program in General Education is not related to graduation with honors.

    slightly modified, June 2012

    Top of Document


  47. Q: Is it difficult for CS majors to get a minor in another field?

    With one exception, minors for CS majors require considerable extra coursework, since the BS program in CS has little or no room for free electives. This exception is the minor in mathematics. The math minor requires 18 units, including Calculus 1, Calculus 2, and 9 upper-division units in mathematics courses.

    CS majors automatically satisfy the Calculus 1 and Calculus 2 requirement, and have 9 qualifying lower-division units (from calculus and discrete math). Qualifying upper-division courses are Math 129A, Math 161A, and any of several math courses that are BSCS electives (including the crosslisted courses 143C and 143M in numerical analysis and scientific computing). Any of these may count toward the BSCS.

    The university regulation that minors require 12 units distinct from the major is also satisfied, if you take Math 129A (as opposed to a lower-division linear algebra course). This is because courses in support of the major (like Math 30, 31, 42, and 129A) do not count as major requirements for the purpose of determining 12 distinct units).

    So it's possible to get a math minor without taking any extra courses at all, if you choose your major courses carefully. In any case, the cost of a math minor is a small number of additional courses.

    Do be aware, when deciding which electives to take, that there is a constraint on electives used for the BSCS. If you are following the Fall 2013 or Fall 2014 requirements, at least 4 units must have a required direct or indirect prerequisite of CS 46A. If you are following an earlier set of requirements, at least 6 units must be taken from electives in a specified list. None of the math courses that count as BSCS electives appear in this list.

    Also be aware that adding and changing minors are no longer automatically allowed.

    very slightly modified, June 2014

    Top of Document


Return to SJSU CS Home Page