viking methodology

84
1 Monday, May 20, 13 Viking Accessibility: The Warrior's Approach to Hands-on Testing

Upload: karl-groves

Post on 07-Nov-2014

310 views

Category:

News & Politics


5 download

DESCRIPTION

A hands on discussion of web accessibility testing techniques

TRANSCRIPT

Page 1: Viking methodology

1Monday, May 20, 13

Viking Accessibility:The Warrior's Approach to Hands-on Testing

Page 3: Viking methodology

3Monday, May 20, 13

Goals and Objectives

• Understand accessibility testing techniques

• Understand common challenges by content type

• Gain hands-on knowledge

Page 4: Viking methodology

4Monday, May 20, 13

Resources

http://examples.simplyaccessible.com/vikinghandson/

Page 5: Viking methodology

5Monday, May 20, 13

Review - Understanding Disability

Page 6: Viking methodology

6Monday, May 20, 13

Visual Impairment

• Blindness

• Partially Sighted

• Low Vision

• Colorblindness

What types of challenges will they have on the web?

Page 7: Viking methodology

7Monday, May 20, 13

Hearing Impairment

• Deafness (one/ both ears)

• Hard of hearing

• High/ low frequency hearing loss

What types of challenges will they have on the web?

Page 8: Viking methodology

8Monday, May 20, 13

Motor Impairment

• Loss of limbs, digits

• Palsy disorders

• Repetitive stress injuries

• Arthritis

• Spinal cord injuries

• more

What types of challenges will they have on the web?

Page 9: Viking methodology

9Monday, May 20, 13

Cognitive Impairment

• Autism

• Brain injury

• Parkinson’s

• Dyslexia

• Alzheimer’s

• more

What types of challenges will they have on the web?

Page 10: Viking methodology

10Monday, May 20, 13

Speech Impairment

• Stuttering

• Muteness

• Dysarthria (resulting from motor control disorders)

• Articulation & phonemic disorders

What types of challenges will they have on the web?

Page 11: Viking methodology

11Monday, May 20, 13

Principles of Accessibility

Page 12: Viking methodology

12Monday, May 20, 13

P erceivableO perableU nderstandableR obust

Focuses on user needs, not technology.

Page 13: Viking methodology

13Monday, May 20, 13

Assistive Technologies

Page 14: Viking methodology

14Monday, May 20, 13

Screen Readers

• Intercept what is sent to standard output

• Object info & content rendered in text to speech

Page 15: Viking methodology

Screen Readers

15Monday, May 20, 13

User needs:

• Keyboard access

• Text alternatives

• Headings

• Logical/ sequential ordering

• Proper labels

Page 16: Viking methodology

Screen Magnification

• Enlarges on screen content

• Different magnification modes

• Contrast Modes

• Cursor, pointer enhancement

http://flickr.com/photos/justinstravels/322408478/

16Monday, May 20, 13

Page 17: Viking methodology

Screen Magnification

http://flickr.com/photos/justinstravels/322408478/

17Monday, May 20, 13

User needs:

• Text alternatives

• Resizable layouts

• Flexible content

Page 18: Viking methodology

18Monday, May 20, 13

Voice Recognition

Accepts user commands to activate controls and interact with system

Page 19: Viking methodology

Voice Recognition

19Monday, May 20, 13

User Needs:

• Device independence

• Accurate text alternatives

• Accurate labels

Page 20: Viking methodology

20Monday, May 20, 13

Hardware

As diverse as the array of possible disabilities and severities thereof

Page 21: Viking methodology

• Body Level One

Body Level Two

Body Level Three

21Monday, May 20, 13

Often Combined

http://flickr.com/photos/kazuhito/132436943/

Page 22: Viking methodology

simplyaccessible.comKarl Groves | @karlgroves

22Monday, May 20, 13

Approaches to Testing

Page 23: Viking methodology

23Monday, May 20, 13

Automated Testing

What is it? Use of tool to access web document and subject it to predetermined heuristic checks

• Plugins/ Toolbars

• Desktop Apps

• Web Apps

Page 24: Viking methodology

Automated Testing

24Monday, May 20, 13

Pros:

• Unprecedented efficiency (cost per issue)

• Some issues don’t require humans

Cons:

• Incomplete coverage

• False positives

• Subjectivity in a11y

• DOM testing

• User interaction

Page 25: Viking methodology

25Monday, May 20, 13

Manual Testing

What is it? Use of hands-on techniques to inspect for potential failures, possibly by emulating disabled user scenarios

• Code inspection

• Hardware manipulation

• Software/ Settings manipulation

• AT Testing

Page 26: Viking methodology

Manual Testing

26Monday, May 20, 13

Pros:

• Accuracy

• Reliability

• Judgment

Cons:

• Time

• Reliant on tester’s skill

Page 27: Viking methodology

27Monday, May 20, 13

Use Case Testing

What is it? Analysis of system behavior by subjecting it to scenarios that touch on functional requirements - in this case doing so with assistive technologies

Page 28: Viking methodology

Use Case Testing

28Monday, May 20, 13

Pros:

• Can happen concurrently with other testing

• Gives glimpse of real-world issues faced by PWD

Cons:

• Time

• Tester must know the AT

• Success with one AT !== success with all

Page 29: Viking methodology

29Monday, May 20, 13

Usability Testing

What is it? Observation of test participants using core user tasks, measuring efficiency, accuracy, recall, emotional response.

Page 30: Viking methodology

Usability Testing

30Monday, May 20, 13

Pros:

Most closely represents user’s actual experience

Cons:

• Expensive

• Time-Consuming

• Results may be skewed by high impact issues

Page 31: Viking methodology

31Monday, May 20, 13

Tools

“It’s a poor mechanic who blames his tools” - Old Man Brian

Page 32: Viking methodology

Tools

32Monday, May 20, 13

Free:

• Browser Toolbars/ Plugins

• Online evaluators

Non-Free:

• Enterprise testing suites

Page 33: Viking methodology

33Monday, May 20, 13

Browser Toolbars/ Plugins

Examples:

• WAVE

• Favelets Bar

• Web Accessibility Toolbar

• Web Developer Plugin

• Fangs

Page 34: Viking methodology

34Monday, May 20, 13

WAVE from WebAIMhttp://wave.webaim.org

Page 35: Viking methodology

35Monday, May 20, 13

Accessibility Evaluation Toolbar

Page 36: Viking methodology

36Monday, May 20, 13

Web Developer Toolbar

Page 37: Viking methodology

37Monday, May 20, 13

Favelets Bar

Page 38: Viking methodology

38Monday, May 20, 13

Fangs

Page 39: Viking methodology

39Monday, May 20, 13

Online Evaluators

Examples:

• aChecker

• FAE

• Cynthia Says

• WAVE

Page 40: Viking methodology

40Monday, May 20, 13

WAVE

Page 41: Viking methodology

41Monday, May 20, 13

FAE

Page 42: Viking methodology

42Monday, May 20, 13

aChecker

Page 43: Viking methodology

43Monday, May 20, 13

Enterprise Tools

• AMP - SSB BART Group

• Compliance Sheriff - HiSoftware

• Worldspace - Deque

• Rational Studio - IBM

• Compliance Guardian - AvePoint

Page 44: Viking methodology

44Monday, May 20, 13

Viking Methodology

“Failure to plan is planning to fail” - Zig Ziglar

Page 45: Viking methodology

45Monday, May 20, 13

Principles

• Utility

• Accuracy

• Efficiency

• Reliability

• Repeatability

Page 46: Viking methodology

46Monday, May 20, 13

Driving Factors

• Modern websites are not composed of static content

• Certain types of issues occur more often than others

• Certain types of content have more issues than others

• Certain types of issues are more impactful than others

Page 47: Viking methodology

47Monday, May 20, 13

Audits vs. QA

Audits:

• Should maximize utility

• Focus on UI component types

• Priority given to high use, high risk features and components

QA:

• A11y should be part of QA process

• Deliver fast, accurate results & guidance

• Focus only on in-scope work (i.e. user stories & features under dev)

Page 48: Viking methodology

48Monday, May 20, 13

Testing Web Content

Page 49: Viking methodology

49Monday, May 20, 13

Markup and A11y

• All content must be marked up using the most appropriate elements & attributes for the job

• All scripted controls must operate like the native controls which they mimic

Page 50: Viking methodology

Markup and A11y

50Monday, May 20, 13

Page Structure:

What is it?

How are users impacted?

Page 51: Viking methodology

Markup and A11y

51Monday, May 20, 13

Page Structure Requirements:

• Valid, semantic markup

• Page titles: unique, terse, clear, informative

How do we test this?

Page 52: Viking methodology

52Monday, May 20, 13

Page Structure

Page 53: Viking methodology

53Monday, May 20, 13

Keyboard Access/ Focus Control

Keyboard Access, Focus Control:

What is it?

How are users impacted?

Page 54: Viking methodology

Keyboard Access/ Focus Control

54Monday, May 20, 13

Keyboard Access, Focus Control Requirements:

• Focus order matches expected interaction order

• Items that should get focus do; Items that should not get focus don’t

How do we test this?

Page 55: Viking methodology

55Monday, May 20, 13

Keyboard Access and Focus Control

Page 56: Viking methodology

56Monday, May 20, 13

CSS

Cascading Stylesheets:

What is it?

How are users impacted?

Page 57: Viking methodology

CSS

57Monday, May 20, 13

• Content must remain readable and operable

• Visual indications must also be represented programmatically

• Color contrast

How do we test this?

Page 58: Viking methodology

58Monday, May 20, 13

CSS

Page 59: Viking methodology

59Monday, May 20, 13

Forms

Forms:

What are they?

How are users impacted?

Page 60: Viking methodology

Forms

60Monday, May 20, 13

Forms Requirements:

• All fields labeled tersely, clearly

• Constraints identified

• All fields operable via keyboard

• Errors prevented

• Error recovery facilitated

How do we test this?

Page 61: Viking methodology

Forms61Monday, May 20, 13

Page 62: Viking methodology

62Monday, May 20, 13

Frames

Frames:

What are they?

How are users impacted?

Page 63: Viking methodology

Frames

63Monday, May 20, 13

Frames Requirements:

Frames given clear, terse, informative titles

How do we test this?

Page 64: Viking methodology

Frames

64Monday, May 20, 13

Page 65: Viking methodology

65Monday, May 20, 13

Images

Images:

What are they?

How are users impacted?

Page 66: Viking methodology

Images

66Monday, May 20, 13

Image Requirements:

• Images not used to replace text

• All images have text alternative

• All text alternatives sufficiently clear and informative

• Background images, sprites not used for actionable items or content

How do we test this?

Page 67: Viking methodology

Images

67Monday, May 20, 13

Page 68: Viking methodology

68Monday, May 20, 13

Media

Media:

What is this?

How are users impacted?

Page 69: Viking methodology

Media

69Monday, May 20, 13

Media Requirements

• Captions

• Transcripts

• Audio Description

• Access to controls

How do we test this?

Page 70: Viking methodology

Media

70Monday, May 20, 13

Page 71: Viking methodology

71Monday, May 20, 13

Navigation

Navigation:

What is it?

How are users impacted?

Page 72: Viking methodology

Navigation

72Monday, May 20, 13

Navigation Requirements

• “Links” are actual links & use valid href

• Link text is unique, terse, clear, informative

How do we test this?

Page 73: Viking methodology

Navigation

73Monday, May 20, 13

Page 74: Viking methodology

74Monday, May 20, 13

Tables

Tables:

What are they?

How are users impacted?

Page 75: Viking methodology

Tables

75Monday, May 20, 13

Table Requirements

• No tables for layout

• Headers identified

• Header relationships identified

• Good structure

How do we test this?

Page 76: Viking methodology

Tables

76Monday, May 20, 13

Page 77: Viking methodology

77Monday, May 20, 13

Text Content

Text Content:

What is it?

How are users impacted?

Page 78: Viking methodology

Text Content

78Monday, May 20, 13

Text Content Requirements

• Proper use of headings

• Headings are unique, terse, clear, informative

• Proper use and structure of lists & sub-lists

How do we test this?

Page 79: Viking methodology

Text Content

79Monday, May 20, 13

Page 80: Viking methodology

80Monday, May 20, 13

JavaScript-driven Content

JavaScript Content:

What is it?

How are users impacted?

Page 81: Viking methodology

JavaScript-driven Content

81Monday, May 20, 13

JavaScript Requirements

• Device independence

• Keyboard access/ focus control

• Name, State, Role, Value

How do we test this?

Page 82: Viking methodology

JavaScript-driven Content

82Monday, May 20, 13

Name: What do we call this thing?

State: What is it doing? (Implicitly) What else can it do?

Role: What type of object is it?

Value: What is its value (if it can have one)

Using standard controls in standard ways gives this to us for free.

Page 83: Viking methodology

JavaScript-driven Content83Monday, May 20, 13

Page 84: Viking methodology

84Monday, May 20, 13

simplyaccessible.com

Accessibility consulting, strategy and assessmentsAccessible development and remediation servicesTraining courses, workshops and conferences Karl Groves

[email protected]@karlgroves

+1 443.875.7343