This course is designed to present students with an overview of advanced topics in Software Engineering. Students will be exposed to techniques that are gaining increasing attention in the industrial and research communities. Students will apply the software engineering techniques to homework assignments and mini-projects throughout the course. Both individual and group-oriented exercises will be assigned. Class participation is an essential component of the course. Students will have opportunities to develop and/or improve their technical writing and software development skills during the course of the term.