Section 508 guidelines for application design and testing
An accessible application can be used by anyone, regardless of disability. Section 508 is United States federal law that requires federal buyers to purchase, use, and maintain applications that people with disabilities can access.
To support section 508, the Mid Tier provides DHTML information that screen readers can read out. No extra work is required by the application developer.
This information is not available by default. You must set this preference in the AR System User Preference form. The application developer must adhere to the design rules specified in this documentation. Use the following rules when designing your forms to ensure a successful interaction for No Vision and Low Vision users.
Guideline | Description |
---|---|
Design your application with accessibility in mind. | Users who can access your application only with a keyboard cannot use the mouse to jump from one area to another. Nor can they see your form layout, which can convey information to the sighted user. The Web modifies the form and form content for No Vision and Low Vision users. However, application designers must still make sure that the forms they design have the visually impaired user in mind. (For example, in forms, avoid using multi-level character menus whenever possible. No Vision users must go through menus and submenus to choose a menu item.) If the forms are not easy to use, No Vision and Low Vision users will not use the application. A good reference for Web forms is WAI Web Content Accessibility Curriculum (https://www.w3.org/WAI/wcag-curric/). This site summarizes guidelines for accommodating No Vision users. Application developers must ensure that all custom HTML and client script code (such as text in a view field or JSP page modifications) is compliant with accessibility requirements. If you design forms with accessibility in mind, you will avoid problems later in the project. |
Make all tasks and interaction available using the keyboard. | Make sure that all tasks and interactions are available using the keyboard. Mouse-only interactions should not be allowed. For example, both Windows and the Web enable users to use a keyboard to open a menu associated with a field. On Windows, press Alt+M in the edit field. On the Mid Tier, tab to the menu icon and press Enter. |
If you support multiple platforms, position field labels to the left of the input boxes. | To avoid having the wrong label associated with an edit field, also consider the horizontal and vertical alignment with respect to other fields. |
Make sure that all fields have a label. | No Vision users must have a context in which to associate an edit field without a label because they depend on the screen reader for interpreting the form. Do not position a text field as a label for a field because screen readers do not read text fields in Forms mode on the Web. |
Do not use the same label for multiple fields on a form. | No Vision users cannot hear trim text used to distinguish one field from another. |
Indicate all required fields with bold type and an asterisk at the end of the field. | If the required field also includes a plus (+) sign, the asterisk must come before the plus sign. Both the asterisk and plus sign are bold. In the following example, JAWS does not read the asterisk because it is placed after the plus sign. Because sight-impaired users cannot see the screen, they will not know that the fields shown are required. When the asterisk is placed before the plus sign, JAWS reads the asterisk, which tells users that these fields are required. Use of the asterisk and the order of * and + are BMC Helix ITSM conventions. They do not have to be followed, but using them provides consistency with other BMC Helix ITSM applications. |
Provide a descriptive alt attribute for graphics and images such as icons. | In the following example, an alt attribute provides a description of the graphic that can be read by a screen reader. <img src="imageB.gif" alt="Bob Beauchamp, CEO"> If an image is not meaningful to users with visual impairments (for example, an image for aesthetic purposes only), the alt attribute must have a null value (alt=""). <img src="space.gif" alt=""> You can add alt text to images and graphics in Developer Studio. For No Vision Web users, expand boxes and menu images have title text dynamically associated with them. As users tab through the fields on a form, they know that an expand box or a menu is associated with the field. Expand boxes and menu images are read on the Windows client when a field is tabbed into, and users can access them with shortcut keys. |
Do not use images with text to convey information. | No Vision users do not hear text on images. |
Make sure that the tab order in forms is set correctly. | The BMC Helix ITSM convention is a tab order from top left to bottom right. In a column of fields, the tab order is top to bottom. You can order tabs differently depending on the form. What is important is that the tab order layout makes sense. Each view has its own tab order. If you create multiple views of a form, verify that the tab order is set correctly in every view. |
Use a descriptive name for the singular alias. | When a window is opened, its title is read. The singular alias is part of the title in both windows and dialog boxes. When the focus is switched between windows, the window title is read so that users know which window currently has focus. Sometimes a form is designed with a page title, which describes the contents of the page. Screen readers do not always read the descriptive information reliably. |
Set the focus in a form to the first readable field. | In the following example, Company is the first readable field in the form. |
Allow users more time to complete a timed task. | To verify that No Vision users have enough time to complete an action, look at usage of the onInterval active link condition. Increase the session timeout for each No Vision user. |
Make sure that data represented with a graphic file is available in an alternative format that a screen reader can understand. | This includes spreadsheets, HTML, and any other format that a screen reader can read. |
Collapse trees for initial view. | When defining a tree, if Initial Row Selection is set to Select First, the first tree node is displayed as opened and the first item is selected. No Vision users must close the node or tab through all the opened items and nodes. Consider setting the Initial and Refresh option to No Selection. |
Provide skip links in forms. | Because No Vision users can set focus only with the keyboard, they are at the mercy of the defined tab order. Consider offering links in the form to allow the No Vision user to skip blocks of fields.
|
In HTML, place the bold tag outside the label tag. | If you generate your own HTML, place the <b> (bold) tag outside of the <label> tag. Otherwise, JAWS does not handle the label correctly. Correct: Incorrect: |
Avoid displaying Header Text II and System fonts in italic if magnification software will be used. | When using ZoomText with the magnification set to 4 or higher, italicized text becomes distorted and cannot be easily read. This appears to be an issue with italic fonts when assistive technologies are used. To achieve consistency across all clients, modify your preferences in Developer Studio for Header Text II and System fonts to remove the italic. Comment out .f10 and .f3 style in the arsystem.css stylesheet. This applies changes to System and Header Text II fonts for all users. |
Do not use color to convey information. | Because No Vision users cannot see the screen, do not use color to highlight important information. In the following example, No Vision users do not hear the warning because it is trim text and cannot be read by the screen reader.
If your form uses color, make sure the contrast between the different colors works for a low vision user. |
Do not use shared fields in a page holder. | The Web tab order is not correct when shared fields are used in a page holder. |
Disable the wait cursor in the Mid Tier for all users. | Section 1194.22, Paragraph J, of the Section 508 guidelines addresses screen flicker for people with photosensitive epilepsy. By default, the wait cursor is enabled. By modifying the config.properties file, you can turn off the wait cursor for all users. You can also modify the image used for the wait cursor. For more information, see Configuring-the-mid-tier. |
Provide alternative information if Flex widget doesn't support accessibility. | When compiling a Flex widget, you can turn on accessibility. If accessibility is not enabled, provide an alternative way of showing the same information. For example instead of displaying data graphically, you could display the data in a table. If possible, make this view the default view for accessible users. |
Avoid using tables within an RTF field, except for layout purposes. | In rich text field (RTF) fields, key sequences do not always behave consistently in tables within RTF fields. |
Make sure that the State_Action of the floating panels is indicated. | A floating panel is created by explicitly marking a panel or panel holder to create a new layer when it is displayed. The Float Style determines the interaction style and location of the floating panel. For more information about panels and panel holders, see "Panels and Panel holders" in Fields-and-No-Vision-support. Panels which are used as tooltips can be dismissed using the ESC key. Dialog Panels can be dismissed using workflow to dismiss the panel. Make sure the state of the Floating Panels is indicated. Each panel announces the state when the panel is expanded or collapse in a stack based panel holder. Developers should make sure the context to signify the state or action of the panel has been applied while designing the form (such as Show Content/ Hide Content). |
Developers should provide information to users on availability of the Tooltip Floating Panels. | Tooltip Floating panels can be triggered by pressing Alt+F12 for Low Vision or No Vision users. Likewise, the Esc key dismisses the tooltip panels. Developers should make sure that Low Vision or No Vision users understand where tooltips are applicable, as well as the usage of Alt+F12 to display the tooltips. This can be done by adding additional text as ALT text to instruct the user. |
Use the on-click attribute in view fields with cell-based tables. | If you want users to be able to tab to the anchor tab in a view field with a cell-based table, add the on-click attribute to the anchor tab in the template. |
Run some active links in Forms mode. | The following active links must be run in Forms mode:
|
Consider Mid Tier caching when creating forms. | When a view of a form is requested, the Mid Tier caches a copy of the form. When the next user requests the same form, the Mid Tier checks for a cached copy of the form. Because HTML is generated dynamically for No Vision and Low Vision users, the cache could include multiple copies of the form. Consider potential increases in memory usage when creating forms for No Vision and Low Vision users. |
Section 508 guidelines for installers
Application installers should:
- Be accessible solely with a keyboard.
- Work with JAWS.
Section 508 guidelines for quality assurance teams
Quality assurance teams should adhere to the following rules when testing Web applications to make sure that applications comply with Section 508.
- Test all rules that application developers need to follow.
- Test with JAWS to verify that the application is fully functional in accessibility mode. Also try Window-Eyes.
Make sure that:
- No two fields have the same label.
- The tabbing sequence follows a logical sequence of events.
- Fields and labels can be read by a screen reader.
- The application is functional when only the keyboard is used.
Section 508 guidelines for documentation teams
Documentation teams should adhere to the following rules when documenting Web applications.
- Documentation for applications should include known accessibility issues and workarounds.
- Documentation should include keyboard shortcuts, if any.
- All product documentation must be available in a format that screen readers can read, such as HTML and accessible PDF.