Abstract
Are you in the process of ordering a Web site to a Web Agency, or maybe to the IT department of your company? Are you delegating the creation of your Web site to another entity? Then, you're probably aware that setting the right requirements will help create a better final product in a shorter time. Relying on open standards can help you in this task.
Defining the set of requirements for a Web site is always tricky: it's especially difficult to set a verifiable level of quality for the final product.
Adding standards compliance to your requirements helps achieve a more powerful, accessible, and maintainable final product, and leverages the energies put into standards.
This document details those benefits induced by the use of standards and summarizes the specific requirements that will help you achieve this goal.
Status
This article was written in 2002 as part of the W3C Quality Assurance Interest Group work. Please send any public feedback on it to the publicly archived mailing list [email protected] or for private feedback to [email protected].
This document is also available in French and other languages.
Buy standards compliant Web sites
Open Standards for the Web
Ignored for a long time by many developers, standards such as HTTP, HTML or XML are at the very core of the success of the Web. The current trend of stressing standards compliance on the Web is not due to chance: they are a win-win for all participants.
Developed by experts and with input from the whole Web community, standards work together to provide the foundation to build increasingly powerful applications. Standards are the result of a lot of energy and expertise and are available for free: don't miss the opportunity to benefit from their leveraging effect!
For a more powerful Web site
On the Web, being up-to-date with the latest technologies is a difficult exercise: choosing the wrong tool or architecture can lead to losses in money, time, or customers.
By using standards, your Web site's foundation is built upon technologies that have been developed and tested by leading experts in the Web community. For example, the W3C Process ensures that a technology reaching its last state of development has been implemented into several compatible products. With almost 500 companies and organizations from the IT world contributing R&D efforts to the production of W3C standards, these standards are truly the leading edge of the Web.
Standards organizations, like the W3C, build a consensus among these groups and experts to maintain and develop consistent architectural principles. Groups such as the Technical Architecture Group at W3C make sure that technologies can be combined nicely, building a Web coherent with the decisions that allowed the Web to grow so quickly.
Orienting your choices toward standards means getting the latest innovations, but only those that are solid enough to gather consensus, and hence, the technologies that are here to stay:
- HTML has a non-diminishing success for its 12 years of existence, thanks to the careful developments and innovations it has integrated during that time;
- HTTP is a network protocol that finds new usages every so often: originally used to
surf
the Web, its recent use as a messaging protocol through SOAP is only a step toward the Web Services deployment; and - XML, only 4 years old, is used almost everywhere nowadays, and new use cases of its flexibility are regularly discovered and implemented.
More recently achieved standards such as SVG and P3P are catching on quickly, and still hold many possible new applications!
Reduced maintenance costs
Everything goes very fast on the Web, and maintaining a Web site can imply fairly big operational costs. Without a compliant Web site, migrating to new platforms and adding functionalities to your applications can be expensive operations.
However, if your applications are developed on open standards, your applications won't depend on a unique provider:
- you won't be stuck with formats you don't have access to;
- you can influence how the standards are developed; and
- you can benefit from the best backward- and even forward-compatibility.
Have you ever had difficulties re-using existing code produced by a former provider? Even if you haven't, you can be sure that anything developed for a unique product ("browser X is the most popular, why bother with the others?") or using non-standard technologies won't scale with time and your needs, which means that it will cost a lot to maintain.
Because standards are built to be combined, developing new applications from an existing base is much easier: the tools to manipulate open technologies get more sophisticated, more numerous, and more powerful all the time. Moving your Web pages to XHTML, for instance, means that you can easily transform the data to other formats using XSLT or ask for a powerful publishing system with validating mechanisms using XML Schema. And for each of these operations, you can choose from a wide range of tools from many different producers.
Finally, standards usually avoid the infamous feature creep of other formats and clearly separate orthogonal applications: using CSS lets you cleanly separate the presentation from the structure of your data. This very same separation also saves in the operational costs: using CSS means less HTML code for each page, and therefore bandwidth saving.
Your data are probably one of your company's biggest assets. Don't put them in proprietary formats you cannot control and which limit potential solution providers. You never know what the future holds, so invest in technologies that already belong to the future.
Benefit from accessibility designs
Making a Web site accessible is both beneficial and challenging:
- beneficial because it broadens your potential audience and makes it much more usable for everyone — some level of accessibility is also required by law in a growing number of countries; and
- challenging because it requires thorough designing and testing to address diverse issues.
Thanks to various efforts (the Web Accessibility Initiative for instance), accessibility has been integrated into an important number of standards, either natively or by using techniques specifically designed for them. Using standards technologies lets you benefit directly from design decisions that have been tested by the Web community and are complemented by a large set of tools.
More generally, open standards are reviewed from important and difficult points-of-view. For example, W3C standards are checked not only against accessibility features, but against internationalization capacities, and device independence, which guarantees their capacity to scale quickly to new audiences.
Don't be fooled: sooner or later, your site (be it public, an extranet, or an intranet) will need to be available for more people with increasingly demanding requirements.
Accept only the best
More and more, the Web will be the central key for your knowledge management with initiatives such as the Semantic Web. Hence your site must have very strong requirements, and compliance to standards must be part of them to guarantee the general quality. There are tools available to check that the final product complies with these standards.
What should you include in your requirements list?
You should set compliance to standards as a generic principle, but having a list of actual requirements will certainly make everybody's life easier:
Requirement | Details | Rationale | Test tool |
---|---|---|---|
Use valid (X)HTML | Using valid HTML means having an HTML code that follows one of the DTDs of the HTML specification. Your best choice is valid XHTML strict markup: XHTML means that the code will benefit from all the XML power, and strict ensures your site won't mix presentation markup with the structure. |
Valid HTML code is a first step toward more compatibility with browsers and better rendering on the latest ones. Using only strict HTML (that is, the Strict HTML DTD) makes the site easier to maintain and evolve. | The W3C HTML Validator is one of the many options available. The LogValidator is especially helpful in maintaining a valid Web site. |
Use extensively valid CSS | Avoid any presentational markup and keep all the layout features in well-defined CSS style sheets. | Linked style sheets allow presentation to be decoupled completely from the page structure of your site, and lets you quickly change its layout and rendering. It also guarantees that everybody can adjust the rendering to their needs and tastes. | The CSS Validator detects any non-compliant use of the CSS technologies. |
Use HTTP properly | Make sure that each page of your site is accessible with a stable address (URL) and that the HTTP caching properties are set correctly. Make sure if you migrate to a new site version that the URLs are either kept as is or at least redirected to the new ones. | HTTP is a very powerful protocol and you get most of its power with stable URLs and an efficient caching system: bookmarks and links don't break, network access is faster, users are happy! | The W3C Link Checker can provide some help. Besides, the advices given in the Common HTTP Implementation Problems Note can help assess what needs to be respected. |
Use SVG and PNG for graphics | Use PNG for raster images, and SVG for all others. | PNG is a much more capable format than other binary formats for raster images because it provides better compression, more options, and it's free. The best format you should require is SVG: it's scalable, XML-based, very light, and has a lot of capabilities, for example, animation using SMIL, which is supported on cell phones, etc. | N/A |
Use techniques to make your content accessible | Details. | Making a site accessible benefits all of your users, and broadens your current audience. This requirement may be required by law in some countries. | See Evaluation Tools for Web Content Accessibility. |
Use standards scripting languages | Use the DOM API combined with Ecmascript (but don't make the use of scripts mandatory to navigate in the site!). | DOM and Ecmascript (the common standard behind Javascript and JScript) are the best way to go to get interoperable scripts to create animations in your Web site. But do not forget your users that don't have these scripting capacities enabled. | N/A |
Last modified $Date: 2010/09/15 15:58:43 $ by $Author: dom $