Description: Lecture, four hours; discussion, two hours. Recommended preparation for undergraduate students: prior software engineering course. Required preparation for graduate students: undergraduate-level knowledge of data structures and object-oriented program languages. As software systems become increasingly large and complex, automated software engineering analysis and development tools play important role in various software engineering tasks, such as design, construction, evolution, and testing and debugging of software systems. Introduction to foundations, techniques, tools, and applications of automated software engineering technology. Development, extension, and evaluation of mini automated software engineering analysis tool and assessment of how tool fits into software development process. Introduction to current research topics in automated software engineering. S/U or letter grading.