Hosted web-based services can provide many benefits, usually requiring no hardware or software installation, and enabling users to log in from anywhere whether they are using PCs or Macs. However, developing a browser-based application is not without its challenges, and here we list some of the most common:
1. Display quirks. The best web based solutions will work seamlessly across different web browsers and platforms. In practice, this means that pages should be developed in line with modern ‘web standards’ and tested thoroughly in all of the major browsers, including Internet Explorer, Firefox, Safari, Chrome and Opera. The challenge is that each is likely to have its own set of quirks that can cause the same layout to display differently, ranging from subtle problems (a pixel or two out) to completely broken pages (including overlapping columns and unreadable text). In some cases it may therefore be necessary to implement browser-specific rules in order to maintain compatibility.
2. Security. All services that can be accessed via the web should take security seriously, and protect themselves against common vulnerabilities. This includes careful handling of values entered into online forms, which may contain malicious code aimed at gaining unauthorised access to data. Effective access control is vital, and may provide the option to lock down the service to specific IP addresses so that only staff within your organisation can use it. Users themselves must also play their part by ensuring that they are running the latest browser versions, which will incorporate recent security updates from the browser manufacturers.
3. Page load times. Users expect web services to be fast, with Google searching and returning billions of results in seconds, and research showing that internet users will quickly give up and leave a site if they are kept waiting for too long. In addition to other benefits, making pages valid and accessible can also ensure they are lightweight, significantly improving load times over old fashioned ‘table-based’ layouts. Where a process requires time to run, it is helpful to provide a visual cue such as a progress bar, rather than displaying a blank or incomplete page until everything is finished.
4. The Back button. The Back button is an invaluable navigation aid for users, giving them confidence to explore and try out new features in the knowledge they can always retrace their steps. In dynamic data based sites this often presents a development challenge, as whilst moving users back, it does not automatically ‘undo’ their previous action. It is therefore common for sites to try to disable the Back button, by opening a new window that is missing browser navigation or by using tricks to make users stick at their current location. A better, but more difficult approach is to allow the use of Back but maintain state within the application, which can be achieved by using special hidden ‘tokens’ within links and forms.