The Two-Tier Programming Toolkit

Tool support in software design and evolution

The design of computing systems can only
properly succeed if it is well-grounded in theory, and ... the
important concepts in a theory can only emerge through
protracted exposure to application.
— Robin Milner (1986)

The Two-Tier Programming Toolkit is a prototype for a set of round-trip software
engineering tools of object-oriented (Java, C++, C#, ...) programs developed by
our team. The current prototype supports
software modelling and specifications,
fully-automated conformance checking of Java 1.4 programs (design verification),
and reverse-engineering charts from plain (native) Java 1.4 programs (visualization and
design recovery). A controlled experiment testing the benefits of the
version 0.5.3 of the Toolkit
to Java programmers demonstrates statistically significant evidence (p-value=0.02) that the current prototype saves more than three quarters
of the costs of key tasks in software development and maintenance with only
minimal training (one hour). Read more or watch a video demonstration of the
Two-Tier Programming Toolkit.

Presented at:

Part-funded by:

This page works best with a modern browser (Firefox3, IE8, etc.) and Javascript enabled!