Policies and Procedures
The list below addresses the undergraduate policy and procedure questions that the CS Office of Undergraduate Programs encounters most frequently. It does not constitute an exhaustive survey of the policies and procedures that pertain to all CS students. Students should consult the university's Student Code and the advising resources from their respective college: Grainger Engineering, LAS, ACES, Media, or FAA.
- Advanced placement (AP) credit
- Credit/No Credit (a.k.a. pass/fail)
- Conflict examinations
- Dropping and adding classes
- Grade Replacement
- Independent/Individual Study (CS 397)
- CS Team Project (CS 497)
- Senior Thesis (CS 499)
- Registration restrictions and overrides
- Proficiency examinations
- Retaking classes
- Transfer credit
For additional information, contact the appropriate advising office:
|CS Office of Undergraduate Programs
Visit: 1210 Siebel Center
|Grainger Engineering Undergraduate Programs Office
Visit: 206 Engineering Hall
|LAS Student Academic Affairs
Visit: 2002 Lincoln Hall
FAA Office of Undergraduate Academic Affairs
College of Media Student Services Center (SSC)
|College of ACES Academic Programs Office
Visit: 128 Mumford Hall
To see which AP scores result in course credit (for all AP subjects), check the university's placement and proficiency website, scroll down to "cutoff scores" and click on the current cutoff scores or the cutoff scores for the year you entered Illinois.
Current students: to find out if you have received course credit for your AP scores, check your degree audit with an advisor. If you think that you should have received AP credit but did not, check with your college office or contact The College Board to request that your AP scores be sent to Illinois.
The Credit/No Credit (CR/NC) option allows students to take a course without having it count toward their GPA. CR/NC is intended to encourage students to explore academic subjects they might not otherwise consider for fear of harming their GPA. Before you consider taking a course CR/NC, read the following very carefully. You should also consult the specific guidelines set down by your college.
- You may not select the CR/NC option for any course that will fulfill a requirement (this includes campus general education requirements - though Engineering students may take the "additional six hours" of college general education requirements CR/NC).
- You may take free electives CR/NC, but not technical electives. For an explanation of the difference between free and technical electives see the section on Electives.
- You may select the CR/NC option only up to the half-way point of the term (same as drop-deadline).
- You may take a maximum of two courses CR/NC during a semester (only one during a summer term) - up to 18 hours maximum for your undergraduate career.
- CS students are particularly discouraged from taking CS courses CR/NC - even courses that are not needed to fulfill requirements - because graduate schools do not look favorably upon it and neither do some potential employers. Normally, a request to take a CS course CR/NC will be denied.
- Your instructor will not know that you have chosen the CR/NC option and will assign a letter grade. A C- or better will automatically be changed to CR. A D+ or worse will automatically result in NC.
Procedure: To take a course CR/NC, you must fill out a form (available in CS Office of Undergraduate Programs or in your college's office), obtain a signature from the CS Office of Undergraduate Programs, and take the signed form to your college office. You may revert back to a letter grade using the same form and procedure, but you must do so before the half-way point of the course.
If your schedule results in three final exams within a 24-hour period, you may request to take a conflict examination at another time for one of the courses. University policy holds that a course giving a combined exam (i.e. multiple lecture sections with one exam) must give the conflict exam if conflicting with a non-combined course. If none of the courses in question are combined, then the largest class (most students) must offer the conflict exam.
With notable exceptions (see below), students may drop and add classes by themselves on Enterprise Student Self-Service, as long as they do so within the proper time frame (between the earliest registration time for the semester in which they plan to graduate to the add deadline for that semester). Check the Registrar's Office website for the calendar of academic and financial deadlines. Before you drop or add a class, however, please read carefully the following guidelines and restrictions.
- You may add a full-semester class within the first two weeks of a regular semester (the add-deadline).
- With notable exceptions (below), you may drop a full-semester class up to the drop-deadline (eight weeks into the semester for spring and fall).
- Dropping a course after the drop-deadline is not normally allowed without extenuating circumstances and requires permission from the CS Academic Office and your college office. Extenuating circumstances may include an extended illness or incapacitating injury, the death of a family member, or the discovery and diagnosis of a learning disability or mental disorder. All of these must be properly documented to warrant a late drop. Dissatisfaction with your grade in a course is not a legitimate justification for a late drop.
- A late drop may result in a "W" (withdrawal) being listed in the grade column for the course on your transcript. If you need to drop a course after the drop-deadline, contact the CS Academic Office.
- After the first two weeks of a regular semester, all College of Engineering students have a registration hold and must go through a college web portal to request drops. They must also receive permission from the college office to drop an Engineering core requirement (MATH 220/221, 231, 241; MATH 285; CHEM 102, 103; PHYS 211, 212 - note that PHYS 213 and 214 are half-semester courses and students must request permission to drop these courses after the first week of class).
- After the first two weeks of a regular semester, CS students in the College of Engineering must receive permission from the CS Academic Office before dropping CS 125, 126, 173, 225, and 233. CS students in other colleges should consult with CS undergraduate advisors before dropping any of these courses after the first two weeks of a regular semester.
- You must receive permission from your college office to drop below 12 hours (full-time status) during the spring and fall semesters. Unless it is your last semester before graduation, permission is granted only under certain conditions (chronic illness, for example). There is no minimum hours requirement for the summer terms.
If you have any questions about whether you can drop or add a course, contact your advisor or email@example.com.
Generally speaking, CS majors (in Engineering) have two types of electives, technical electives and free electives. Students must choose technical electives from a set of courses approved by the department. Almost any course on campus can be used for free elective credits. There are some restrictions (e.g. on the number of physical education courses you can take). For more information on these restrictions, please check the specific regulations on electives for your college (LAS students, College of Engineering students), while most Engineering students can find an explanation of their foreign language requirement here.
For international students who are not native speakers of English, the requirement can be more complicated. International students in LAS must have completed 4 yrs of their native language and English in a Senior Secondary School (grades 9, 10, 11, and 12). Students who did not complete 4 years of either English or their native language can take the proficiency exam in their native language through the 4th level at UIUC to waive the foreign language requirement.
In the College of Engineering, international students must have completed 3 years of their native language and English in a Senior Secondary School (grades 9, 10, 11, or 12). Students who did not complete 3 years can take the proficiency exam through the 3rd level at UIUC to waive the foreign language requirement. (This requirement applies to student who started school in Fall 2000 or later.)
Undergraduate students at the University of Illinois may take a limited number of courses under certain circumstances and have the grade from the first time taking the course removed from GPA calculations. Before retaking a course and assuming that grade replacement can be applied, READ THE UNIVERSITY'S GRADE REPLACEMENT POLICY AND THE PROCEDURES FOR YOUR COLLEGE CAREFULLY.
CS majors in the College of Engineering should consult the Engineering advising site on Grade Replacement for procedures.
CS majors in the College of Liberal Arts & Sciences should consult the LAS advising site and Sciences for the grade replacement procedures they should follow.
Note that students may retake a class, regardless of whether they apply grade replacement or not, at any time.
Students have a right to be given assignments that are well-prepared and of appropriate length, and to have them graded in a timely fashion. Furthermore, knowing how the class will be graded, and where they stand, can reduce students' anxiety and promote learning.
Students can expect the following grading policy to be followed, unless instructors explicitly say otherwise.
Grading of mid-term exams
- If at all possible, the first mid-term should be given, graded, and returned prior to the undergraduate drop date.
- Mid-term exams should be graded and returned within two weeks, or at the very least, prior to the next exam.
- Solutions to exams should be posted immediately after all students have taken the exam.
Grading of programming and written assignments
- Programs and written assignments should be graded and returned within two weeks, or less if subsequent assignments depend on them.
- No assignment should be given without its having been thoroughly reviewed by an instructor or TA.
- Assignments should be of reasonable length, keeping in mind that the student is taking several other courses that require a comparable amount of time. For programming assignments, it is desirable to leave a weekend between assigning the homework and collecting it.
- Similarly, exams should always be taken by the TA's to determine, at the very least, how long it takes to write the answers.
- Course grading policies should be announced in as much detail as possible at the start of the semester. If grades will be normalized to a curve, then the curve should be published. Since students may use this policy to determine how much effort to expend on different parts of the course, the grading policy should not be altered if it can be avoided. Once the semester is over, no changes in the policy are allowed: University policies on capricious grading require that the announced policy be followed in assigning course grades.
- Students should be given regular - if possible, continuous - access to information about their position in the class.
- When grading classes of mixed undergraduate and graduate students, the instructor should announce up front whether the same grading policy will be used both for graduates and for undergraduates, or a separate scale will be used. The policy should not penalize undergraduates in courses that are expected to be taken by a large number of undergraduates. Two methods that work well are: (1) determine the grading curve based only on the undergrads, and then fit the grads to that scale; (2) determine the grading curve based only on grads, and then fit the undergrads to it.
CS 397 Individual Study is a course that students can register for to get credit for an individual research project carried on under the guidance of a CS faculty member (or a faculty member from another department approved for supervising a CS 397 section). You may take the course for anywhere from 1 to 3 hours (to be determined by your individual project supervisor) and you may register again for CS 397 Individual Study (under the same or different instructor) in subsequent semesters.
To register for CS 397 Individual Study, make sure, first, that a faculty member has agreed to serve as your Individual Study supervisor. Then click on the link below, and fill out the online web form:
The form will then go to the faculty member you designated as your individual study supervisor. Once they have indicated approval, you will be supplied with a 5-digit CRN which you can enter in Enterprise to register for that faculty member's CS 397 section.
If you are a student outside of CS programs, you will need to complete a paper form to add a CS 397 course (available in the CS advising office).
While there are many 400-level CS technical electives approved to meet the teaming requirement, this class offers students the opportunity to create a team project with classmates under the guidance of a CS faculty member. You must take this course for 3 credit hours unless it is added onto another CS course (i.e. CS 445). Students will not be approved to register for less than 3 credit hours of this course unless it is attached to another CS course. If CS 497 is added onto another course it should be taken for 1 credit hour.
To register for CS 497, you will need to assemble a group of at least 3 undergrads and a Computer Science faculty supervisor for an approved project. Then click on the link below, and fill out the online web form:
When completing the form, be sure to include full names for all members of the group and their UINs (if possible). Each group member will need to submit an individual request form. The description should be detailed enough to clarify the team learning goals for the project. Once the instructor has indicated approval, each team member will be supplied with a 5-digit CRN which you can enter in Enterprise to register for that faculty member's CS 497 Team Project section.
If you are a student outside of CS programs, you will need to complete a paper form to add a CS 497 course (available in the CS advising office).
A senior thesis is an individual research project that you formulate, carry out and write up under the guidance of a faculty member. As the course description states, "A student works with a faculty member on a mutually agreed upon thesis topic and completes a written thesis. Work involves literature search, oral presentation, analysis and/or implementation, paper preparation, and a written thesis."
A typical senior thesis should be at least 20 to 30 pages long (double-spaced) or about 5000 to 6000 words. Based on feedback from the advisor, a senior thesis is revised multiple times for language, style, and technical content, before it is submitted for a final grade. In addition to submitting the final version of their thesis to their advisor, students must also email it to firstname.lastname@example.org for it to be archived.
Like CS 397 to register for CS 499 Senior Thesis, make sure, first, that a faculty member has agreed to serve as your thesis supervisor. Then click on the link, below, and fill out the online web form:
The form will then go to the faculty member you designated as your thesis supervisor. Once they have indicated approval, you will be supplied with a 5-digit CRN which you can enter in Enterprise to register for that faculty member's CS 499 section.
The CS Office of Undergraduate Programs can help CS students obtain overrides for certain registration restrictions. Examples are as follows:
- Overlapping courses (Time conflict): Enterprise will not let students register for classes with meeting times that overlap. However, the CS Office of Undergraduate Programs can provide an override if at least one of the courses is a CS course. To get an override, students must receive written approval (email is fine) from the instructors stating that 1) one of the instructors is OK with the student missing class time 2) one of the instructors is willing to provide a conflict examination if the course overlap results in two final exams scheduled at the same time. For example, if a student needs to leave a class fifteen minutes early, he/she must request a note or e-mail from the professor granting the student permission to be absent. The student should take the note (or forward an email) to the staff in the Office of Undergraduate Programs (email@example.com), who can then enter an override allowing the student to register for the conflicting CS course.
- Prerequisite restrictions: As part of the Grainger College of Engineering prerequisite enforcement policy, the CS department enforces prerequisites for all CS courses at the 100, 200, and 300-level. Attempts to register for courses without having met prerequisites will yield the following message “Course Prerequisite and/or Test Score Error – Contact Course Department”.
Before requesting an override, check course explorer to be sure you understand the prerequisites you are missing: https://courses.illinois.edu/schedule/DEFAULT/DEFAULT
If you have coursework that meets prerequisites for a course but is not on your academic record (such as summer transfer credit) or you have coursework that may be equivalent to listed prerequisites for a course, you can request a prerequisite override from the department: https://my.cs.illinois.edu/ugpetitions. No approvals will be granted without reviewable coursework, for example, no student will be approved to bypass prerequisites for CS courses based on self-study or planned proficiency exams.
Prerequisite override requests will be reviewed by the Computer Science department within 5 business days. Students will be notified of decisions within the undergraduate petitions portal and via email.
Major restrictions: Departments will occasionally restrict registration for certain courses to majors within the department. In most cases, restrictions are described in the university's online course schedule. To find out if and when overrides might be provided or the restrictions lifted, contact the department controlling the course.
- Graduate-level courses (Level restriction): Enterprise will not let undergraduates register for graduate level sections of 400-level courses (4 credit hours). Exceptionally qualified undergraduates may receive level overrides for 4 credit hour graduate sections of 400-level and some 500-level CS courses if they receive permission from the instructor of the course for which they want to register (again, an email will suffice) and from the CS Office of Undergraduate Programs. Students in the 5-year BS/MS or BS/MCS program do not need instructor permission to request an override if they encounter a level restriction (email firstname.lastname@example.org for registration assistance)
- Online courses: With rare exceptions, CS undergraduates may not register for the online CS courses offered by CS and Engineering Online. The Office of Undergraduate Programs will occasionally provide an override to a graduating senior who has no other way of fulfilling a degree requirement than by taking an online course, but this should normally be avoided.
The instructor who is teaching a CS course has the option of offering a proficiency exam. The rule is that students have to get a C- or higher on the exam in order to pass. If students pass the exam, the course will appear on their transcript as a proficiency class (with a PS entered in the grade column - like an AP credit); however, there are no consequences for the student if he/she fails the exam. To request a proficiency exam, contact the current instructor of the course. CS 124, CS 128, CS 173 and CS 225 usually offer proficiency exams some time around the beginning of the spring and fall semesters. For these courses, check the CS proficiency website for more information.
A student can retake any class. Students can only apply for grade replacement, however, under certain circumstances (see Grade Replacement for more information). Except under grade replacement, when a student retakes a class that he/she has already completed, both the old and the new grade are averaged into the student's GPA like any other grades, but the hours are credited only once. For example, a student receiving a D in CS 124 and then retaking the course for a B will have 6 hours of C averaged into his/her GPA but will receive 3 hours of credit toward graduation).
Students should retake a class if:
- They fail a required class
- They earn a C+ or below in CS 124
- They earn a C- or below in CS 128
- They earn a C+ or below in CS 173
- They earn a C- or below in CS 225
- They feel they have not sufficiently grasped the material in a course that provides an important foundation for future coursework
The team project requirement for the CS in Engineering cannot be completed with a course taken abroad. If a student completes a course equivalent to one of our campus-approved teaming courses, they will be required to complete another approved team project course on campus to meet the CS in Engineering team requirement.
Many UIUC students take courses at other colleges or universities - usually over the summer in order to lighten regular semester schedules. Before taking a course at another institution, current UIUC undergraduates should do the following:
- Make sure that taking a course at another institution will not conflict with your University of Illinois residency requirement. Consult the student code and/or an Admissions and Records Officer (ARO) in your college office.
- Check to see what credit you'll receive for the course, especially if you want to fulfill a specific requirement. You can check for course equivalency at the University of Illinois by consulting Transferology. You have to set up an account, but it's free.
- If you cannot find information about University of Illinois equivalency online - if you're taking a course in a state or institution not covered by Transferology or if you're taking a course that hasn't been evaluated yet - you'll have to obtain a syllabus or detailed course description for the course you want transferred and have it evaluated by someone at Illinois. Once you've obtained that information, consult your college office for further instructions. If the course you'd like evaluated is a CS course, you can send the syllabus to email@example.com.
- The Advanced Composition requirement can be fulfilled with a tranfer course but only one that is specifically approved as satisfying the Advanced Composition requirement at UIUC.
- To have your courses credited here at UIUC, you must request that the institution you attend send a transcript of the courses you took there. Follow the guidelines below for having transcripts sent:
Non-graduating seniors in the CS/Engineering program and all students in the CS programs in the College of LAS, or College of FAA, or College of ACES should send transcripts to:
University of Illinois at Urbana-Champaign
Office of Admissions and Records
901 West Illinois Street
Urbana, IL 61801-3028
Graduating seniors in the CS/Engineering program should also send transcripts to:
College of Engineering
206 Engineering Hall
1308 W. Green Street
Urbana, IL 61801
Students who transfer into CS from another program on the Urbana campus can often substitute courses that they have taken for their previous program of study for CS requirements if the courses are roughly equivalent. Below is a list of courses that are commonly substituted:
- MATH 213: Students who transfer into a CS program with MATH 213 credit or who come in as freshmen with MATH 213 transfer credit may substitute that credit for CS 173. We strongly advise them, however, that they should take the proficiency exam for CS 173 to ensure that they have a thorough grasp of the material for future coursework, and to take CS 173 if they do not pass the proficiency exam for it. The reason is that CS 173 is better preparation for CS 225, and more so for CS 374.
Students who enter the department without CS 173 or MATH 213 *must* take CS 173 because (again) it is stronger preparation for follow-on courses, particularly CS 225 and CS 374 (and CS 421 for that matter).
- ECE 220: may substitute for CS 124/CS 125 for students who have already taken the ECE course and transferred into CS or for students pursuing a CS Minor.
- CS 450 for CS 357: CS-Engineering students may substitute CS 450 for CS 357, but if they do so, they may not use CS 450 to count as one of their 400-level CS electives. They must also notify CS undergraduate advisors (firstname.lastname@example.org) that they intend to make this substitution. This policy applies to Stats & CS majors, as well. Math & CS majors may take CS 450 without first taking CS 357, in which case they must take an extra 400-level CS or Math elective, not otherwise counting for a major requirement, to substitute for CS 357.
- MATH 225: Students who came in as freshmen with MATH 225 transfer credit or who took MATH 225 before transferring from another department or institution into CS-Engineering may substitute that credit for MATH 257/MATH 415. This is only for students in CS-Engineering, not Math & CS or Stat & CS (all the other CS + X programs specifically include MATH 225 as an option). We strongly advise them, however, that they should either take or pass a proficiency exam for MATH 257/MATH 415 or take MATH 416 because these courses prepares them better for courses like CS 357 and many 400-level CS electives (particularly in areas like Machine Learning, AI and Scientific Computing).
- MATH 416 may substitute for MATH 225, MATH 257 or MATH 415 for any CS program. Students who want to take MATH 416 must obtain permission from the Math Department - email@example.com, 313 Altgeld Hall.
A degree audit or DARS report is a summary of your degree requirements and coursework. The Office of the Registrar's website has information on student access to the DARS system. You can also obtain a printout of your degree audit from the CS Academic Office or from your college office.
If you find anything in your degree audit report that does not appear accurate, send an email to firstname.lastname@example.org.
College of Engineering
For graduation, the technical and the overall grade point averages must be at least 2.0. The department also requires that the technical grade point average be above 2.25 for the first thirty hours of technical course to continue as a computer science major. (The technical grade point average includes all computer science and required mathematics courses or substitutes. It does not include physics courses or science electives.) To achieve honors at graduation, a specific grade point average must be met. Please see Honors for more details.
College of Liberal Arts and Sciences
For graduation, the major and the overall grade point averages must be at least 2.0. (The major grade point average is similar to the technical grade point average above. It is the grade point average for all computer science and mathematics courses.) Other technical courses such as physics are not counted. To achieve honors at graduation, a specific grade point average must be met. Please see Honors for more details.
For policies and procedures related to academic probation, see Rules 79 and 80 of the university Code of Policies and Regulations Applying to All Students and the policy and procedures website for your college, Engineering or LAS.
See the Computer Science Department Honor Code.
PLEASE READ THESE INSTRUCTIONS COMPLETELY AND CAREFULLY!
International students on an F-1 visa who wish to complete a paid internship must apply for a Curricular Practical Training (CPT) and receive a CPT letter from their departmental advisor. Students should submit a CPT request through the I-Start portal on the ISSS website and make sure to email the following information to Steve Herzog (email@example.com) and Elizabeth Gonzalez (firstname.lastname@example.org):
- When you expect to graduate
- List a few courses from which your internship might allow you to implement concepts/skills (these should be courses that you have taken).
- Indicate that you will register for ENG 310. Note that the US federal government *requires* that students on an F-1 visa must be enrolled in a course or curriculum which explicitly requires an internship in order to be employed in the US. This cannot be avoided and you will have to pay some tuition.
Plan to register for ENG 310 during the term in which you are doing your internship. For more information about the current College of Engineering CPT request process, please review the College of Engineering ENG 310 page.
See the CS Department Honor Code.
All undergraduates (except students in their last semester before graduation) must maintain a schedule of at least 12 hours credit (the minimum required to be a full-time student) during the fall and spring semesters. To go below 12 hours, students must obtain permission from their college office and this is granted only under exceptional circumstances. Students in their last semester before graduation may take fewer than 12 hours of courses, but they should check to make sure that they are meeting all requirements to graduate. Some sources of financial aid, student loans and student insurance require full-time student status, so students should never go below 12 hours without contacting their funding and insurance sources! Students taking courses during the summer terms have no minimum-hours requirement.
Students may register for a maximum of 18 hours without permission during a fall or spring semester. For the Summer II term, the maximum is 9 hours, for Summer I, the maximum is 4 hours. Students can obtain permission to register for more hours but they must receive a dean's permission from their college office to do so.
CS students are free to take any minors allowed by the offering department. It is the offering department that decides who is eligible for their minor. (Note: the math minor is open to CS in Engineering students, even though it only requires one or two courses beyond what is already required.)
For more information about "declaring" a minor please see the Provost's resource page, including links to necessary forms.
If you have any questions about tuition and fees you can find answers by consulting the Registrar's Office tuition and fees webpage.
Domestic students (US citizenship or permanent resident status) may work part-time during the semester as long as the work does not impede academic progress. International students must apply for a CPT (Curricular Practical Training) in order to work (with some exceptions) – consult ISSS for more information. A student doing a CPT registers for ENG 310, and is required to satisfy additional learning requirements as part of the course, which go beyond their internship work.
Many students ask whether they can get some type of independent study credit for work (paid, or unpaid) that they are already doing (e.g., as an intern) for some organization. The short answer is "no". While it is no doubt often the case that working in some capacity is also a learning experience, unless there are clear learning goals articulated by a faculty member that happen to include and go beyond the work done, and unless that faculty member is willing to oversee the work as an independent study project approved by the Director of Undergraduate Programs, no credit can be given.