390 likes | 503 Views
Prioritizing Remediation of Accessibility Issues. About Me. Karl Groves, Dir. of Training, Deque Systems karl.groves@deque.com @karlgroves 571-455-4862. Also, a rock star*. Agenda. What is an accessibility issue? Why prioritize? Understanding risk Challenges Remediation Approaches
E N D
About Me Karl Groves, Dir. of Training, Deque Systems karl.groves@deque.com @karlgroves 571-455-4862 Also, a rock star*
Agenda • What is an accessibility issue? • Why prioritize? • Understanding risk • Challenges • Remediation Approaches • Considerations • Simple Prioritization • Advanced Prioritization
Things to keep in mind • I am mathematically challenged • This topic is exploratory, not declarative • Please participate, ask questions, offer new ideas
What is an Accessibility Issue? • Bug: Term used to describe an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or causes it to behave in unintended ways.
Why Prioritize? • Apply resources most effectively • Minimize accessibility’s impact on business • Motivate development staff • Maximize positive impact for users • Reduction of Risk
Understanding Risk • Risk is the potential that a chosen action or activity (including the choice of inaction) will lead to a loss (an undesirable outcome).
Understanding Risk • Ultimately, remediation of bugs is an effort at risk mitigation • Risks of • Poor quality (Users having problem with system) • Lost income • Ancillary losses • Administrative Complaint (public sector) • Litigation
Understanding Risk • Probability Probability = (number of negative events) / (population)
Understanding Risk • Risk Amount Risk Amount = (probability of a negative event) * (expected loss in case of negative event)
Understanding Risk • ROI ROI = ((Risk Amount - Investment)/ Investment)*100 Where: Risk Amount = Expected loss * probability Investment = Money spent on Accessibility
What factors impact our ability to fix our system? Challenges
Challenges • Not all accessibility problems are equal • Time • Impact • Impact on Users • Impact on Business • WCAG Level & SC is inappropriate for determining priority
Challenges • Time • Often at a premium • Time spent on after-the-fact bug repairs is time that is taken away from meeting other business needs • See, “Technical Debt”, Martin Fowler
Challenges • Impact • Budgets • Resources • System
Simple Prioritization • Simple Prioritization • Focused solely on time and (simple) impact • How long will it take? • How bad is the problem?
Simple Prioritization • Pros • Focused on the user • Super simple • Often, “hunch” from expert is as good as something more formal • Cons • Does not take into consideration impact on business or system
Advanced Prioritization • User Impact • Ease & Speed • Impact on Interface • Volume • Location • Secondary Benefit • Each item ranked: None (0), Low (1), Medium (2), High (3)
Advanced Prioritization • Impact on Users with Disabilities • Broken down by type of user & impact on each • IB - Blind • IV – Visually Impaired (non-blind) • IH – Deaf & HoH • IM – Motor • IC - Cognitive • IS – Speech • Impact* = (IB + IV + IH + IM + IC + IS)
Advanced Prioritization • Ease and Speed of Repair
Advanced Prioritization • Impact on Interface & Operation
Advanced Prioritization • Volume of Repeat Issues • How many times does the exact same issue occur? • How many times do (very) similar issues occur?
Advanced Prioritization • Location of Issues • Traffic • Criticality of location
Advanced Prioritization • Secondary Benefit • Older Users • Low Literacy Users • Low Bandwidth Users • Reduced Dev/ Maintenance time • Alternate Devices • SEO • Usability • Tie to org goals
Advanced Prioritization • (Impact + Repair Speed + Location + Secondary Benefits) * Volume = Priority • Sort all issues according to priority • Fix em!
Advanced Prioritization • What’s missing? • Normalize data? • Do some of this ahead of time? • Importance ranking for each factor • Risk from Litigious user types?
Dilution Managing Remediation
Managing Remediation • You have a report full of bugs • Now what do you do?
Managing Remediation • Managing Remediation is a process not unlike dilution in chemistry • Dilution: The process of reducing the concentration of a solute in solution • In our case: reducing concentration (defect density) in a system Concentration = numBugs/linesOfCode
Managing Remediation Accessibility Errors - High Priority - Medium Priority - Low Priority Non-CompliantSystem Partially-CompliantSystem Mostly-CompliantSystem
Managing Remediation Fully-Compliant System
Managing Remediation • Measuring improvement (concentrationStart - concentrationEnd) / time Only 1st order accurate. Perfect for snapshots.
Conclusion • In the quest for #perfectA11y, prioritization helps us get closer quicker • We must maximize efficiency to have high positive impact • Multiple factors exist that can be used to determine priority • Iterate remediation efforts to progressively dilute them • We can measure success
Connecting with Deque Twitter LinkedIn Web Email @dequesystems Deque Systems deque.com info@deque.com