ECE Focus Area: Software Engineering

Networking CablesFlow ChartBrain Scan Images


Software engineers apply the principles of engineering to design, develop, maintain, test, and evaluate software, computer systems or anything that contains software.

Depending on the courses selected, completion of the software engineering area coursework can provide additional understanding of topics in formal methods of software design, high performance computer architecture, operating systems, database systems, and network communication.

Software engineers are employed worldwide in industry, government, non-profits, education, healthcare, and self-employed. They work as analysts, architects, developers, testers, technical support, managers, educators, researchers, patent lawyers, and consultants.

Students interested in the Software Engineering are encouraged to consider the track and EFA course selection suggestions listed below when completing their plan of study form.

EFA Requirements Suggested Options
Track Computer
Breadth Elective
(select one)
ECE:3540 Communication Networks
Depth Elective
(select one)
ECE:5800 Fundamentals of Software Engineering
ECE:5810 Formal Methods in Software Engineering
5000-Level ECE
(select two)
       All depth electives listed above and
ECE:5820 Software Engineering Languages and Tools
ECE:5830 Software Engineering Project
ECE:5320 High Performance Computer Architecture
Technical Electives
(select three)
       All breadth, depth and 5000-level ECE electives listed above and
REQUIRED: CS:2230  Computer Science II: Data Structures
MATH:3800 Elementary Numerical Analysis
CS:3620 Operating Systems
CS:4400 Database Systems
CS:3980 Topics in Computer Science I
ECE:5330 Graph Algorithms and Combinatorial Optimization
ECE:5300 Switching Theory
Additional Electives
(select two)
Any of the above OR courses selected in consultation with advisor.

Related Links