• No se han encontrado resultados

CAPÍTULO TRES La floricultura y los cambios en el espacio desde finales del siglo

The termsimulationis used in different ways: On one hand, it means that the web page is dis- played using a special program which imitates the effects of a personal disability, of a particular rendering technology, or similar. On the other hand, the term can also be employed to refer to the simulation of a user test, e.g. for determining whether the performance of a site will still be satisfactory when it is used by a large number of users.

Simulating Perception Differences of Web Pages

A variety of tools and techniques allows the web developer to “see websites through the eyes of his users” rather than with the browser and in the environment used for development and testing. At the simplest level, this applies to the browser rendering engine that is used. Looking at the site with different browsers may reveal differences in the browser implementation which cause problems. For instance, JavaScript errors may prevent some of the GUI elements of an AJAX application from appearing and thus render the application unusable. Services such as Browser- Cam (http://www.browsercam.com) allow tests of the page on rendering engines which are not readily available to the developer.

To simulate special browsers, such as the ones used on mobile devices, demo versions are often available. For example, Opera Software offers the “small screen rendering” technology which is used in Opera Mobile as a special mode of the desktop Opera browser. Furthermore, the Opera Mini browser (used for lower-performance devices than Opera Mobile) can be used on desktop computers via a web-based service (http://www.operamini.com/demo/).

A normal browser can also be used to simulate certain kinds of disabilities: Some users with bad vision configure their system to use a very large font size, a step that can easily be performed by the web developer as well. Alternatively, they magnify all aspects of the page (fonts, graphics, pixel-based CSS measurements) by a certain factor. If the developer’s browser does not allow this, it can be simulated simply by using normal font settings, but then resizing the browser window to a much smaller than average size, e.g. 512×384 pixels. The web page should still be usable with both kinds of changes.

Some blind users use braille-based terminals running text browsers. By looking at the page with a text-based browser such as lynx (http://lynx.isc.org), a normally sighted person can

Figure 2.13: The Colorblind Web Page Filter (http://colorfilter.wickline.org) simu- lates colour blindness. Left: Normal version, right: reduced-colour version of page).

have a similar user experience. Alternatively, aural browsers are available for free, e.g. the “Fire Vox” Firefox screen reader extension (http://firevox.clcworld.net) or the Fangs screen reader (http://sourceforge.net/projects/fangs/).

Finally, it is possible to calculate the effect that colour blindness has [Brettel97Color], enabling a person with full colour vision to have a look at a web page with the eyes of a colourblind user. The “Colorblind Web Page Filter” (http://colorfilter.wickline.org and figure 2.13) operates on entire web pages, including graphics and stylesheets. Vischeck

(http://www.vischeck.com/vischeck/) can work with arbitrary uploaded pictures and also

many web pages. Different types of colour blindness can be selected with both tools, including Deuteranope, Protanope and Tritanope.

Simulation of Hypothetical Users

Simulating the actions of users is not easy – since it is hard to create rules which reliably predict human behaviour, simulation tools will often only roughly mirror actual behaviour. Nevertheless, a number of approaches promise to improve usability:

A website becomes unusable when it gets too slow under a high load of users. For this reason, performance testing can avoid later problems with a site. [Ivory03WebEval, chapter 10, 2.2.1] contains an extensive list of performance measurement approaches. The basic idea is to simulate many users which access the site concurrently and perform actions on it.

It is also possible to simulate the navigation steps that a user takes through the website: By analysing the so-called information scent of web pages based on existing usage data, a program can build up knowledge about visitors’ goals and associated navigation paths. In the next step, this information can be used to predict the probable path of a simulated user through the site

given his needs, or to predict an actual user’s need based on his recorded path through the site [Chi00SiteScent]. The user’s “needs” are expressed in the form of a list of natural-language words (similar to a search engine query), each of which is accompanied by a probability value. CoLiDeS [Kitajima00CoLiDeS] uses a similar idea. It is a model of the way users search for their goal on web pages, and uses a decomposition of web pages into areas like navigation links, headings, text paragraphs etc. to simulate the way the page is scanned. The probable path of the user can be predicted. The simulation of impasses and the resulting backtracking can also be represented.

Usability Aspects in Existing Web

Engineering Development Processes

This work bases its advances on two related fields of study: Apart from the area of web usabil- ity, which was discussed in the previous chapter, the area of web engineering with its methods, models and tools provides the basis for the development of new concepts. Later chapters will elaborate on the central idea of this thesis: Using models to improve usability tool support.

In this chapter, a closer look is taken at existing web engineering solutions: If the developer follows the recommended procedures by creating models, using the supplied tools, performing testing etc., then what usability-related artefacts (e.g. models, results of automated model or HTML analysis) will be produced, how much tool support exists for enhancing usability, and what other aspects of the development process (e.g. user tests) will ensure good usability of the result?

3.1

Web Engineering – Overview

Summary: Web engineering applies established software engineering practices to the domain of WWW applications. Due to the special properties of this medium, the development process must be adapted in many places in order for it to be cost- effective and to produce high-quality results.

Several definitions of web engineering have been proposed in the available literature to charac- terize the domain (see also [Dumke03WE, p. 47], [Kappel04WE, p. 4]):

Web Engineering – The application of systematic, disciplined and quantifiable ap- proaches to the cost-effective development and evolution of high-quality applications

in the World Wide Web. [Gaedke00WE]

Web Engineering is the application of systematic, disciplined and quantifiable ap- proaches to development, operation, and maintenance of Web-based applications. It is both a pro-active approach and a growing collection of theoretical and empirical research in Web application development. [Deshpande02WE]

Web engineering can be regarded as a variant of software engineering which is specialized for the creation of applications for the World Wide Web, including special development, testing and maintenance methods. The changes are necessary because development of web applications and of conventional applications (such as GUI-based desktop applications) differs in a number of aspects. Due to the role of the WWW as a communication medium, many web applications have properties which would be unusual for desktop applications. Several of the differences which were identified in [Deshpande02WE] are related to the usability of websites:

Web applications are information-centric (“content is king”) – they deal with text-based

content as well as multimedia content. This content is often only present in a way that is hard to structure.

The users of web applications are different from the user groups of conventional software.

As the web application is usually available globally, the users have a larger variety of backgrounds, differences in language, culture etc., which adds complexity to the task of making the application work for as many users as possible.

On the web, there is a strong competition between sites which offer similar services, so

users are more impatient than if they had installed software on their own computer. If a web application does not provide the right user experience, dissatisfied users will simply move on to the next search result [Card01InfoScent].

Performance is more critical with web applications – a single server installation must pro-

vide the service to all users, and the exact number of users is hard to predict. This way, bottlenecks are more likely to occur. Furthermore, the network bandwidth available to some users may be very low.

With web applications, the developer must be acquainted with a larger number of different

standards, languages and tools, and with additional disciplines like graphic design or GUI design. Insufficient knowledge in only one of these fields may result in problems for a portion of the application’s users.

Different sub-disciplines have formed in the research field in the last years to address par- ticular aspects of the problem space. For example, the proceedings of a recent web engineering conference [ICWE07Proc] include work on topics such as the following:

Modelling of the web application, e.g. of the website structure and the user interfaceThe Semantic Web, e.g. annotating web content with machine-readable metadataAutomatic creation of a web application from models

Device independence, i.e. adapting the presentation of content to the screen resolution etc.Tool support for other development phases, e.g. testing

Documento similar