Fall 2005 Course Announcement
                          CS 598, Section DM
                      Instructor: Darko Marinov

                    Software Testing and Analysis

                    2pm - 3:15pm, Tuesday/Thursday
                          1111 Siebel Center
                              CRN: 43666
                       Credit: 4 graduate hours

This course will be a graduate seminar on dynamic and static program
analysis for finding software errors, with an emphasis on systematic
software testing.  A 2002 NIST report estimates that software errors
cost the U.S. economy $59.5 billion annually and that improving
testing infrastructure could save $22.2 billion.  We will discuss
techniques and tools that could significantly reduce this cost.  The
focus will be on analysis of code, but we will also cover analysis of
software models and their use in testing.

Students will get familiar with the technical results as well as with
the process of doing research in software testing and analysis.  The
aim is to help students start research in this field or apply its
results in their ongoing research.  The course readings will include
classic papers and current state-of-the-art work.  Students will read
papers ahead of time, participate in discussions, present at least one
paper during the course, and do a research project in small teams or
individually.  Students will also write a paper describing their
project and present their work at the end of the course.  In Spring
2005, students submitted four papers (two to conferences and two to
workshops) based on their projects.

Grading will be based on participation, presentation, and project.
The final project will contribute the most to the grades.

Prerequisites: Students should have basic knowledge of software
engineering and programming languages.  If you are not sure whether
you can attend this course, please consult the instructor.