| This course presents advanced tools and methods for developing large software systems. Topics such as: object oriented modeling and design (e.g. UML), component architectures, templates and generic programming, software configuration and revision control, static and dynamic analysis tools, model checking, advanced testing and verification. |