Implementing Accessibility

People with accessibility requirements are a significant part of the workforce. In order to meet the needs of today's business application programming, applications must be accessible to people with all kinds of different needs.

Accessibility is facilitated in a variety of ways. Microsoft Windows XP provides a variety of accessibility aids that can interact with your applications.

For example, SoundSentry allows the user to specify a visual cue whenever the system emits a sound. These accessibility aids are designed to integrate seamlessly with your applications to provide an accessible user experience. Additionally, there are accessibility principles you can design into your application.

Accessibility Design

An application begins to be accessible in the design phase. By planning ahead, you can create an application that integrates the principles of accessible design into the user interface. Some of these principles are
  1. Flexibility
  2. Choice of input methods
  3. Choice of output methods
  4. Consistency
  5. Compatibility with accessibility aids
Flexibility is a key principle in accessibility design. Users should be able to customize the user interface to their specific needs. They should also be able to choose from a variety of input methods, such as pointing devices or keyboards. The application should provide keyboard access to the important features of the application and mouse click access for common tasks.

Likewise, users should have a choice of output methods and be able to choose between sound, visual cues, graphics, and text. Your application should interact in a consistent manner with other applications and within its own operation. In addition, your application should be compatible with accessibility aids.

Accessibility and the Certified for Windows Program

In order to provide a standard set of guidelines for designing accessible applications, Microsoft has incorporated five requirements for applications to be certified in the Certified for Windows program. This section discusses the requirements for the Certified for Windows program and how to implement them.

Support Standard System Settings

The first requirement states that applications must support standard system settings for size, color, font, and input. This ensures that all of a user's applications have a consistent user interface that will inherit the look and feel provided by the system settings. Thus, users with accessibility needs can configure their systems once, and all of their applications will automatically adopt a consistent appearance.

You can implement this requirement in your applications by using System objects exposed through the .NET Framework. The .NET Framework provides a palette of system colors that can be used to set the colors of your application. When the system settings change, the colors of your application's user interface will change. Similarly, you can leave the font determination up to the system by not explicitly setting the Font property for your controls.

If the Font property is not changed from its default value, it will conform to the system font settings. The exception to this is the Font.Size property, which can be changed while maintaining accessibility requirements. Your application should be designed so that it can easily be used on a screen with 640 x 480 resolution and should not require any special methods of input beyond the keyboard and pointing devices.

These properties provide information to accessibility aids about the role of the control in the application. Accessibility aids can then present this information to the user or use this information to make decisions on how to display the control.

The AccessibilityObject property contains the AccessibleObject class instance that provides information to accessibility aids. The AccessibleName, AccessibleDescription, and AccessibleDefaultActionDescription properties contain information that accessibility aids can use to describe your user interface. The AccessibleRole property contains an enum value that determines how an accessibility aid treats your control.

This property is normally set to (Default), which indicates that each control is acting in its usual manner. It is important to set this property, however, when a control is acting in a manner more consistent with another type of control, or for custom controls. For example, if you have a custom control that displays data in a chart form, you would set the AccessibleRole property value to Chart.

Ensure Compatibility Using the High Constrast Option

Users requiring a high degree of legibility will select the High Contrast option. This option sets the Windows color scheme to a scheme that provides maximum contrast between light and dark portions of the user interface.

You can ensure that your application conforms to the High Contrast option requirement by only using system colors or colors chosen by the user. Thus, when the High Contrast option is chosen, your application will conform. You should also avoid using background images for your forms because they decrease contrast and legibility.

Provide Documented Keyboard Access to All Features

Your application should implement keyboard access for all features, and this access should be documented and discoverable. The use of shortcut keys to access controls and menu items, as well as setting the Tab order, allows you to implement keyboard access for your user interface features. The importance of documentation for these features cannot be overlooked. A user must have some means of discovering keyboard access for features and this should be provided through careful, complete, and well-organized documentation.

Provide Notification of the Keyboard Focus Location

The location of the keyboard focus is used by accessibility aids such as Magnifier and Narrator. Thus, it is important that the user and the application always have a clear understanding of where the focus is. For the most part, this is facilitated by the .NET Framework. When designing your program flow, however, you should always incorporate code to set the focus to the first control on a form when the form is first displayed, and the Tab Order should be set to provide logical program flow.

Convey No Information by Sound Alone

Your applications should never rely on sound to convey important information. Although sound is an important cue for some users, other users might be unable to perceive an alert that is communicated by an audio cue. When using sound to convey information, you should combine the notification with visual cues, such as flashing the background color of the active window, displaying a messagebox notification, or using a nonmodal screen that displays information while the application continues to execute.

RELATED POST

DAY 11 OOPS INTRODUCTION

DAY 12 POLYMORPHISM

DAY 13 INHERITANCE AND POLYMORPHISM

DAY 14 EBUGGING TOOLS IN DOT NET

DAY 15 DEBUG AND TRACE IN CLASSES

DAY 16 UNIT TEST PLAN

DAY 17 EXCEPTIONS IN VISUAL STUDIO

DAY 19 ADO.NET INTRODUCTION

DAY 20 DATA ACCESSING IN DOT NET

DAY 21 DATA BASE OBJECTS


No comments:

Post a Comment