Until 2003 I have worked with Richard Rasala and Jeff Raab on the design and implementation of the Java Power Tools libraries.
Java Power Tools is a toolkit which provides high level abstractions for the design of GUIs in Java, and a program development framework for instant experimentation and testing.
The Java Power Tools (jpt) enable the rapid development of Java graphical user interfaces with automatic error checking of all user input. By systematic abstraction (extreme encapsulation) that brings the central issues of GUI building to the forefront and hides all details that are purely technical, the Java Power Tools permit small GUIs to be built in minutes and large GUIs in an hour or so. These tools are particulary useful for faculty and students who wish to use GUIs but do not wish to spend a great deal of time on their creation. In recent enhancements to the tools, users may also paint shapes, images, and text with ease.
The Java Power Tools include the Java Power Framework (jpf) that enables both instant experimentation and systematic testing. The JPF is so easy to use that freshman students may build simple experiments in the first weeks of a course. The JPF is also powerful enough that it scales to testing of large systems with both textual and graphical output and complex user interaction.
We introduce jpt in the last lab of our introductory course to illustrate the key principles of the GUI design as well as the difficulties the programmer faces when parsing and verifying text-based user input. We use the jpf to support the user interations in our Stress Tests Lab.