### REQUIRED FOR THE BACHELOR OF SCIENCE IN COMPUTER SCIENCE,COMPUTER SYSTEM CONCENTRATION (128 SEMESTER HOURS)

boldface items indicate differences from the typical CS Bachelor’s degree

### REQUIRED OUTSIDE OF THE COLLEGE OF ENGINEERING (60 SEMESTER HOURS)

- Engl 160 – English Composition I (3 hrs)
- Engl 161 – English Composition II (3 hrs)
- Math 180 – Calculus I (5 hrs)
- Math 181 – Calculus II (5 hrs)
- Math 210 – Calculus III (3 hrs)
**Math 220 – Introduction to Differential Equations (3 hrs)**- Phys 141 – General Physics I (Mechanics) (4 hrs)
**Phys 142 – General Physics II (Electricity and Magnetism) (4 hrs)**- General Education Core (15 hrs)
- Exploring World Cultures (3 hrs)
- Understanding the Creative Arts (3 hrs)
- Understanding the Past (3 hrs)
- Understanding the Individual and Society (3 hrs)
- Understanding US Society (3 hrs)

- Humanities/social sciences/art electives (15 hrs)

### REQUIRED IN THE COLLEGE OF ENGINEERING (38 SEMESTER HOURS)

- CS 101 – Introduction to Computing (3 hrs)
- CS 102 – Introduction to Programming (3 hrs)
**ECE 225 – Circuit Analysis (4 hrs)**- CS 201 – Data Structures and Discrete Mathematics I (4 hrs)
- CS 202 – Data Structures and Discrete Mathematics II (3 hrs)
- CS 266 – Computer Architecture I: Logic and Computer Structures (4 hrs)
- CS 301 – Languages and Automata (3 hrs)
- CS 335 – Computer Ethics (2 hrs)
- CS 366 – Computer Architecture II: Hardware-Software Interface (4 hrs)
- CS 376 – Practicum in Computer Science Presentations (1 hrs)
- CS 385 – Operating Systems Concepts and Design (4 hrs)
**CS 469 – Computer Systems Design (3 hrs)**- Engr 100 – Orientation (0 hrs)Engr 100 carries one equivalent hour; does not carry credit towards graduation.

### TECHNICAL ELECTIVES (18 SEMESTER HOURS)

Students must complete at least 18 hours from among the following technical elective courses, of which at most 11 hours may be from any department outside Computer Science. MCS 471 may count toward *either*the Technical Elective or Mathematics requirement.

- CS 398 – Undergraduate Design/Research (3 hrs)
**CS 401 – Computer Algorithms I (3 hrs)**- CS 411 – Artificial Intelligence I (3 hrs)
- CS 415 – Computer Vision I (3 hrs)
- CS 421 – Natural Language Processing (3 hrs)
- CS 422 – User Interface Design and Programming (3 hrs)
- CS 424 – Visualization and Visual Analytics (3 hrs)
- CS 426 – Video Game Design and Development (3 hrs)
- CS 440 – Introduction to Software Engineering (3 hrs)
- CS 450 – Introduction to Networking (3 hrs)
- CS 455 – Design and Implementation of Network Protocols (3 hrs)
- CS 466 – Advanced Computer Architecture (3 hrs)
- CS 472 – Testing & Verification of Real-Time Software (3 hrs)
- CS 473 – Compiler Design (3 hrs)
- CS 474 – Object-Oriented Languages and Environments (3 hrs)
- CS 476 – Programming Language Design (3 hrs)
- CS 480 – Database Systems (4 hrs)
- CS 485 – Networked Operating Systems Programming (4 hrs)
- CS 488 – Computer Graphics I (3 hrs)
- ECE 340 – Electronics I (4 hrs)
- ECE 367 – Microprocessor-Based Design (4 hrs)
- ECE 465 – Digital Systems Design (3 hrs)
**ECE 467 – Introduction to VLSI Design (4 hrs)**- MCS 320 – Introduction to Symbolic Computation (3 hrs)
**MCS 425 – Codes and Cryptography (3 hrs)**- MCS 471 – Numerical Analysis (3 hrs)
- MCS 481 – Computational Geometry (3 hrs)
- Stat 471 – Linear and Non-Linear Programming (3 hrs)

### REQUIRED MATHEMATICS COURSES (9 SEMESTER HOURS)

Students must complete at least *6 hours* from among the following list of courses, with at least one course taken from IE 342 (Probability and Statistics for Engineers), Stat 381 (Applied Statistical Methods), *or* Stat 401 (Introduction to Probability).

- One of the following three courses
*must*be chosen: (3 hrs)- IE 342 – Probability and Statistics for Engineers (3 hrs)
- Stat 381 – Applied Statistical Methods (3 hrs)
- Stat 401 – Introduction to Probability (3 hrs)Students may take both Stat 381 and Stat 401, although students who take IE 342 will not receive credit for either Stat course.

- Math 215 – Introduction to Advanced Mathematics (3 hrs)
- One of the following two courses may be chosen: (3 hrs)
- Math 310 – Applied Linear Algebra (3 hrs)
- Math 320 – Linear Algebra I (3 hrs)

- Math 430 – Formal Logic I (3 hrs)
- Math 435 – Foundations of Number Theory (3 hrs)
- Math 436 – Number Theory for Applications (3 hrs)
- MCS 421 – Combinatorics (3 hrs)
- MCS 423 – Graph Theory (3 hrs)
- MCS 471 – Numerical Analysis (3 hrs)
- Stat 473 – Game Theory (3 hrs)

Note that students may choose to use MCS 471, Numerical Analysis, toward either the CS technical elective requirement (from outside the CS department) or toward the required mathematics requirement, but not both.

### FREE ELECTIVES (6 SEMESTER HOURS)

**Typical Schedule for the Computer Science Major, Computer Systems Concentration**

**FIRST YEAR**

Fall semester – 17 hrs
Math 180 – Calculus I (5) Humanities/social sciences/arts elective (3) General Education Core course (3) Engl 160 – English Composition I (3) CS 101 – Introduction to Computing (3) Engr 100 – Orientation (1 hrs, 0 credits) |
Spring semester – 17 hrs
Math 181 – Calculus II (5) Engl 161 – English Composition II (3) CS 102 – Introduction to Programming (3) Humanities/social science/arts elective (3) General Education Core course (3) |

**SECOND YEAR**

Fall semester – 17 hrs
Math 210 –Calculus III (3) Humanities/social science/arts elective (3) General Education Core course (3) CS 201 – Discrete Math/Data Structures I (4) Phys 141 – General Physics I (4) |
Spring semester – 16 hrs
Math 220 – Intro to Differential Equations (3) CS 202 – Discrete Math/Data Structures II (3) Phys 142 – General Physics II (4) Humanities/social science/arts elective (3) General Education Core course (3) |

**THIRD YEAR**

Fall semester – 17 hrs
CS 266 – Computer Architecture I (4) CS 301 – Languages and Automata (3) ECE 225 – Circuit Analysis (4) Required mathematics course (3) Free elective (3) |
Spring semester – 16 hrs
CS 366 – Computer Architecture II (4) Technical electives (6) Required mathematics course (3) General Education Core course (3) |

**FOURTH YEAR**

Fall semester – 14 hrs
CS 376 – Practicum in CS Presentations (1) CS 385 –Operating Systems Concepts (4) Technical electives (6) Humanities/social science/arts elective (3) |
Spring semester – 14 hrs
Technical electives (6) CS 335 – Computer Ethics (2) CS 469 – Computer Systems Design (3) Free elective (3) |