Case study: CollegeNET's space analysis and reporting package for colleges and universities

CollegeNET logo

From Andy Haydon, VP, Software Development at CollegeNET:

Our previous web applications used a lot of effort (in both development terms and during actual execution) to generate HTML pages, XForms allows for a much greater separation of concerns so that we now have static HTML pages and a set of 'web services' to provide data. This has lead to an improved development cycle and a reduced level of hardware.

The web application CollegeNET have produced, is a space analysis and reporting package targetted at colleges and universities. CollegeNET sell a standard client/server application that manages the operational aspects of scheduling classrooms and other space on a campus.

We chose XForms because we wanted a rich user experience that approached the level of interactivity available in traditional client/server applications. Also wanted an architecture that did a better job of separating presentation from content. Our previous web applications used a lot of effort (in both development terms and during actual execution) to generate HTML pages, XForms allows for a much greater separation of concerns so that we now have static HTML pages and a set of "web services" to provide data. This has lead to an improved development cycle and a reduced level of hardware.

There is a development/QA team of 6 people (but not including documentation, training personnel) and there is a separate steering group focused on functionality and design issues. We started work in July 2003 with a completely blank slate, there had been very little planning or design to that point, all we had was an idea - X25 is an evolution of one of our earlier products, but one that we had not touched or used for 8 years. We were also about to try to use a new set of tools and technologies - XForms, SVG, a charting package called GraPL, a major new version of our 4GL development tool, Uniface 8, more in depth usage of DB2 (we'd only done cursory work with DB2 before), and a bunch of other technologies we'd used before but not very extensively and so not quite sure where they could be used to maximum benefit - XML, XSLT.

We narrowed the use of the tools down to XForms/XHTML and SVG on the client, our application is pretty targetted at a limited user base so the mandatory requirements (IE 6 + plugins for SVG and fP) was not a significant hindrance to us. On the server side we using the Apache web server, Tomcat, Uniface 8 and GraPL.

Without XForms we would have fallen back on to the standard techniques for a web application with server side generated HTML and embedded data. The user experience would be poorer and overall performance would be slower. Also I doubt we would be as far along as we currently are in the development cycle.

Our XForms learning cycle has been mainly limited to syntax and general newness of the specification and the technology. fP has come a long way since last summer. The way to architect an application for XForms has not been a big issue for us because of our client/server background and the concept of splitting presentation from content. Uniface does a very good job of this and has the additional benefit of being able to easily produce data in XML format, indeed it is the easiest way for Uniface to expose data.

One of our reasons for experimenting with XForms was to see if it was a suitable technology for more larger scale web application development, ie. porting our UI rich client/server application to the web. And as it stands at the moment it is looking good but to reach that wider audience we would like to see more platform support.