Software Engineering
Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; implementation and programming practices; software testing and validation techniques; software maintenance practices; software engineering for and with AI; software engineering ethics and open source. Undergraduates work in teams to propose, design, implement, and validate a significant software system. Graduate students complete additional advanced tasks on assignments and project demos (e.g., deeper analysis, advanced features, and more systematic testing). Offered as CSDS 393 and CSDS 493 . Prereq: ( CSDS 233 or ECSE 233 ) with a C or higher.
Sources
- Course catalogue ↗2026-2027