April 29, Tuesday
12:00 – 14:00
Tools for Design by Contract
Computer Science seminar
Lecturer : Yishai Feldman
Affiliation : IBM Haifa Research Lab
Location : 202/37
Host : Prof. Mira Balaban
Design by contract is a practical methodology for developing code
together with its specification. It enhances code quality in several
significant ways. It is an integral part of the Eiffel language, but
is little used outside that community. A major reason for that is the
lack of tools supporting the methodology in other languages.
In this talk I will describe several tools that support design by
contract in Java. One tool instruments Java programs with their
contracts for runtime checking. Another is an Eclipse plugin that
refactors programs with their contracts, modifying the contracts as
well as using them to check the correctness of the proposed
transformations. A third tool attempts to discover draft contracts
for existing code, enabling the use of the methodology for code
originally developed without contracts.