Implementation report template for the Mobile Web Best Practices

Implementation under test

Results of checking the web site with the Best Practices

Best Practice Pass Fail Partial N/A Comments
1. [THEMATIC_CONSISTENCY] Ensure that content provided by accessing a URI yields a thematically coherent experience when accessed from different devices. X The server detects when the agent is a mobile device when the home page is requested and changes the path.
2. [CAPABILITIES] Exploit device capabilities to provide an enhanced user experience. X Images have been resized, but these are not adapted to the concrete device capabilities.
3. [DEFICIENCIES] Take reasonable steps to work around deficient implementations. X
4. [TESTING] Carry out testing on actual devices as well as emulators. X
Mobile Devices
  • Palm One Treo 650
  • Motorola MPx220 (Windows Mobile)
  • Sony Ericsson P910i
  • Nokia 6630/6680
  • HP 4700
  • Openwave Phone Simulator v7.0
5. [URIS] Keep the URIs of site entry points short. X Names of the pages are short, but it is used a semantic structure of directories. This organization in some cases may hinder having shorter URIs.
6. [NAVBAR] Provide only minimal navigation at the top of the page. X Only 4 links to the main options in every page.
7. [BALANCE] Take into account the trade-off between having too many links on a page and asking the user to follow too many links to reach what they are looking for. X
8. [NAVIGATION] Provide consistent navigation mechanisms. X Common templates in all pages.
9. [ACCESS_KEYS] Assign access keys to links in navigational menus and frequently accessed functionality. X
10. [LINK_TARGET_ID] Clearly identify the target of each link. X
11. [LINK_TARGET_FORMAT] Note the target file's format unless you know the device supports it. X
12. [IMAGE_MAPS] Do not use image maps unless you know the device supports them effectively. X
13. [POP_UPS] Do not cause pop-ups or other windows to appear and do not change the current window without informing the user. X
14. [AUTO_REFRESH] Do not create periodically auto-refreshing pages, unless you have informed the user and provided a means of stopping it. X
15. [REDIRECTION] Do not use markup to redirect pages automatically. Instead, configure the server to perform redirects by means of HTTP 3xx codes. X
16. [EXTERNAL_RESOURCES] Keep the number of externally linked resources to a minimum. X
17. [SUITABLE] Ensure that content is suitable for use in a mobile context. X
18. [CLARITY] Use clear and simple language. X
19. [LIMITED] Limit content to what the user has requested. X
20. [PAGE_SIZE_USABLE] Divide pages into usable but limited size portions. X
21. [PAGE_SIZE_LIMIT] Ensure that the overall size of page is appropriate to the memory limitations of the device. X
22. [SCROLLING] Limit scrolling to one direction, unless secondary scrolling cannot be avoided. X
23. [CENTRAL_MEANING] Ensure that material that is central to the meaning of the page precedes material that is not. X
24. [GRAPHICS_FOR_SPACING] Do not use graphics for spacing. X
25. [LARGE_GRAPHICS] Do not use images that cannot be rendered by the device. Avoid large or high resolution images except where critical information would otherwise be lost. X
26. [USE_OF_COLOR] Ensure that information conveyed with color is also available without color. X
27. [COLOR_CONTRAST] Ensure that foreground and background color combinations provide sufficient contrast. X
28. [BACKGROUND_IMAGE_READABILITY] When using background images make sure that content remains readable on the device. X
29. [PAGE_TITLE] Provide a short but descriptive page title. X Perhaps pages have a long name because of the name of the site: "Fundamentos Web 2006" + the name of the current section.
30. [NO_FRAMES] Do not use frames. X
31. [STRUCTURE] Use features of the markup language to indicate logical document structure. X Simple and semantic markup.
32. [TABLES_SUPPORT] Do not use tables unless the device is known to support them. X
33. [TABLES_NESTED] Do not use nested tables. X
34. [TABLES_LAYOUT] Do not use tables for layout. X
35. [TABLES_ALTERNATIVES] Where possible, use an alternative to tabular presentation. X Tables have been changed for description lists without irrelevant information.
36. [NON-TEXT_ALTERNATIVES] Provide a text equivalent for every non-text element. X
37. [OBJECTS_OR_SCRIPT] Do not rely on embedded objects or script. X
38. [IMAGES_SPECIFY_SIZE] Specify the size of images in markup, if they have an intrinsic size. X
39. [IMAGES_RESIZING] Resize images at the server, if they have an intrinsic size. X Images have been reduced but they have a fixed size.
40. [VALID_MARKUP] Create documents that validate to published formal grammars. X XHTML 1.1 Basic
41. [MEASURES] Do not use pixel measures and do not use absolute units in markup language attribute values and style sheet property values. X Poor stylesheet. Just declared margins and font sizes.
42. [STYLE_SHEETS_USE] Use style sheets to control layout and presentation, unless the device is known not to support them. X
43. [STYLE_SHEETS_SUPPORT] Organize documents so that if necessary they may be read without style sheets. X
44. [STYLE_SHEETS_SIZE] Keep style sheets small. X
45. [MINIMIZE] Use terse, efficient markup. X Some blank characters are sent (pretty printing).
46. [CONTENT_FORMAT_SUPPORT] Send content in a format that is known to be supported by the device. X It is supposed that a mobile device supports XHTML basic. If any mobile device is detected, a response in XHTML Basic is sent.
47. [CONTENT_FORMAT_PREFERRED] Where possible, send content in a preferred format. X
48. [CHARACTER_ENCODING_SUPPORT] Ensure that content is encoded using a character encoding that is known to be supported by the device. X UTF-8 served in all cases.
49. [CHARACTER_ENCODING_USE] Indicate in the response the character encoding being used. X
50. [ERROR_MESSAGES] Provide informative error messages and a means of navigating away from an error message back to useful information. X The error messages are the same of the "non-mobile" version.
51. [COOKIES] Do not rely on cookies being available. X
52. [CACHING] Provide caching information in HTTP responses. X
53. [FONTS] Do not rely on support of font related styling. X
54. [MINIMIZE_KEYSTROKES] Keep the number of keystrokes to a minimum. X Forms have not been included.
55. [AVOID_FREE_TEXT] Avoid free text entry where possible. X
56. [PROVIDE_DEFAULTS] Provide pre-selected default values where possible. X
57. [DEFAULT_INPUT_MODE] Specify a default text entry mode, language and/or input format, if the device is known to support it. X
58. [TAB_ORDER] Create a logical order through links, form controls and objects. X
59. [CONTROL_LABELLING] Label all form controls appropriately and explicitly associate labels with form controls. X
60. [CONTROL_POSITION] Position labels so they lay out properly in relation to the form controls they refer to. X