skip to main content

The Software Engineering Certificate is available to Computer Science majors in The Grainger College of Engineering and requires that the student complete the bachelor's degree 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 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 374 Intro Algs & Models of Comp

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.

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:


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 Devel Methods

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