Type of project:
Diplomarbeit 06 June 2003 - 05 October 2003

Dominik Wotruba

Contract Wizard II



Part of a general effort of improving existing components by adding contracts a posteriori (see draft paper about closet contracts in .NET libraries). An analysis of the .NET Collections library has shown the presence of implicit contracts, which legitimates the development of a Contract Wizard (see paper here). A first version of this tool has been developed in 2001 with a beta version of .NET (see TOOLS USA 2001 paper. It takes advantage of the .NET Metadata and Reflection techniques to enable a user to add contracts to an already compiled module coming from a language without support for Design by Contract, such as C# or Java.
The goal of this project is to update the wizard with the latest version of .NET, extend it, and possibly turn it into a Web service.

 Project plan

 Final report