General Guidelines for Designing Web Applications
Sunday, October 31, 2004
Posted by: Minal Thakkar
By Minal Thakkar
Assistant Professor, Southern Illinois University - Carbondale
How many times have you visited a Web site and decided not to return back to it? Why? Was it due to bad user interface, slow download time, data not encrypted, difficulty in finding information or broken links?
Attracting customers to a Web site is challenging. But, to retain them is even more challenging. Merely offering promotions or spending a lot on marketing the site is just not enough. Customer experience on the site is a crucial ingredient, as it is in the case of physical stores. This article focuses on 11 key areas that not only help you design a good Web application, but also increases your customer retention power.Presenting the user interface
Look and feel: Where practical, keep Web pages small enough to be displayed without requiring any horizontal scrolling and without requiring significant vertical scrolling. Provide a logical organization to the Web site and its pages. Keep the Web page cohesive, containing only related information. Be consistent within and across Web pages within a single application to produce a common look and feel. Limit the use of frames to three or four per page to avoid unnecessary scrolling.
Navigation: Maintain consistent navigation throughout the application. Develop company-wide standards for navigation. Always have Home (for the application) and Help buttons and if your application requires Log-in, then provide a Log-out button. Always provide a link to the previous page instead of asking the user to click on the browser's back button.
Error messages: Display appropriate and user-friendly error messages that make sense to the user. Don't just display the run-time system messages or stack trace.
Authentication: For applications that require log-in, use standard authentication mechanisms using SSL to ensure data security across the network.
Authorizations: Use authorizations to provide role-based content.
Validating user inputs: Although the business and data tier must enforce constraints on model data (since they contain the data), the Web client should also enforce data constraints by validating user inputs.
HTML forms: Use "post" instead of "get" to submit the data entered by the user in a HTML form.
Help: Provide a Help section either as part of customer service or as a separate section.
Contact information: Include other customer service features, like contact information for questions, information and feedback.
Bulletin board: Depending on your business and application requirements, you may want to include a bulletin board for latest updates, customer announcements, scheduled system outages and other information.
Graphics: Avoid large graphics that take a long time to load. If possible, display a thumbnail with a link to the actual larger picture.
Response time: Do not turn your entire Web site into an application using ASP and JSP pages. This is not very efficient. Web servers serve static files much faster than dynamic content generated from the scripting files. Make sure to clean your code of debugging statements and remove dead code. Be judicious in writing to the log files as it can considerably slow down the system.
More and more companies are providing their users with the ability to personalize Web sites and applications. This can be as simple as bookmarks to favorite pages, changing page colors or saving default search criteria. One of the advantages offered by corporate portals is personalization.
Cross browser support
While this may not be an issue for internal sites and applications, it is critical for external facing sites and applications. Test your application with at least the major browsers in the market like Netscape, Internet Explorer, Mozilla and AOL. Also important is backward compatibility for older browser versions.
This is not a widely followed concept yet. But many corporations and organizations, especially the government, are trying to develop sites and applications that are accessible. Check the W3C Web site for more information and the latest developments in this area.
For e-commerce applications and applications that collect personal information, users need to be confident that their privacy will be protected before they use your applications or services. Follow your company's legal department guidelines in providing a privacy statement to the users. If necessary, contact them beforehand to make sure you are not breaking any laws or rules with the information you collect, track or transmit about the user.