aher.dev

Unofficial and not affiliated with Duke. A snapshot of classes that were open on 22 Oct 2026. Seats change daily, so confirm in DukeHub before you plan around anything.

Courses / Undergraduate / ECE

ECE 458

Engineering Software for Maintainability

Tyler Bletsch

Description from DukeHub

Students will refine their ability to engineer software, with a focus on maintainability. Teams complete a large programming project whose requirements undergo evolutions during the semester. Prior to each evolution, teams submit their code for the current requirements and a written document analyzing their current design and reflecting on how past design choices impacted their most recent work. Teams must consider appropriate engineering standards and realistic constraints. Prerequisite: ECE 230L, 250D, 270DL, and 280L and (COMPSCI 308 or 307D or ECE 351 or instructor permission) and (MATH 353 or 356) and (STA 130L, MATH 230, MATH 231, ECE 555, ECE 380, STA 240L, EGR 238L, or MATH 340) and (PHYSICS 152L or 26) and (CHEM 101DL, 20, or 21).

Skills

AI-resilient: 1 of 5

  • No: Physical, lab or field work
  • Yes: Live work with people · "teams"
  • No: Judgment someone is accountable for
  • No: A craft you practice with your hands or body
  • No: Small, in-person format

The checks lean on Microsoft Research, Working with AI (2025), which found generative AI applies least to physical work and hands-on work with people. A signal, not a promise. How the score works

More in ECE

All ECE courses · All of Undergraduate