This course presents Software Engineering topics of interest to students in the graduate Computer Science program. Topics vary with each offering of this course, but will be related to Software Engineering concepts such as verification, validation, secure systems, quality control, or formal methods. Check the class schedule for details about topics and course prerequisites.
- Understand the place of issue X in modern software engineering theory and practice.
- Integrate issue X into appropriate software development processes (e.g., waterfall process, agile development).
- Integrate issue X into software system requirements.
- Design a software system taking into account issue X.
- Develop tests for a software system to verify that issue X requirements are met.
- Build a simple computer system in which issue X functionality is present.
- Demonstrate expertise in reading peer-reviewed papers in issue X and explain them in writing.
- As an example of this, consider the topic Aspect-oriented software engineering. These outcomes might become as follows: Understand principles and key concepts of aspect-oriented software engineering theory and practice Integrate aspect-oriented software engineering into other contemporary models of software engineering Merge aspect-oriented software development with use case modeling for software system requirements Design a software system using the aspect-oriented paradigm Test and refactor a system designed using the aspect-oriented methodology Build a computer system using a