CMSC 838Z Spring 2004

Tools and Techniques for Software Dependability

Instructor Michael Hicks
CSI 2120 TuTh 3:30-4:45pm
Office Hours TuTh 10:00-11:00am AVW 4131

Syllabus / Schedule / Resources / Wiki

Most researchers and practitioners have come to the realization that as software systems pervade nearly all aspects of society, software's dependability has become a paramount concern.  As a result, we are seeing a proliferation of tools designed to improve the quality of software.  These tools employ a wide variety of techniques, including type-checking, theorem proving, constraint-based analysis, model checking, dataflow analysis, and dynamic monitoring, to name a few.  In this course, we will seek to understand the technical aspects and mathematical theory behind these analysis techniques, and examine their utility in particular tools.  Students will have an opportunity to use and critique a variety of open-source tools, and do a non-trivial project towards the goal of improving software quality.


Final Exam  with answers has been posted.