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

                    Software Testing and Analysis

                  3:30pm - 4:45pm, Tuesday/Thursday
                          1131 Siebel Center
                              CRN: 39667


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
promising 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.

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.