Switch to Web 2.0 boosts business agility for uSwitch

Utility price comparison website uSwitch.com has completed a £1m overhaul of its website infrastructure, deploying several of the latest web technologies during the 10-month project.

Utility price comparison website uSwitch.com has completed a £1m overhaul of its website infrastructure, deploying several of the latest web technologies during the 10-month project.

In February, uSwitch also adopted customer experience management software, which it is using to improve the conversion of site visits into sales.

uSwitch provides a free and independent online and phone-based service, which compares hundreds of up-to-date prices for services including gas, electricity, telephone, broadband, credit cards and bank accounts. These prices, which are provided by the supplier companies and industry regulators, are held by uSwitch in a SQL Server 2005 database.

The company has developed a set of proprietary price comparison calculators based on emerging web technologies such as Ajax interactive web tools, Micro­soft's .net 2.0 and .net 3.0 service oriented architecture (SOA) environments.

Richard Stables, chief technology officer at uSwitch.com, said that embracing new technologies at an early stage and short development cycles using agile application development processes were key to ensuring that the website runs smoothly and offers a good user experience.

Agile processes typically require coders to work on projects for short periods to produce "iterations", which can be used to gain user feedback as the development progresses.

"We know at the start of the process the features to include in the new iteration, which usually lasts two weeks, unless we are undertaking a major new development, such as a new calculator," said Stables.

By working in this way, any IT alterations are in line with the business requirement, and the development team can ensure that it is constantly on track, he added.

"Agility is what makes the difference in today's internet services arena. Business and IT share the vision of where the company is going, and we have set up our development practices to respond to business change as dynamically as possible," said Stables.

At the end of last year, the company used these processes to add a channel to its website which compares mobile phone tariffs across a number of suppliers' services.

"We have invested a considerable amount of time and energy in developing our internal libraries: a set of .net 2.0 assemblies, page layouts, styles, images and textual information, taking care of the look and feel of our website, and the customisation required by our partners, such as different images and different text, for their co-branded sites," said Stables.

"This initial investment is helping us enormously in launching new calculators in a relatively short time.

"The mobile telephone channel, which went live before Christmas 2006, required us to develop the code to manage tariff data and the business rules to calculate best buys. With solid architectural foundations, we were able to plug this new product into our existing infrastructure comfortably."

uSwitch's infrastructure

Price comparison website uSwitch.com can support an average of 5,000 user sessions per day, partly due to its scalable IT infrastructure and partly because it has deployed the latest web technologies.

Most of its applications are written in Microsoft's .net 2.0 and the latest .net 3.0 service oriented architecture (SOA) environments, with SQL Server 2005 as the back end data store.

Richard Stables, chief technology officer at uSwitch.com, said, "Ajax technologies are already used on the website, but we are now pushing this technology further, to make our offering more intuitive and user-friendly.

"With Windows Vista around the corner, we are looking at new ways of interacting with our customers, such as desktop gadgets and WPF [Windows Presentation Foundation] applications."

Both of these refer to rich client applications that run in a browser.

Ajax and Agile software development

Ajax (Asynchronous Javascript and XML) is a programming language that enables users to build interactive applications for the web. It is mainly used to create rich applications that run over the web and offer easy-to-use Windows-like functionality.

Agile software development offers a way to get end-users involved in building applications. Code for an application being developed is reviewed by end-users on a regular basis and their feedback is then incorporated into the next revision of the application. The aim is to keep coding simple. Applications are tested frequently and new functionality is delivered on a regular basis.

Agile contrasts with the traditional waterfall approach to development, which divides the process of creating new software as a series of iterative steps. Application development begins at a high level requirements-gathering stage, and moves steadily downwards through design, implementation, testing (validation), integration and maintenance.

Related article: Web 2.0: CIOs want it their way

Related article: Web 2.0 tools of the trade

Comment on this article: [email protected]

Read more on Web software