Computer Engineering Major (B.S.)

In addition to the university's mandatory Discovery Program requirements, degree candidates must complete our core program (freshman through junior years).  In the senior year, students select professional technical electives in the areas of their interest.   They also carry out a student-designed project to acquire both breadth and depth of study and to integrate knowledge across course boundaries.

For a detailed semester by semester list of requirements for the four years of study, please refer to the Degree Plan tab.

In addition to Discovery Program requirements, the department has a number of grade-point average and course requirements:

  1. Any computer engineering major whose cumulative grade-point average in ECE and computer science courses is less than 2.0 during any three semesters will not be allowed to continue as a computer engineering major.
  2. Computer engineering majors must achieve a 2.0 grade-point average in ECE and CS courses as a requirement for graduation.

To make an exception to any of these departmental requirements based on extenuating circumstances, students must petition the department's undergraduate committee. Mindful of these rules, students, with their adviser's assistance, should plan their programs based on the distribution of courses found in the Degree Plan tab.

Required Courses

CS 415Introduction to Computer Science I4
CS 416Introduction to Computer Science II4
CS 515Data Structures and Introduction to Algorithms4
CS 520Assembly Language Programming and Machine Organization4
ECE 401Perspectives in Electrical and Computer Engineering4
ECE 541Electric Circuits4
ECE 543Introduction to Digital Systems4
ECE 548Electronic Design I4
ECE 562Computer Organization4
ECE 583Designing with Programmable Logic4
ECE 602Engineering Analysis4
ECE 603Electromagnetic Fields and Waves I4
ECE 633Signals and Systems I3
ECE 634Signals and Systems II3
ECE 647Random Processes and Signals in Engineering3
ECE 649Embedded Microcomputer Based Design4
ECON 402Principles of Economics (Micro)4
or EREC 411 Environmental and Resource Economics Perspectives
MATH 425Calculus I4
MATH 426Calculus II4
MATH 527Differential Equations with Linear Algebra4
MATH 645Linear Algebra for Applications4
PHYS 407General Physics I4
PHYS 408General Physics II4
Capstone 2
ECE 791Senior Project I2
ECE 792Senior Project II2
Professional Electives
Choose two ECE 700-level courses 18
Select two courses from the following:8
Introduction to Object-Oriented Design and Development
Operating System Fundamentals
Introduction to the Theory of Computation
Database Management
Electronic Design II
Electrical and Computer Engineering Projects
Special Topics
Other Courses
Discovery requirements not already covered by required courses24
Total Credits133
Plan of Study Grid
First Year
ECE 401 Perspectives in Electrical and Computer Engineering 4
MATH 425 Calculus I 4
CS 415 Introduction to Computer Science I 4
ECON 402
Principles of Economics (Micro)
or Environmental and Resource Economics Perspectives
ECE 543 Introduction to Digital Systems 4
MATH 426 Calculus II 4
CS 416 Introduction to Computer Science II 4
ENGL 401 First-Year Writing 4
Second Year
ECE 562 Computer Organization 4
PHYS 407 General Physics I 4
MATH 527 Differential Equations with Linear Algebra 4
CS 515 Data Structures and Introduction to Algorithms 4
ECE 583 Designing with Programmable Logic 4
PHYS 408 General Physics II 4
CS 520 Assembly Language Programming and Machine Organization 4
MATH 645 Linear Algebra for Applications 4
Third Year
ECE 541 Electric Circuits 4
ECE 602 Engineering Analysis 4
ECE 633 Signals and Systems I 3
ECE 649 Embedded Microcomputer Based Design 4
Discovery Program Category 4
ECE 548 Electronic Design I 4
ECE 603 Electromagnetic Fields and Waves I 4
ECE 634 Signals and Systems II 3
ECE 647 Random Processes and Signals in Engineering 3
Discovery Program Category 4
Fourth Year
Two Professional Electives 8
Two Discovery Program Categories 8
ECE 791 Senior Project I 2
Two Professional Electives 8
Discovery Program Category 4
ECE 792 Senior Project II 2
 Total Credits133

The Program Educational Objectives for the Computer Engineering Program are as follows:

  • An ability to apply knowledge of mathematics, science, and engineering.
  • An ability to design and conduct experiments, as well as to analyze and interpret data.
  • An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability.
  • An ability to function on multidisciplinary teams an ability to identify, formulate, and solve engineering problems.
  • An understanding of professional and ethical responsibility.
  • An ability to communicate effectively.
  • The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context.
  • A recognition of the need for, and an ability to engage in life-long learning a knowledge of contemporary issues.
  • An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.