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 Model

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!