This course teaches the fundamentals of Software Engineering, including processes, design, testing, and verification.
For programming assignments, we use Java, a widely-used object-oriented programming language.
We will learn how to work with existing large software projects as well as how to create software artifacts.
Name: Kyungmin Bae
S. McConnell, Code Complete: A Practical Handbook of Software Construction
I. Sommerville, Software Engineering
- Software processes
- Requirement engineering
- Project management
- Object-oriented designs and UML
- Refactoring and debugging
- Testing and verification
- Design patterns
- Formal methods