The Bachelor of Science in Computer Science

Total Course Requirements for the Bachelor's Degree: 128 units

See "Requirements for the Bachelor's Degree" in the University Catalog for complete details on general degree requirements. A minimum of 40 units, including those required for the major, must be upper division.

A suggested Major Academic Plan (MAP) has been prepared to help students meet all graduation requirements within four years. Please request a plan from your major advisor or view it and other current advising information at http://em.csuchico.edu/aap/ProgramSearch.

General Education Requirements: 48 units

See "General Education Requirements" in the University Catalog and the Class Schedule for the most current information on General Education Requirements and course offerings. The course requirements marked below with an asterisk (*) may also be applied toward General Education.

HIST 130 may be used to fulfill any one of the Breadth Area C1, C2, or C3 requirements and POLS 155 may be used to fulfill any one of the Breadth Area D1, D2, or D3 requirements.

Upper-division theme modification has been approved for this major. See the General Education chapter in the University Catalog for specifics on how to apply this modification.

Diversity Course Requirements: 6 units

See "Diversity Requirement" in the University Catalog. Most courses taken to satisfy these requirements may also apply to General Education.

U.S. History, Constitution, and American Ideals: 6 units

See "U.S. History, Constitution, and American Ideals" under "Bachelor's Degree Requirements". For this major, this requirement is normally fulfilled by completing HIST 130 and POLS 155 or approved equivalents.

For this major, HIST 130 may also be applied to General Education Breadth Area C1, C2, or C3, and POLS 155 may also be applied to General Education Breadth Area D1, D2, or D3.

Literacy Requirement:

See "Mathematics and Writing Requirements" in the University Catalog. Writing proficiency in the major is a graduation requirement and may be demonstrated through satisfactory completion of a course in your major which has been designated as the Writing Proficiency (WP) course for the semester in which you take the course. Students who earn below a C- are required to repeat the course and earn a C- or better to receive WP credit. See the Class Schedule for the designated WP courses for each semester. You must pass ENGL 130 (or its equivalent) with a C- or better before you may register for a WP course.

Course Requirements for the Major: 92 units

Completion of the following courses, or their approved transfer equivalents, are required of all candidates for this degree.

Enrollment in any mathematics course requires a grade of C- or higher in all prerequisite courses or their transfer equivalents.

Lower-Division Requirements: 33 Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct. units

9 courses required:

CSCI 111 Programming and Algorithms I 4.0 FS
Prerequisites: At least one year of high school algebra and strong computer skills or CSCI 101.
CSCI 211 Programming and Algorithms II 4.0 FS
Prerequisites: CSCI 111 or EECE 135 with a grade of C- or higher. Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct.
CSCI 221 Assembly Language Programming 3.0 FS
Prerequisites: CSCI 111 or EECE 135 with a grade of C- or higher. Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct.
NSCI 102 Introduction to Living Systems 3.0 FS *
MATH 120 Analytic Geometry and Calculus 4.0 FS *
Prerequisites: Completion of ELM requirement; both MATH 118 and MATH 119 (or high school equivalent); a score that meets department guidelines on a department administered calculus readiness exam.
MATH 121 Analytic Geometry and Calculus 4.0 FS
Prerequisites: MATH 120.
MATH 217 Discrete Mathematical Structures 3.0 FA
Prerequisites: Completion of ELM, MATH 119 (or equivalent), CSCI 111.
PHYS 204A Physics for Students of Science and Engineering: Mechanics 4.0 FS *
Prerequisites: High school physics or faculty permission. Concurrent enrollment in or prior completion of MATH 121 (second semester of calculus) or equivalent.
PHYS 204B Physics for Students of Science and Engineering: Electricity and Magnetism 4.0 FS
Prerequisites: MATH 121, PHYS 204A with a grade of C- or higher.

Upper-Division Requirements: 59 Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct. units

15 courses required:

CINS 370 Introduction to Databases 3.0 SP
Prerequisites: CSCI 311 with a grade of C- or higher.
CINS 448 Computer Security 3.0 FA
Prerequisites: Any upper-division computer networking course.
CSCI 301 Computer's Impact on Society 3.0 FS * WP
Prerequisites: ENGL 130 (or its equivalent) with a grade of C- or higher; Junior standing.
CSCI 311 Algorithms and Data Structures 4.0 FS
Prerequisites: CSCI 211 with a grade of C- or higher; MATH 217 recommended.
EECE 320 System Architecture and Performance 3.0 FA
Prerequisites: CSCI 221 with a grade of C- or higher. Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct.
CSCI 340 Operating Systems 4.0 SP
Prerequisites: CSCI 311 with a grade of C- or higher.
CSCI 346 Introduction to Computer Networks and Network Management 3.0 FA
Prerequisites: Grade of C- or higher in either CINS 220 or CSCI 221.
CSCI 430 Software Engineering 3.0 FA
Prerequisites: ENGL 130 with a grade of C- or higher, CSCI 311 or EECE 337. Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct.
CSCI 431 Software Engineering Tools 3.0 SP
Prerequisites: CSCI 430 with a grade of C- or higher.
CSCI 465 Web Programming Fundamentals 3.0 FA
Prerequisites: CINS 370 with a grade of C- or higher.
CSCI 490 Directed Programming Experience 3.0 FS
Prerequisites: CSCI 311 with a grade of C- or higher, Senior standing.
CSCI 515 Compiler Design 3.0 SP
Prerequisites: CSCI 311 with a grade of C- or higher.
CSCI 550 Theory of Computing 3.0 SP
Prerequisites: CSCI 311 with a grade of C- or higher; Math 217.
CSCI 580 Artificial Intelligence 3.0 FA
Prerequisites: CSCI 311 with a grade of C- or higher.
MATH 314 Probability and Statistics for Science and Technology 4.0 SP
Prerequisites: MATH 121.

1 course selected from:

CSCI 317 Linear Programming Applications 4.0 F2
Prerequisites: CSCI 311 with a grade of C- or higher.
CSCI 351 Numerical Methods Programming 4.0 F1
Prerequisites: CSCI 311 with a grade of C- or higher.

7 Note: The highlighted is different from what appears in the printed catalog. What is displayed is current and correct. units selected from:

Select upper-division Computer Science (CSCI) or Computer Information Systems (CINS) courses, and/or upper-division Math courses that meet a requirement for the Minor in Mathematics. A maximum of 3 units may be taken for credit/no credit grading.

Additional Computer Science Graduation Requirement:

Graduating seniors must complete an exit exam as a requirement for graduation. Passing the exam is not required for the degree; the scores will be used for program assessment. Consult the department office for examination details.

Electives Requirement:

To complete the total units required for the bachelor's degree, select additional elective courses from the total University offerings. You should consult with an advisor regarding the selection of courses which will provide breadth to your University experience and possibly apply to a supportive second major or minor.

Grading Requirement:

All courses taken to fulfill major course requirements must be taken for a letter grade except those courses specified by the department as Credit/No Credit grading only.

A grade of C- or better is required in all computer science (CSCI) and Computer Information Systems (CINS) courses used for the major.

Advising Requirement:

Advising is mandatory for all majors in this degree program. Consult your undergraduate advisor for specific information.

Honors in the Major

Honors in the Major is a program of independent work in your major. It requires 6 units of honors course work completed over two semesters.

The Honors in the Major program allows you to work closely with a faculty mentor in your area of interest on an original performance or research project. This year-long collaboration allows you to work in your field at a professional level and culminates in a public presentation of your work. Students sometimes take their projects beyond the University for submission in professional journals, presentation at conferences, or academic competition. Such experience is valuable for graduate school and professional life. Your honors work will be recognized at your graduation, on your permanent transcripts, and on your diploma. It is often accompanied by letters of commendation from your mentor in the department or the department chair.

Some common features of Honors in the Major program are

1. You must take 6 units of Honors in the Major course work. All 6 units are honors classes (marked by a suffix of H), and at least 3 of these units are independent study (399H, 499H, 599H) as specified by your department. You must complete each class with a minimum grade of B.

2. You must have completed 9 units of upper-division course work or 21 overall units in your major before you can be admitted to Honors in the Major. Check the requirements for your major carefully, as there may be specific courses that must be included in these units.

3. Your cumulative GPA should be at least 3.5 or within the top 5% of majors in your department.

4. Your GPA in your major should be at least 3.5 or within the top 5% of majors in your department.

5. Most students apply for or are invited to participate in Honors in the Major during the second semester of their junior year. Then they complete the 6 units of course work over the two semesters of their senior year.

6. Your honors work culminates with a public presentation of your honors project.

While Honors in the Major is part of the Honors Program, each department administers its own program. Please contact your major department or major advisor to apply.

Honors in Computer Science

In addition to the common requirements for the Honors in the Major program given above, the Honors in Computer Science program includes the following:

1. You must be recommended by a faculty member.

2. Students who are admitted to the department's Honors in the Major program must complete 3 units of CINS 548H, CSCI 465H, CSCI 511H, CSCI 515H, CSCI 540H, CSCI 547H, CSCI 550H, CSCI 566H, CSCI 567H, CSCI 568H, CSCI 569H, CSCI 580H, or CSCI 583H, with a minimum grade of B. Unless other arrangements are made, the professor instructing the course you take becomes your faculty mentor. It is during this time that you must define a research problem or performance area and develop an Honors Research Project/Thesis proposal in preparation for work in CSCI 499H. You must also maintain a minimum GPA of 3.0 in your senior year. (Note: For the BS in Computer Information Systems, the Honors choices are CINS 548H, CINS 570H, CSCI 465H, CSCI 511H, CSCI 540H, or CSCI 547H.)

3. Each Honors in the Major class requires completion of the course plus an additional Honors project and culminates with a public presentation of your Honors project.