Introduction
This book is intended for small to medium business owners who are specifying their requirements for commercial
websites, whether setting up a website for the first time or updating their first-release website to current standards.
This book allows them to specify the design of such websites so that they follow good practice in a wide range of features.
For each aspect of good practice, the background and history of that aspect is discussed and current good practice spelled out.
Commercial websites have a particular and specialised role of promoting the interests of the commercial organisation which
they represent and consequently are distinguished from other web site forms, such as, for example, artistic website. An artistic
website can be obscure, challenging to navigate, may hide certain of its features to the casual visitor and yet still succeed in its
objectives despite (or even because of) these characteristics. A commercial website must, in contrast, observe good practice
rules in order to promote the organisation's interests.
This book concentrates on good practice, not best practice, for a number of reasons. Firstly, "best practice" often involves high
implementation cost and long lead times, whereas most commercial website owners are seeking to minimise each of these.
Secondly, we have no desire to engage in the petty semantic wars which sometimes erupt in this area; it is of no benefit to the
commercial website owner to argue the relative merits of "standard A" vs. "standard B". Thirdly, both the de jure and de facto
standards for web design are evolving steadily, so even if we can agree on what is best practice, it will be tomorrow's good practice.
To illustrate a practical implementation of each of the techniques in this book, we have prepared a demonstration website,
http://www.zabalu.com. The Zabalu website is a fully featured food information website,
but one which has also been carefully
prepared to illustrate the techniques (and their outcomes) discussed in this book.
The main subject areas discussed are:
- accessibility; here we discuss how to make sure that your site is accessible to the largest possible number of potential site
visitors, including visitors using unconventional means of access, such as mobile 'phones
- appearance; here we discuss good practice in site layout that can ensure that your website meets its objectives whilst appearing
attractive
- technical aspects; this section covers technical aspects of the website which must be considered to ensure that the website is
effective, standards-compliant and accessible for a number of years, in face of evolving technical standards
- visibility and marketing; in this section we cover the marketing and search engine cooperation aspects of a commercial website.
The book concludes with a list of useful Internet resources relevant to each section and a detailed glossary of terms.
[...pages omitted...]
Text Size
The text size of a website is either established in an absolute or relative manner.
An example of an absolute definition is, e.g. "12pt", which establishes the text size as 12 point. No matter what adjustments
the site visitor might make, the text size remains at 12 point. This means that visitors to the site who are vision-impaired
cannot adjust the text size to a comfortable size.
An example of a relative definition is "0.75em". This establishes that the text is to be rendered at 75% of the size of the basic
font. When text sizes are specified in this (relative) manner, the visitor can alter the size of the text through their user agent
or browser. The Microsoft Internet Explorer web browser, for example, allow the visitor to alter text size across a five-point
range from "Smallest" to "Largest" and the range of adjustment is quite reasonable. This adjustment will not change the size
of text specified as an absolute size, nor does it resize any graphics, including graphics posing as text. The Opera web
browser allows co-ordinated resizing of the whole page including graphics, but the reality is that this browser has not gained a
significant market share.
Good Practice
Set all text sizes in relative units, allowing the website visitor to resize them in a relative way.
At Zabalu
All text sizes are set in relation to the "em", the font size of the relevant font. Thus, when the site visitor adjusts the text size
rendering of their browser, all text, including headers and captions, is resized. The one exception to this is the principal page
caption, which is rendered by an image. These images are rendered in 22 point font, so are quite legible at their standard size.
Figure xx: zabalu.com showing a relatively small font size
Figure xx: zabalu.com showing a relatively larger font size
Scripting Languages
Introduction
What we mean when speaking of scripting languages is any of those client-side scripting languages which allows enhancement of the
user interaction after the page is initially rendered. These languages can substantially improve the quality of user interaction and many
of the language techniques have become so common as to be both familiar and expected. For example, when you pass your mouse over
a menu image on a website the image may be replaced by a complementary image which indicates that the menu item is available, and
once clicked a further complementary image may be used. This is achieved by way of a scripting language. When a small sub-page with
additional information is popped up, this is often managed by a scripting language. Equally, when a mortgage calculator is presented on
a page, it will usually be implemented by way of a scripting language. Further, when you fill in a form on a website the validity of your
inputs is often checked before the form is submitted by a scripting language. Each of these functions adds value and richness to the
browsing experience.
The client-side scripting languages are typically Javascript, VBScript (Visual Basic Script), TCL or Java, with Javascript being by far the
most commonly used.
For good practice design, we need to evaluate the additional contribution of these scripting languages against their downsides.
Techniques
The challenge brought about by scripting languages comes into play when they cannot be executed. This can occur due to a number
of circumstances:
- the site visitor may have disabled this scripting language (or all script languages) in their web browser, often as a security issue.
- the site visitor may be using a user agent which, by its nature, does not support the scripting language of for which the action
makes no sense. For example, a text-to-speech user agent cannot usefully interpret the change of a non-rendered image when a
(non-existent) mouse is (not) passed over it.
- the site visitor may be using a newer device (e.g. a mobile 'phone) whose user agent simply does not implement the scripting
language.
When these circumstances occur one of two things can happen as a consequence, depending on the original design of the website.
The first outcome is that the site visitor misses out on some minor functionality of the website, which might have slightly improved
the website experience, but does not prevent the website from meeting its primary goal. The second outcome is that a fundamental
aspect of the website is blocked to the site visitor and, consequently, the website does not deliver its goals.
Good Practice
The first option is acceptable design, but the second outcome cannot be considered as "good design". Consequently, we suggest
that the golden rule for use of (client-side) scripting languages must be that they only be used for peripheral contribution to a
website's functionality and not for any fundamental functionality. This will ensure, once again, the widest possible audience for our
website's content.
At Zabalu
The Zabalu website makes use of a limited set of client-side functions written in Javascript, which take care of minor user interactions
such as checking that, when the search button is pressed, some text has been entered in the input and rotating the logo each time a
page is visited. Absence of these minor functional elements would not markedly detract from the website user's visit to Zabalu.
Site Search
Introduction
It is unlikely that you can accurately predict exactly what each visitor to your site is seeking. The navigation scheme which you have
carefully designed will not serve every site visitor and the key words you have chosen will not meet every query. To ameliorate these
problems you can (and should) provide a clickable site map (discussed in "Site Map") but also you can (and should) provide a site
search facility.
Techniques
This can be approached in one of two ways:
- where you have specific searching requirements, such as restricting the search to certain locations or parts of the site, you can
opt for a custom solution. This has the advantage that you can make the search work in a manner that exactly fits your requirements.
Further, if your website has significant data contained in databases, it may be the only way to provide good practice in publishing your
data. As a custom development, will have both cost and time implications.
- where your needs are more generic (i.e. you want the user to be able to search the whole site for a specific terms) make use of
one of the search engine's site-specific solutions. This has the (significant) advantage that it will be familiar to the site visitor. Major
search engines (like Google and Yahoo) make their search mechanisms available to your website, but they typically cannot search
data which is held in binary sources (such as databases) other than Adobe PDF or Microsoft Word documents.
Research into searching habits has repeatedly shown that only a very small percentage of users make use of advanced search facilities.
Site searches are still at a relatively primitive stage since they typically only search for text and not for meta data describing other
objects (such as images or data) which might be embedded in the website. This may evolve with the development of the "semantic web".
Good Practice
Current good practice is to use a site-specific version of the major search engines, as these tools will be familiar to your site visitors.
Advanced options should only be available by specifically selecting to use them, otherwise the basic search facility should work as a
simple, case-insensitive text search.
Where you have large databases incorporated into the site, these need to have custom search facilities.
Good practice may evolve to include searches which encompass non-textual data.
At Zabalu
Zabalu uses our own site search software, which we can adapt and control with some precision. Nevertheless, the general appearance
of the site search software output is quite similar to that of the major search engines, and advanced searching is only available as an
option after basic searching.
The very large nutritional database is provided with its own, specific searching facility,
Figure xx: search results at zabalu.com
[...pages omitted...]
Where Next?
The complete series of Business Process Management e-books is as follows:
- "Business Process Management Overview" (the grey book)
- "Generating & Selecting KPI Sets" (the blue book)
- "Implementation Guide for Service Level Agreements" (the plum book)
- "Identifying, Documenting & Analysing Business Processes" (the teal book)
- "Selecting & Implementing Internal Controls" (the red book)
- "Good Practice for Commercial Website Design" (the saffron book)
The series is available at the following website:
http://www.modulus.com.au/
Modulus provides tools, applications and services to consultancies and website developers.
For more information contact Peter Hill, peter.hill@modulus.com.au.
[...pages omitted...]