| PREVIOUS | UP | NEXT | CONTENTS |
The computer science degree can be completed in four full-time years of study if the student is capable of completing an intensive set of computer science, calculus, and physics courses during the freshman year. Only strong training in high school will allow a student to begin at this level. If a student must instead take preparatory classes as a freshman, more than four years may be required to earn a degree. In any event, it is important to take the required pre-major classes early to allow advancement to full major status as soon as possible.
In a concentration, the second course further develops ideas or issues introduced in the first course. A list of sample concentrations and the General Education Program form can be obtained from the Academic Counselor. Students must complete this form and receive approval for their programs.
Incoming engineering students may want to consider the Engineering LEAP (E-LEAP) program organized by the Office of Undergraduate Studies. It is a year-long cohort program set up to allow students to take several classes together during their first year on campus. Two of these classes are seminar courses that satisfy University General Education and Diversity requirements. The program also includes sections of Writing, Calculus, and Physics. For more information on E-LEAP, contact the College of Engineering Advisor at 585-7769.
| CS 1010 | Introduction to Unix |
| CS 2010 | Introduction to Computer Science I |
| CS 2020 | Introduction to Computer Science II |
| CS 2100 | Discrete Structures |
| CS 3500 | Software Practice |
| CS 3510 | Algorithms and Data Structures |
| CS 3810 | Computer Architecture |
| CS 4400 | Computer Systems |
| CS 4500 | Software Engineering Lab |
| CS 3100 | Models of Computation |
| CS 3200 | Scientific Computing |
To remain in good standing and graduate, a student must maintain a cumulative grade point average at the University of 2.25 or higher, and also to maintain a grade point average (GPA) of 2.25 in computer science classes. Students whose GPA in either of these categories falls below 2.25 are notified that they are on probation and will be given conditions for a return to good standing. Normally, these conditions must be satisfied during the next two semesters, excluding summers. Students failing to meet their probationary conditions are dropped from the rolls of the major.
All students admitted as full majors are placed on probationary status. If a student's GPA in either of the above categories is below 2.25 at the end of the first academic year during which they take upper level CS classes, the student is dropped from the rolls of the major.
Students are expected to complete all requirements for their degree within four years of acceptance to full major status. Students not making satisfactory progress toward their degrees may be dropped from the rolls and declared inactive. The determination that a student is not making satisfactory progress is made in one of two ways. Either (1) the student has not completed a CS course for a period of one year, or (2) there is no reasonable way in which the student can complete all degree requirements by the end of the required period of time.
In order to be reinstated from inactive status or from being dropped due to low GPA, students must petition the Computer Science Undergraduate Committee. Reinstated students proceed under the latest graduation requirements.
If personal circumstances prevent completion of all degree requirements within four years of acceptance as a full major, a student may request an extension of a specific duration and submit a revised schedule of completion.
Example Computer Science Degree Program
| Full major status after two semesters | Full major status after three semesters | |||||||
| Year | Fall | Spring | Fall | Spring | ||||
| 1 | Math 1210† | (4) | Math 1220† | (4) | Math 1210† | (4) | Math 1220† | (4) |
| CS 1010† | (0.5) | Physics 2210† | (4) | CS 1010† | (0.5) | Physics 2210† | (4) | |
| CS 2010† | (4) | CS 2020† | (4) | Writing† | (3) | CS 2010† | (4) | |
| Writing† | (3) | CS 2100† | (3) | Gen Ed | (4) | Gen Ed | (3) | |
| Gen Ed | (3) | Gen Ed | (3) | |||||
| (14.5) | (15) | (14.5) | (15) | |||||
| 2 | CS 3500 | (4) | CS 3510 | (4) | CS 2020† | (4) | CS 3500 | (4) |
| CS 3810 | (4) | CS elective | (3) | CS 2100† | (3) | CS 3810 | (4) | |
| Writing 3400 | (3) | Math/sci elective | (3) | Math/sci elective | (3) | Math/sci elective | (4) | |
| Gen Ed | (4) | Gen Ed | (4) | Gen Ed | (3) | Writing 3400 | (3) | |
| Gen Ed | (3) | |||||||
| (15) | (14) | (16) | (15) | |||||
| 3 | CS 4400 | (3) | CS elective | (3) | CS 3510 | (4) | CS 4400 | (3) |
| CS theory elective | (3) | CS elective | (3) | CS theory elective | (3) | CS elective | (3) | |
| Math/sci elective | (4) | Math/sci elective | (4) | Math/sci elective | (4) | CS elective | (3) | |
| Gen Ed | (3) | Gen Ed | (3) | Gen Ed | (4) | Math/sci elective | (4) | |
| Free elective | (3) | Free elective | (3) | Free elective | (3) | |||
| (16) | (16) | (15) | (16) | |||||
| 4 | CS elective | (3) | CS 4500 | (3) | CS elective | (3) | CS 4500 | (3) |
| CS elective | (3) | CS elective | (3) | CS elective | (3) | CS elective | (3) | |
| CS elective | (3) | Math/sci elective | (4) | CS elective | (3) | CS elective | (3) | |
| Gen Ed | (4) | Gen Ed | (3) | Gen Ed | (4) | Free elective | (3) | |
| Free elective | (3) | Free elective | (3) | Free elective | (3) | Free elective | (3) | |
| (16) | (16) | (16) | (15) | |||||
These tables give two example eight-semester programs leading to a Bachelor of Science degree in computer science. The program on the left is for students who advance to full major status after two semesters, and the program on the right is for students who advance to full major status after three semesters (not counting summers). It is meant only as a guide, since the scheduling of electives and General Education classes depends on which ones are selected. Advancement to full major status in two semesters requires taking Computer Science 2010, Math 1210, and Writing during the first semester, unless the student has advanced placement credit. (†Class required of pre-majors.)
Computer Science Prerequisites
This graph illustrates the order in which classes must be taken to
satisfy prerequisite and corequisite requirements in Computer Science.
Prerequisites are connected bottom-to-top; corequisites are connected
side-to-side; recommended prerequisites are dashed. One of the two
courses contained in dashed boxes must be taken. Where not otherwise
indicated, courses are offered during both semesters as well as the
summer. (
CS 3200 has Math 2250 as a prerequisite; CS 4500
can be taken only by students who are on track to graduate before the
next offering of CS 4500.)
| PREVIOUS | UP | NEXT | CONTENTS |