I've been working on a project for one my biggest customers now for many months. The system is huge, has automated a huge amount of work previously done by hand, and quite a bit on its own depending on specific business rules. One of the things it does is pull together various bits and pieces of information and puts it together into a single item for further processing.
The difficulty has been that there are so many rules, so many different conditions, and a variety of other things that affect the output, it gets to be quite difficult to test and preview the items. On Tuesday, I had an idea… AJAX.
There are two primary pieces of data that form the core of everything else. One is automatically generated from data coming into the system. The other is user-configurable on a case by case basis but has some default values.
Therefore, I built a simple preview screen, both for the default values and the complete object. It simply pulls all the pieces of the object and displays them similarly to the final output.
It doesn't do anything complicated at all, but what it does do makes the users feel good. It shows the Customer what they can expect to see if they continue on with the values they've selected and most importantly it allows them to see the their changes reflected in realtime. The power of this has been amazing.
After only being deployed for an hour, an interface previously called “clunky” has been called “beautiful” and “elegant”. All of this from a bit of simple AJAX that took 3 hours to write, test, and deploy. Where's the downside?