Degree Requirements

Skip to end of metadata
Go to start of metadata

Degree requirements for all majors administered by the department of computer science are listed below.

B.S. in Computer Science (ENG)

* - for students entering Fall 2005 or later.  Please see Steve Herzog if you entered prior to 2005.

University and College of Engineering Requirements (39 - 51 hours)

Hours Courses
4 Composition I
3 Advanced Composition - can be completed by choosing one of the following options - see technical track requirements below for details: CS 427 and CS 429; CS 492 and CS 493; CS 499
0 Eng 100
4 CHEM 102 and CHEM 103
10 Physics Sequence - PHYS 211, 212, and either 213 or 214
18 Humanities and Social Sciences
0-12 Foreign Language

Department of Computer Science Requirements (69 - 76 hours)

Hours Courses
1 CS 100 (recommended but not required)
11-12 Calculus through Math 241 Calculus III
3 MATH 415 Applied Linear Algebra (also satisfying this requirement are MATH 416 Abstract Linear Algebra and MATH 426 Honors Linear Algebra)
3-4 MATH 461 Probability Theory or MATH 463 Statistics and Probability I
4 CS 125 Intro to Computer Science
3 CS 173 Discrete Structures
2 CS 210 Ethical and Professional Issues in CS
4 CS 225 Data Structure and Software Principles
3 CS 231 Computer Architecture I (DISCONTINUED AFTER FALL 2011. SEE NOTE BELOW)
3 CS 232 Computer Architecture II (DISCONTINUED AFTER SPRING 2012. SEE NOTE BELOW)
4 CS 233 Computer Architecture (SEE NOTE BELOW)
NOTE
After Spring 2012, material from CS 231 Computer Architecture I and CS 232 Computer Architecture II will be combined into a single 4-hour course, CS 233 Computer Architecture. CS 231 and CS 232 will be discontinued and students who have not completed both courses by Fall 2012 must instead take the new single Computer Architecture course. This course will be offered for the first time in Fall 2012 as CS 398 Special Topics and thereafter as CS 233.
4 CS 241 System Programming
3 CS 242 Programming Studio
3 CS 373 (was CS 273) Theory of Computation
24-27 Technical Track - Choose one of the following:

Students must also complete a minimum of 18 hours of Social/Behavioral Science and Humanities requirements.  For specific requirements see the Liberal Education Electives page on the Engineering wiki.

In addition, students have to complete a number of hours of free electives.  The number varies based on how many hours of major and general education hours a student completes.

Caution
Note that there are a few limitations on what students can take to complete free electives.  These limitations are spelled out on this site on the Engineering wiki.

Free electives are courses beyond major and general education requirements that students complete to attain the 128 Total Hours Required.

You can also find the prerequisite flowcharts, mapping the requirements for the major - including separate flowcharts for each different technical track - on this wiki site.


B.S. in Math/Computer Science (LAS)

Students must complete at least 120 total hours from the following university, college and departmental requirements. For more complete information on college and university requirements, please consult the LAS guidelines here.

University and College of Liberal Arts and Sciences Requirements (47 hours)

Hours Courses
4 Composition I
3 Advanced CompositionMay be overlapped with other requirements and free electives increased.
0-16 Foreign Language
24 General Education

Department of Computer Science Requirements (58 - 64 hours)

Hours Courses
11-12 Calculus through MATH 241 Calculus III
3 MATH 347 Fundamental Mathematics
4 CS 125 Intro to Computer Science
2 CS 173 Discrete Structures
4 CS 225 Data Structure and Software Principles
3 CS 231 Computer Architecture I (DISCONTINUED AFTER FALL 2011. SEE NOTE BELOW)
3 CS 232 Computer Architecture II (DISCONTINUED AFTER SPRING 2012. SEE NOTE BELOW)
4 CS 233 Computer Architecture (SEE NOTE BELOW)
NOTE
After Spring 2012, material from CS 231 Computer Architecture I and CS 232 Computer Architecture II will be combined into a single 4-hour course, CS 233 Computer Architecture. CS 231 and CS 232 will be discontinued and students who have not completed both courses by Fall 2012 must instead take the new single Computer Architecture course. This course will be offered for the first time in Fall 2012 as CS 398 Special Topics and thereafter as CS 233.
4 CS 241 System Programming (Required for students who began as new freshmen - at UIUC or at another institution - Fall 2007 and after. Students who began university before Fall 2007 may substitute this course for CS 423 Operating Systems Design)
3 CS 242 Programming Studio (Required for students who began as new freshmen - at UIUC or at another institution - Fall 2007 and after. Recommended but not required for students who began university before Fall 2007)
3 CS 357 (was CS 257) Numerical Methods I
3 CS 373 (was CS 273) Theory of Computation
3 - 4 MATH 463/STAT 400 Statistics and Probability I, or MATH 461/STAT 451 Probability Theory I
3 MATH 412 Graph Theory, or MATH 417 Intro to Abstract Algebra
3 MATH 415 Linear Algebra, or MATH 416 Abstract Linear Algebra
3 MATH 441 Differential Equations, or MATH 446 Applied Complex Variables, or MATH 484 Nonlinear Programming
3 MATH 444 Elementary Real Analysis, or MATH 447 Real Variables
3 MATH 414 Mathematical Logic, or CS/MATH 473 Algorithms, or CS/MATH 475 Formal Models of Computation
3 CS 421 Programming Languages and Compilers or CS 423Operating Systems Design
3 CS 457 Numerical Methods II
0 - 6 CS 499 Senior Thesis, or CS 492 Senior Project in CS I and either CS 493 Senior Project in CS II, ACP or CS 494 Senior Project in CS II. These courses are recommended but not required)

120 Total Hours Required

A course requirements flowchart (pdf) is available.


B.S. in Stats/Computer Science

Students must complete at least 120 total hours and the following university, college and department requirements. For more complete information about college and university requirements, please consult the LAS guidelines here.

University and College of Liberal Arts and Sciences Requirements (47 hours)

Hours Courses
4 Composition I
3 Advanced CompositionMay be overlapped with other requirements and free electives increased.
0-16 Foreign Language
24 General Education

Department of Computer Science Requirements (58 - 64 hours)

Hours Courses
11-12 Calculus through MATH 241 Calculus III
4 CS 125 Intro to Computer Science
2 CS 173 Discrete Structures
4 CS 225 Data Structure and Software Principles
3 CS 231 Computer Architecture I (DISCONTINUED AFTER FALL 2011. SEE NOTE BELOW)
3 CS 232 Computer Architecture II (DISCONTINUED AFTER SPRING 2012. SEE NOTE BELOW)
4 CS 233 Computer Architecture (SEE NOTE BELOW)
NOTE
After Spring 2012, material from CS 231 Computer Architecture I and CS 232 Computer Architecture II will be combined into a single 4-hour course, CS 233 Computer Architecture. CS 231 and CS 232 will be discontinued and students who have not completed both courses by Fall 2012 must instead take the new single Computer Architecture course. This course will be offered for the first time in Fall 2012 as CS 398 Special Topics and thereafter as CS 233.
3 CS 241 System Programming
3 CS 242 Programming Studio
3 CS 357 Numerical Methods
3 CS 373 Theory of Computation
4 STAT 400 Statistics and Probability I, or MATH 461/STAT 451 Probability Theory I
3 STAT 410 Statistics and Probability II
3 STAT 428 Statistical Computing
3 MATH 415 Linear Algebra, or MATH 418 Advanced Linear Algebra
3 MATH 347 Fundamental Mathematics, or MATH 441 Differential Equations, or MATH 444 Elementary Real Analysis, or MATH 447 Real Variables
3 CS 473 Algorithms, or CS 475 Formal Models of Computation
3 CS 421Programming Languages and Compilers ,or CS 423Operating Systems Design
3 CS 411Database Systems, or CS 418 Computer Graphics, or CS 446 Pattern Recognition and Machine Learning
3 STAT 420 Methods of Applied Statistics, or STAT 424 Analysis of Variance, or STAT 425 Applied Regression and Design
3 Either STAT 100 Statistics taken during the first 60 hours of coursework (to provide the student an early introduction to statistical concepts), or an additional 400-level statistics course, of which STAT 426 Sampling and Categorical Data is recommended. (Taking the additional 400-level statistics course is designed for students who wish to take STAT 400 before their junior year.)
0 - 6 CS 499 Senior Thesis, or CS 492 Senior Project in CS I and either CS 493 Senior Project in CS II, ACP or CS 494 Senior Project in CS II. These courses are recommended but not required.
9 - 11 Electives

120 Total Hours Required

For additional help in choosing courses, below are prerequisite flowcharts.


5 Year B.S./M.S. in Computer Science (ENG)

For more information or to apply please click HERE 

B.S. Component: 120 hours plus 3 "Breadth Requirement" courses for 9-12 graduate hours

  • Same required courses as the traditional B.S. degree with the minimum hours required reduced to 120 hours.
  • Must complete 3 "Breadth Requirement" courses: three different courses, each from a different area, from the following eight core areas with a grade of B- or higher.
  • University undergraduate student minimum residence requirement satisfied.
  • Overall GPA of 3.0 or higher maintained through the completion of the B.S. component of the program.

M.S. Component: Minimum 16-19 additional coursework hours plus 4 hours of CS 599 thesis

  • Program is identical to the traditional M.S. program with the "Breadth Requirement" satisfied while still classified as an undergraduate.
  • Students who take the "Breadth Requirement" courses for 3 credit hours instead of 4 credit hours will need to complete a minimum of 19 additional coursework hours.
  • Students must satisfy the university's graduate student minimum residence requirement.
  • Students must complete remaining M.S. degree requirements in one academic year (fall-spring-summer or spring-summer-fall).
  • Students must maintain an overall GPA of 3.0 through completion of the M.S. component of the program. 

Minor in Computer Science

The following three courses are specifically required:

Hours Course
4 CS 125 Intro to Computer Science
3 CS 173 Discrete Structures
4 CS 225 Data Structures

Students must take three additional courses from among the following approved courses. At least one of the three courses must be at the 400-level.  Students may apply two or even all three of the additional courses from among the 400-level offerings.

Hours Course
3 CS 231 Computer Architecture (NOTE:  This course was discontinued after Fall 2011)
3 CS 232 Computer Architecture II (NOTE:  This course is being discontinued after Spring 2012)
4 CS 233 Computer Architecture (NOTE: This course will be offered as CS 398 Special Topics during Fall 2012 and Spring 2013, and from Spring 2013 and thereafter as CS 233).
3 CS 241 System Programming (NOTE: This course tends to fill up with CS majors)
3 CS 357 Numerical Methods
3 CS 373 (was CS 273) Theory of Computation
3 Any course number between CS 410 and CS 498 except CS 413, CS 492, CS 493, CS494.
  • ECE 190 may be substituted for CS 125.
  • MATH 213 may be substituted for CS 173.
  • ECE 391 may be substituted for CS 241.

To declare a minor, you should fill out a Statment of Intent to Pursue a Campus-Approved Minor form.  Bring it to 1210 Siebel Center for a signature, then submit the form to your college office.

Note that declaring a minor in CS will not give you an advantage in registering for CS courses.


Software Engineering Certificate

The Software Engineering certificate is available to Computer Science majors in the College of Engineering and requires that the student complete the B.S. Requirements with the following additional requirements.

Students must achieve a minimum B-average (3.0) in courses taken for the Software Engineering Certificate and must "declare" their intent to pursue the Software Engineering Certificate before their last undergraduate semester. To "declare" the Software Engineering Certificate, simply send an email to undergrad@cs.illinois.edu and include your UIN and netid.

All the following courses must be taken.

Hours Courses
4 CS 241 Systems Programming
3 CS 411 Database Systems
3 CS 421 Programming Languages and Compilers
3 CS 425 Distributed Systems
3 CS 431 Embedded Systems or CS 433 Computer System Organization
3 CS 473 Algorithms or CS 475 Formal Models of Computation

Students must also take CS 427 Software Engineering I and either CS 428 Software Engineering II or CS 429 Software Engineering II, ACP. CS 429 satisfies the Advanced Composition requirement. It is assumed that students in the Software Engineering Specialization program will not take the senior project but will take these two courses instead.

Students must take two courses from the following list. Other software-oriented courses may be used, subject to approval by the Director of Undergraduate Programs:

Hours Courses
3 CS 410 Intro to Text Info Systems
3 CS 412 Intro Data Mining
3 CS 414 Multimedia Systems
3 CS 418 Computer Graphics
3 CS 419 Advanced Computer Graphics
3 CS 420 Intro to Parallel Programming
3 CS 422 Programming Language Design
3 CS 423 Operating Systems Design*
3 CS 424 Real-Time Systems
3 CS 426 Compiler Construction
3 CS 431 Embedded Systems**
3 CS 433 Computer System Organization**
3 CS 438 Communication Networks
3 CS 440 Artificial Intelligence
3 CS 446 Machine Learning & Pattern Rec
3 CS 450 Numerical Analysis
3 CS 458 Numerical Linear Algebra
3 CS 461 Computer Security I
3 CS 463 Computer Security II
3 CS 465 User Interface Design
3 CS 476 Program Verification
3 CS 477 Formal Software Dev Methods

* Students who took CS 423 Fall 2005 or earlier should choose another course.

** Students who chose CS 431 to fulfill the core requirements may choose CS 433 as one of the two additional courses - and vice-versa.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.