The study of the software development process from initial requirements analysis through the operation and maintenance of the final system. The course covers the organization of software development projects, verification and validation of systems, security and privacy, legal aspects of software development, and sustainable computing.
It is taught for the age of AI. Assistants and agents now write code in seconds; the engineering questions remain — what should be built, how do we know it is right, safe and fair, and who is responsible when it runs in the real world? Throughout the course, students learn to use AI where it helps and to verify everything it produces.