The Bachelor of Science in Engineering (B.S.E.) program in computer science and engineering combines the technical content of a computer science degree and a computer engineering degree in a single degree program. The program curriculum is jointly taught by faculty from the Department of Electrical and Computer Engineering and the Department of Computer Science (College of Liberal Arts and Sciences). The program provides students with a strong theoretical and conceptual understanding of the principles underlying computer software and hardware along with the engineering analysis, design, and multidisciplinary teamwork skills needed to develop large and complex systems containing both software and hardware components.
The computer science and engineering program encompasses the technical rigor of a Bachelor of Science program in computer science and a Bachelor of Science program in computer engineering. This major is jointly accredited in computer science and computer engineering by the Accreditation Board for Engineering and Technology (ABET). Graduates gain the foundational knowledge provided by a computer science education together with the critical thinking, problem-solving, and system design skills at the heart of a computer engineering curriculum.
The major provides technical depth and breadth as well as flexibility and the opportunity for students to customize their programs according to their own goals and interests. Students choose one of several focus areas according to the type of job or research they plan to pursue; students also have the opportunity to work with their academic advisor to build a focus area plan that adheres to their goals and interests. Students select a focus area to personalize their curriculum and to prepare them for certain jobs or research study they intend to seek.
In their senior year, students complete a two-semester capstone design sequence culminating in the development and implementation of a significant, original project. The capstone design experience emphasizes teamwork, professionalism, open-ended problem solving, and the ability to work within real-world constraints and engineering standards.
Graduates of the computer science and engineering program will:
- exhibit leadership and vision in contributing to the computing-related technical and policy decisions of industry, government, and research enterprises;
- demonstrate computing skills and problem-solving abilities that permit them to contribute in a variety of technical, business, and academic careers;
- thrive in diverse, global, and multidisciplinary environments;
- possess the ability to communicate effectively and participate collaboratively in interactions with other computing and engineering professionals; and
- understand the importance of participating in lifelong learning activities that enhance their professional and personal development.
The Bachelor of Science in Engineering with a major in computer science and engineering requires a minimum of 129 s.h. of credit. Students must have a g.p.a. of at least 2.00 on all college work used to satisfy degree requirements as well as on all coursework attempted at the University of Iowa.
All B.S.E. students are required to take the same collegiate curriculum. For information about these collegiate requirements, see the Bachelor of Science in Engineering, B.S.E. in the Catalog. Students completing the major in computer science and engineering fulfill the collegiate statistics requirement by completing STAT:2020 Probability and Statistics for the Engineering and Physical Sciences.
The major in computer science and engineering requires the following coursework.
Major requirements include a set of common courses (52 s.h.), one departmental seminar (1 s.h.), and two capstone design courses (6 s.h.).
|All of these:|
|ECE:2400||Linear Systems I||3|
|ECE:2410||Principles of Electronic Instrumentation||4|
|ECE:3320||Introduction to Digital Design||3|
|ECE:3330||Introduction to Software Design||3|
|ECE:3350||Computer Architecture and Organization||3|
|CS:1210||Computer Science I: Fundamentals||4|
|CS:2230||Computer Science II: Data Structures||4|
|CS:3820||Programming Language Concepts||3|
|ENGR:2730||Computers in Engineering||3|
|PHYS:1612||Introductory Physics II (with lab)||4|
|ECE:3000||Electrical and Computer Engineering Professional Seminar||1|
Capstone Design Courses
In their senior year, students complete a two-semester capstone design sequence culminating in the development and implementation of a significant, original project.
|Both of these:|
|ECE:4880||Principles of Electrical and Computer Engineering Design||3|
|ECE:4890||Senior Electrical and Computer Engineering Design||3|
Students must select focus area courses according to guidelines established by the Department of Electrical and Computer Engineering. A number of established focus areas are available, and students also may work with their academic advisor to create a customized plan tailored to their goals and interests.
Students complete a minimum of 17 s.h. in elective courses for the focus area (typically six courses) and one complementary theory elective course (3 s.h.). Carefully selected elective and general education courses may contribute to earning a minor and/or certificate, including the Certificate in Sustainability (University College) or the Certificate in Technological Entrepreneurship.
For a complete list of focus areas and course selection guidelines, see Focus Areas on the Department of Electrical and Computer Engineering website. Although general guidelines and requirements for elective courses are listed below, course recommendations for specific focus areas differ. While some courses may apply to more than one focus area requirement, a single course may only count once toward completing a focus area.
Electrical and Computer Engineering Electives
Students choose two focus area electives from courses with prefix ECE not already required for the major. Students must consult an academic advisor and gain approval from the undergraduate curriculum chair to count ECE:5998 Individual Investigations: Electrical and Computer Engineering toward this requirement.
|Both of these:|
|Technical course in the Department of Electrical and Computer Engineering numbered ECE:3400 or above, excluding ECE:3998, ECE:5000, and ECE:5999||3-4|
|Advanced course in the Department of Electrical and Computer Engineering numbered ECE:5001-ECE:5995||3|
Computer Science Electives
Students choose two focus area electives from computer science courses not already required for the major. At least one course must be considered advanced for the elective—courses numbered CS:4330 and above, as defined in the table below.
Students may be able to complete computer science courses not listed here; see the Approved Computer Science Elective Courses web page on the Department of Electrical and Computer Engineering website for more information.
|Two of these:|
|CS:3700/MATH:3800||Introduction to Numerical Methods||3|
|Computer science course numbered CS:4330-CS:5980, excluding CS:4510, CS:5110, and CS:5630||3-4|
Students select additional courses to reach a minimum of 17 s.h. in focus area electives. Courses may be from the electrical and computer engineering (prefix ECE) or computer science (prefix CS) categories above, or they may be chosen from outside of those lists with approval of an academic advisor.
|One of these:|
|ECE:5330/IGPI:5331||Graph Algorithms and Combinatorial Optimization||3|
|ECE:5520||Introduction to Information and Coding Theories||3|
|ECE:5810/CS:5810||Formal Methods in Software Engineering||3|
|ECE:5995||Contemporary Topics in Electrical and Computer Engineering (when topic is cryptography)||3|
|CS:4330||Theory of Computation||3|
|CS:4350||Logic in Computer Science||3|
|CS:5340||Limits of Computation||3|
|CS:5620||Distributed Systems and Algorithms||3|
|CS:5860||Lambda Calculus and Applications||3|
Double Major in Computer Science and Engineering/Electrical Engineering
Students may earn a double major in computer science and engineering (CSE) and electrical engineering (EE). They must satisfy all requirements of the electrical track of the EE major and all requirements of the CSE major.
B.S.E./M.S. in Electrical and Computer Engineering
The College of Engineering offers a Bachelor of Science in Engineering/Master of Science for computer science and engineering undergraduate students who intend to earn a M.S. in electrical and computer engineering. B.S.E./M.S. students may take up to 12 s.h. of graduate-level coursework and do thesis-level research while they are still undergraduates. They may count 9 s.h. of graduate coursework toward both degrees. Once students complete the requirements for the bachelor's degree, they are granted the B.S.E., and they normally complete the M.S. one year later.
To be admitted to the degree program, students must have completed at least 80 s.h., must have a cumulative g.p.a. of at least 3.25, and must submit a letter of application to the chair of the Department of Electrical and Computer Engineering. For more information, see Joint B.S./M.S. Degree Undergraduate to Graduate (U2G) program on the Department of Electrical and Computer Engineering website.
The College of Engineering and the Department of Computer Science (College of Liberal Arts and Sciences) offer a combined Bachelor of Science in Engineering/Master of Computer Science for computer science and engineering undergraduate students.
The combined degree program allows students to count a limited amount of credit toward both degrees. For more information, see the Master of Computer Science, M.C.S. in the Catalog.
Students who earn a major in computer science and engineering work in research, design, development, manufacturing, sales, market analysis, consulting, field service, and management. They are employed in computer, semiconductor, software, aerospace, telecommunication, medical, radio, television, and power industries, and many graduates pursue entrepreneurial ventures.
The major also prepares students for further study in many areas demanding computational and engineering skill sets.
Engineering Career Services develops and promotes experiential education and professional opportunities for students in the College of Engineering. Professional staff coordinate the college's co-op and internship program, engage in employer outreach, and provide opportunities for students to network with employers, including engineering career fairs and other programming related to career development.
Engineering Career Services offers individual advising and class presentations on résumé and cover letter preparation, job and internship search strategies, interviewing skills, job offer evaluation, and much more. Engineering Career Services partners with the Pomerantz Career Center to facilitate on-campus interviewing, postgraduation outcome collection, and the University's online recruiting system, Handshake.
Sample Plan of Study
Sample plans represent one way to complete a program of study. Actual course selection and sequence will vary and should be discussed with an academic advisor. For additional sample plans, see MyUI.
Computer Science and Engineering, B.S.E.
This sample plan is being reviewed and will be updated at a later date.