This page outlines the overall plan for the "CTC Software Technology", to provide some information on the direction we are going.

The Goal - There are two non-conflicting ambitions:

The first is to develop a range of technologies, each capable of being used effectively by itself.

The larger ambition guides the first, and that is to create an overall system that supports rapid model-based system development resulting in applications that are both highly functional and usable.

What this means is that you will be able to:

Of the generated system:

Where We Are Now - The main IStore-based persistence mechanism (GPO) is now mature technology. Both the "read-write" and "write-once" store have been extensively tested and perform excellently.

The refinement of the GPO model to include "formula" definitions is a major breakthrough that unifies the "spreadsheet" and "procedural" computational models.

The Alchemist generator has been refactored to use its own generated model (sic). It can now generate web applications which are being used at a number of commercial sites.

The generated web applications use several novel DHTML techniques to implement usable "drag-n-drop" and dynamic update (means a protocol that allows a single identified element to be updated by a server request).

The Alchemist model includes the concept of "type refinement", allowing the generation of applications that implement effective input validation.

The InterActor package now provides more generic support for Java2D transformations. This has been tested using the new IAMovie class that provides a model to define presentations and animations.

Two utility packages - MiniDOM and Striterators have been released under LGPL and are hosted at java.net. The intention here is to encourage other developers to be able to use and develop some technology that I have found very useful but that I do not consider to be "core" to the main packages.

A number of XML packages have been developed. PDOM is a persistent DOM implementation that is both useful in itself while also serving as an excellent test package for GPO, while QUDOM began as an exercise in java optimisation and has resulted in an extremely practical utility now used internally. These exercises also helped to explore some object modelling stereotypes and investigate the XPath family of query languages. This has proved very fruitful

GPath provides a simple but extremely functional query language. A novel feature is its integration with standard GPO navigation.

A recent addition to the IStore package is the MemStore that provides a WORM implementation but using java memory rather than disk. This was initially developed for performance tests, but it was realised there are other benefits - eg, in-memory performance but with much lower VM requirements.

Latest news 2004/09/08 - The Alchemist web application is now released in alpha form. With this application you can interactively define and experiment with models as they develop, as well as generate java code for the finished model. Take a look at the new whitepaper and let me know what you think.

Some further work on the distribution has seen the full download further reduced to ~1.8Mb.