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 – 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? 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? 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 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-thefact bug repairs is time that is taken away from meeting other business needs – See, “Technical Debt”, Martin Fowler Challenges • Impact – Budgets – Resources – System REMEDIATION APPROACHES 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-Compliant System Partially-Compliant System Mostly-Compliant System Managing Remediation Fully-Compliant System Managing Remediation • Measuring improvement (concentrationStart - concentrationEnd) / time Only 1st order accurate. Perfect for snapshots. CONCLUSION 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 @dequesystems LinkedIn Deque Systems Web deque.com Email info@deque.com