accessible java application user interface design guidelines

Post on 26-May-2015

2.126 Views

Category:

Business

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Accessible Java Application User Interface Design

GuidelinesLawrence J. Najjar, Ph.D.

BMC Software*

*Now at TandemSevenlnajjar@tandemseven.com

2

Accessibility Challenges

• Java applications can be very complex• Java applications need to be accessible

• Most accessibility guidelines, tools, and other resources

are for Web applications

3

Sample Java Application

4

Sample Java Application

5

The Need

User interface design guidelines – Based on accessibility requirements– Tailored for Java applications

6

Accessibility Requirements

Section 508 of US Rehabilitation Act (General Services Administration, 2005)– Paragraph 1194.21 Software applications and

operating systems– Paragraph 1194.31 Functional performance criteria– Paragraph 1194.41 Information, documentation, and

support

7

Paragraph 1194.21 Software Applications and Operating Systems

Describes how to improve accessibility of – Interactive software applications (such as Java

applications)– Operating systems

8

Requirement A

“When software is designed to run on a system that has a keyboard, product functions shall be executable from a keyboard where the function itself or the result of performing a function can be discerned textually.” (General Services Administration, 2005)

9

Keyboard

• Allow keyboard only users to perform (nearly) all functions

• Define initial focus in every window• Create tabbing order based on user needs• Provide tab stop for instructions• Define spacebar to select a choice, Enter key to perform

window’s default action

10

Keyboard-Only

11

Initial Focus

12

Tabbing Order

13

Keyboard

• Design F10 to move keyboard focus to window menu bar (ex. File, Edit, View)– Tab and left-right arrows move between menus– Down-up arrows open menus– Down-up arrows move within choices in menu– Right-left arrows move between open menus– Esc key closes menus

• Provide keyboard alternatives for drag-and-drop• In multiple document interface, design Ctrl-F6 to move to

next child window

14

Keyboard

15

Mnemonics

• Create mnemonics to allow users to press keys (ex. Alt-f) to move focus to a user interface control and activate it

• Provide mnemonics for each menu bar item, choice in menu bar menus, and most frequently used controls in primary windows

• For long list of check boxes or radio buttons, provide mnemonic for first item, arrow between items

• Do not provide mnemonics for “OK” or “Cancel”

16

Mnemonics

17

Mnemonics

18

Shortcut Keys

• Provide shortcut keys (ex. Ctrl-c, Shift-F1, F1) to allow users to perform very frequent menu bar actions

• Do not use “Alt” as shortcut key because is used for mnemonics

19

Shortcut Keys in Edit Menu

20

Combo Boxes

• Allow users to keep control• Allow users to move up and down choices without

submitting a choice• Process choice only after user presses “Enter” key and

selects submit button (ex. “Go”)

21

Help

• Keyboard-only users need Help for required key combinations

• In Help, describe ways to perform functions for keyboard-only users – Bad: “To open the contextual menu, right-click on the item”– Good: “To open the contextual menu, right-click on the item or

move focus to the item and press Shift-F10”

22

Conclusions

• By following these guidelines, we can design and build accessible Java applications

• Accessible Java applications are attractive to governments, companies, and schools

• Accessibility is good business

23

24

References

• Epilepsy.com (2004a). Frequently asked questions. Retrieved February 10, 2005, from http://www.epilepsy.com/info/family_faq.html

• Epilepsy.com (2004b, February). Reflex epilepsies. Retrieved February 10, 2005, from http://www.epilepsy.com/epilepsy/epilepsy_reflex.html

• General Services Administration (2005). Section 508. Retrieved February 8, 2005, from http://www.section508.gov/index.cfm?FuseAction=Content&ID=12

• Microsoft (2004). Official guidelines for user interface developers and designers. Retrieved February 10, 2004, from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html/welcome.asp

• Sun (2001). Java look and feel design guidelines (2nd ed.). Boston: Addison-Wesley. Retrieved February 10, 2005, from http://java.sun.com/products/jlf/ed2/book/index.html

• Watchfire (2005). Welcome to Bobby. Retrieved February 8, 2005, from http://bobby.watchfire.com/bobby/html/en/index.jsp

25

References

• Willuhn, D., Schulz, C., Knoth-Weber, L., Feger, S., & Saillet, Y. (2003). Developing accessible software for data visualization. IBM Systems Journal, 42(4), 652-668. Retrieved February 10, 2005, from http://www.research.ibm.com/journal/sj/424/willuhn.pdf

• World Wide Web Consortium (2005). Web accessibility initiative (WAI). Retrieved February 8, 2005, from http://www.w3c.org/WAI/

26

Tool Tips

• Provide simple, alternative ways for users to access text in tool tips

• For graphic (ex. toolbar button), provide alternative text label

• For line of date in table, provide hyperlink labeled “Show Details”

• Create contextual menu for object that includes “Show Details” choice– Contextual menu = Action menu bar menu via Shift-F10– When user selects “Show Details” contextual menu choice,

provide secondary window with tool tip text

27

Tool Tip

28

Tool Tip

Data SourceNameEast Coast zimbabwe : ZIM817MA

DBMSOracle 8.0.5

South Region zimbabwe : ZIM920GA Oracle 9.2.0West Region javelina : JAV720SJ UDB 7.2.0

StatusFailed

DetailsShow DetailsShow Details

Show Details

Show DetailsCopy Ctrl+CPaste Ctrl+V

Data SourceNameEast Coast zimbabwe : ZIM817MA

DBMSOracle 8.0.5

South Region zimbabwe : ZIM920GA Oracle 9.2.0West Region javelina : JAV720SJ UDB 7.2.0

StatusFailed

DetailsShow DetailsShow Details

Show Details

Located: BostonNetwork: SwanBoat27Last updated: 07/27/2005

Show DetailsShow Details

Located: BostonNetwork: SwanBoat27Last updated: 07/27/2005

Close

29

Tool TipOpenCopy Ctrl+CSelect All Ctrl+AChoose Columns...

top related