SlideShare uma empresa Scribd logo
1 de 23
Baixar para ler offline
Cheryl Aranha, Intuit!
Ted Drake, Intuit!
CSUN 2014
Using QuickBooks as a
Model for Updating
Mature Software for
Accessibility
This presentation was created for CSUN 2014, San Diego.
Aztec pyramids are massive structures built 2-3,000 years ago. While they seem daunting, they are ultimately composed of multiple steps. This
presentation shows the steps taken by a small team to make QuickBooks Desktop accessible.

photo: Chichen Itza Pyramid in Riviera Maya, Mexico by Grand Velas Riviera Maya 
http://www.flickr.com/photos/grandvelasrivieramaya/3180226026/
Step 1: !
What’s broken?
You need a full understanding of what’s broken before you can fix it. 
Where in the architecture are the problems caused?
History
• Older than MSAA platform!
• Custom, not standard, components!
• No awareness of impact!
• Workarounds became the norm
QuickBooks was built in 1990’s before Microsoft’s MSAA platform was established. Unfortunately the core of QuickBooks was built on custom elements that had no standard
interface with the Accessibility APIs. 
Engineers continued to work with custom elements, as there was not an understanding of the accessibility impact. 
As the product matured, elements began integrating standards and some elements were more accessible. However, blind users still had to discover their own workarounds to use
the product.
photo: Mexico City by Ana Kelston http://www.flickr.com/photos/bananawacky/10563468256/
QB 2013
Broken Promises
QB 2013 was a significant re-build with a new, simplified interface.
Designers paid significant attention to low vision and cognitive accessibility.
Unfortunately, the engineers made the product less accessible with the new set of custom components.
QB was testing with blind users, but were not able to solve the increasingly bad developments prior to product launch.
• Significantly simplified interface!
• Improved low vision and cognitive
accessibility!
• Worse accessibility for screen reader users!
• JAWS Script-only fix attempt!
• Blind user testing did not solve problems
prior to product launch
QB 2013
QuickBooks 2013 was a mixed bag. There were attempts to add more accessible, but they efforts were not effective. 
This led to a fundamental re-evaluation.
QuickBooks 2014
A New Commitment
photo: Chichen Itza Sun God by Thomasz Wagner http://www.flickr.com/photos/mananetwork/358007257/
Executive Support
Step 2:
While executives understood the accessibility challenge, we needed them to fully embrace the efforts and provide the budget to hire consultants (DeQue
and My Blind Spot) to make this work. They also committed to making this a permanent effort and to include outreach and education.
Executive Support
• QuickBooks executives introduced to
accessibility impact on a personal level.!
• Dixie’s video and meeting with Albert
Rizzi led to expanded support!
• Accessibility became a “no trade-off”
position for QB 2014.
While executives understood the accessibility challenge, we needed them to fully embrace the efforts and provide the budget to hire consultants (DeQue
and My Blind Spot) to make this work. They also committed to making this a permanent effort and to include outreach and education.
Dixie’s Dilemma
This video introduces Dixie. It was originally created for QuickBooks upper management to understand the problems caused by QB inaccessibility. It’s
effectiveness was stronger than we hoped and the video was released officially by Intuit.
http://www.youtube.com/watch?v=ZklXouXyORk
Step 3!
Build the Team
photo: Mexico, Tula by Phil http://www.flickr.com/photos/chicoboomba/8125701672/
QB Team
• Cheryl Aranha (QuickBooks) - Project Management,
Lead Engineer !
• Steven Clark and John Martyn (My Blind Spot) -
Scripting and User expertise!
• Sujasree Kurapati (DeQue) - C++ and Accessibility
API expertise!
• Albert Rizzi (My Blind Spot) - User testing, training,
outreach management!
• Lori Samuels (Intuit) - Project and Strategy
Management
Cheryl’s team expanded as she was able to reach across the QuickBooks team to find help on specific problems. For instance, tracking down engineers
that previously worked on components.
Step 4:!
Find Solutions
JAWS Scripts
• John Martyn demonstrated his JAWS
scripts for QB 2012 at NFB 2012!
• Screen layout dependent!
• Slow and fragile!
• Required significant changes for QB 2013
The scripts were a valiant effort, but were limited by the lack of control information provided by the program.
With no solid identification of objects, the scripts had to investigate the page to discover the identity of each element.
Fix The Core
• Focus on the components	

• Identify their state,class, name, and control
ID	

• Start with one page, expand to full product	

• Regression testing critical
QuickBooks is fundamentally a mature product with a large user base. Our first priority was to fix the accessibility issues without introducing new issues. 
!
Start small (one screen) allow changes to bubble up across the product.
Automated Testing
•If they can do it, why can’t we?!
•Core fixes improve automated
testing
Accessibility projects need to include automated testing, as they go hand in hand.
With QB, the automated tests included complicated methods to grab component information. We were able to use this information to make these custom components
work for everyone.
Working with QA incorporated regression testing to ensure product stability.
photo: robot by jbraine http://www.flickr.com/photos/jbraine/4282847492/
Challenges
!• Product cycle and regression
timelines!
!•!Levels of testing! !
•!Respecting OS themes!
!•!Mixed technical stack!
!•!Prioritizing screens

 •
 Keeping to product cycle and regression timelines

 •
 Levels of testing: From within product/ testing for accessibility/ testing with scripts/ beta testing

 •
 Respecting OS themes and not overriding system behaviour- be it colors/ fonts etc

 •
 Mixed technical stack

 •
 Prioritizing screens- to our luck, fixing some core controls ended up getting fixed across QB. But this widened the scope of testing
Results
• QB 2014 release included basic accessibility!
• Subsequent releases have increased support
to 90%!
• JAWS Scripts make product much more
usable.!
• NVDA and WindowEyes under development!
• Roadmap for QB 2015 and future releases
This short video shows how the inputs are now announcing the states, values, and functionality. It shows how to write a check, one of the most commonly
used screens within QuickBooks. The screen reader is JAWS
Step 5: !
Testing and Training
Steven and Sujasree brought extensive screen reader experience 
Small business and accountants were enlisted 
Testing for barriers and inconsistencies
Testers helped each other via email distribution list
Training
• Current users have developed their own
workarounds.	

• These will be affected with new release	

• Education to use QB 2014 natively	

• Accessible training materials
Real World Training provides official training for QuickBooks, this information is used towards building the accessible documentation
Video Training
This check writing video represents the training component of this project. Richard Kelly also has a video on setting up QuickBooks to work with JAWS.
http://www.youtube.com/watch?v=nioOjbvSCkU
Interesting Discoveries
• Custom focus color was blocking JAWS!
• Detect screen reader to remove skins!
• Beta testing platform was not
accessible!
• Document shortcut keys for consistency
QuickBooks used a green highlight color. JAWS looks for blue or black and was not able to detect the green focus indication.
Better yet, changes were made to use true focus instead of only visual indication
Detecting the screen reader via Microsoft’s wm_getobject allowed us to disable the problematic skin and focus on core elements.
Beta testers were initially blocked by a third party software that was not accessible.
Contact
• Ted Drake, Intuit 

@ted_drake, Ted_Drake@Intuit.com!
• Cheryl Aranha, Intuit

Cheryl_Aranha@Intuit.com !
• Albert Rizzi, My Blind Spot

@MyBlindSpotOrg

Mais conteúdo relacionado

Mais procurados

iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank FrambachiSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
Ievgenii Katsan
 
Building a DevOps Team that isn't Evil
Building a DevOps Team that isn't EvilBuilding a DevOps Team that isn't Evil
Building a DevOps Team that isn't Evil
IBM UrbanCode Products
 

Mais procurados (20)

Scrum: Enterprise Adoption
Scrum: Enterprise AdoptionScrum: Enterprise Adoption
Scrum: Enterprise Adoption
 
Agile and Startups - What can go wrong - a Case study (Presented at ExpoQA 20...
Agile and Startups - What can go wrong - a Case study (Presented at ExpoQA 20...Agile and Startups - What can go wrong - a Case study (Presented at ExpoQA 20...
Agile and Startups - What can go wrong - a Case study (Presented at ExpoQA 20...
 
DevOps Transformation - Another View
DevOps Transformation - Another ViewDevOps Transformation - Another View
DevOps Transformation - Another View
 
Continous integration-leon-kehl-2010
Continous integration-leon-kehl-2010Continous integration-leon-kehl-2010
Continous integration-leon-kehl-2010
 
Lean Software Development: Values and Principles
Lean Software Development: Values and PrinciplesLean Software Development: Values and Principles
Lean Software Development: Values and Principles
 
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank FrambachiSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
 
2018 Citrix Migration Survey - Industry Insights
2018 Citrix Migration Survey - Industry Insights2018 Citrix Migration Survey - Industry Insights
2018 Citrix Migration Survey - Industry Insights
 
QA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael HallQA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael Hall
 
DevOps 101 for Government
DevOps 101 for GovernmentDevOps 101 for Government
DevOps 101 for Government
 
Managing the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered InsightsManaging the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered Insights
 
How to consolidate Citrix Monitoring in a Single Pane of Glass
How to consolidate Citrix Monitoring in a Single Pane of GlassHow to consolidate Citrix Monitoring in a Single Pane of Glass
How to consolidate Citrix Monitoring in a Single Pane of Glass
 
To scrumornottoscrum bucharest-2013
To scrumornottoscrum bucharest-2013To scrumornottoscrum bucharest-2013
To scrumornottoscrum bucharest-2013
 
Tailoring your SDLC for DevOps, Agile and more
Tailoring your SDLC for DevOps, Agile and moreTailoring your SDLC for DevOps, Agile and more
Tailoring your SDLC for DevOps, Agile and more
 
How to Detect & Resolve Five Common Citrix XenApp & XenDesktop Performance Ch...
How to Detect & Resolve Five Common Citrix XenApp & XenDesktop Performance Ch...How to Detect & Resolve Five Common Citrix XenApp & XenDesktop Performance Ch...
How to Detect & Resolve Five Common Citrix XenApp & XenDesktop Performance Ch...
 
Building a DevOps Team that isn't Evil
Building a DevOps Team that isn't EvilBuilding a DevOps Team that isn't Evil
Building a DevOps Team that isn't Evil
 
The Lean Software Factory by Yves Caseau
The Lean Software Factory by Yves CaseauThe Lean Software Factory by Yves Caseau
The Lean Software Factory by Yves Caseau
 
Why Is My Java App Slow? 5 Monitoring Best Practices for a Great User Experience
Why Is My Java App Slow? 5 Monitoring Best Practices for a Great User ExperienceWhy Is My Java App Slow? 5 Monitoring Best Practices for a Great User Experience
Why Is My Java App Slow? 5 Monitoring Best Practices for a Great User Experience
 
from 0 to continuous delivery in 30 minutes
from 0 to continuous delivery in 30 minutesfrom 0 to continuous delivery in 30 minutes
from 0 to continuous delivery in 30 minutes
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
A Deep Dive Into Comprehensive Citrix & VDI Monitoring with eG Enterprise
A Deep Dive Into Comprehensive Citrix & VDI Monitoring with eG EnterpriseA Deep Dive Into Comprehensive Citrix & VDI Monitoring with eG Enterprise
A Deep Dive Into Comprehensive Citrix & VDI Monitoring with eG Enterprise
 

Semelhante a Using QuickBooks as a Model for Updating Mature Software for Accessibility csun14

How to Master UX Testing in an Agile Design Process
How to Master UX Testing in an Agile Design ProcessHow to Master UX Testing in an Agile Design Process
How to Master UX Testing in an Agile Design Process
UserZoom
 
SanDiego_DevOps_Meetup_9212016
SanDiego_DevOps_Meetup_9212016SanDiego_DevOps_Meetup_9212016
SanDiego_DevOps_Meetup_9212016
w2fong
 

Semelhante a Using QuickBooks as a Model for Updating Mature Software for Accessibility csun14 (20)

Road to agile: federal government case study
Road to agile: federal government case studyRoad to agile: federal government case study
Road to agile: federal government case study
 
How to Master UX Testing in an Agile Design Process
How to Master UX Testing in an Agile Design ProcessHow to Master UX Testing in an Agile Design Process
How to Master UX Testing in an Agile Design Process
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Agile and data driven product development oleh Dhiku VP Product KMK Online
Agile and data driven product development oleh Dhiku VP Product KMK OnlineAgile and data driven product development oleh Dhiku VP Product KMK Online
Agile and data driven product development oleh Dhiku VP Product KMK Online
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle Management
 
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFuVasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
 
Cross-Platform Agile DevOps with Visual Studio Team Services
Cross-Platform Agile DevOps with Visual Studio Team ServicesCross-Platform Agile DevOps with Visual Studio Team Services
Cross-Platform Agile DevOps with Visual Studio Team Services
 
Bugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfBugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perf
 
DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)
 
Critical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right WayCritical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right Way
 
Case Study : Manual & Automation Testing
Case Study : Manual & Automation TestingCase Study : Manual & Automation Testing
Case Study : Manual & Automation Testing
 
We’re Doing What, When? Incorporating UX Design Into Agile
We’re Doing What, When? Incorporating UX Design Into AgileWe’re Doing What, When? Incorporating UX Design Into Agile
We’re Doing What, When? Incorporating UX Design Into Agile
 
How Oracle Integrates Accessibility into the Development Process
How Oracle Integrates Accessibility into the Development ProcessHow Oracle Integrates Accessibility into the Development Process
How Oracle Integrates Accessibility into the Development Process
 
SanDiego_DevOps_Meetup_9212016
SanDiego_DevOps_Meetup_9212016SanDiego_DevOps_Meetup_9212016
SanDiego_DevOps_Meetup_9212016
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
DevOps Dilemma - Make Dev work with Ops!
DevOps Dilemma - Make Dev work with Ops!DevOps Dilemma - Make Dev work with Ops!
DevOps Dilemma - Make Dev work with Ops!
 
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
 
Linking Upstream and Downstream Agile
Linking Upstream and Downstream AgileLinking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
 
QA in an Agile Environment
QA in an Agile EnvironmentQA in an Agile Environment
QA in an Agile Environment
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
 

Mais de Ted Drake

Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Ted Drake
 
Transforming Accessibility one lunch at a tiime - CSUN 2023
Transforming Accessibility one lunch at a tiime - CSUN 2023Transforming Accessibility one lunch at a tiime - CSUN 2023
Transforming Accessibility one lunch at a tiime - CSUN 2023
Ted Drake
 
The Saga of Accessible Colors
The Saga of Accessible ColorsThe Saga of Accessible Colors
The Saga of Accessible Colors
Ted Drake
 

Mais de Ted Drake (20)

Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
 
Transforming Accessibility one lunch at a tiime - CSUN 2023
Transforming Accessibility one lunch at a tiime - CSUN 2023Transforming Accessibility one lunch at a tiime - CSUN 2023
Transforming Accessibility one lunch at a tiime - CSUN 2023
 
Inclusive Design for cognitive disabilities, neurodiversity, and chronic illness
Inclusive Design for cognitive disabilities, neurodiversity, and chronic illnessInclusive Design for cognitive disabilities, neurodiversity, and chronic illness
Inclusive Design for cognitive disabilities, neurodiversity, and chronic illness
 
Inclusive design for Long Covid
 Inclusive design for Long Covid  Inclusive design for Long Covid
Inclusive design for Long Covid
 
Covid 19, brain fog, and inclusive design
Covid 19, brain fog, and inclusive designCovid 19, brain fog, and inclusive design
Covid 19, brain fog, and inclusive design
 
Customer obsession and accessibility
Customer obsession and accessibilityCustomer obsession and accessibility
Customer obsession and accessibility
 
The Saga of Accessible Colors
The Saga of Accessible ColorsThe Saga of Accessible Colors
The Saga of Accessible Colors
 
Artificial Intelligence and Accessibility - GAAD 2020 - Hello A11y
Artificial Intelligence and Accessibility - GAAD 2020 - Hello A11yArtificial Intelligence and Accessibility - GAAD 2020 - Hello A11y
Artificial Intelligence and Accessibility - GAAD 2020 - Hello A11y
 
Expand your outreach with an accessibility champions program
Expand your outreach with an accessibility champions program Expand your outreach with an accessibility champions program
Expand your outreach with an accessibility champions program
 
Intuit's Accessibility Champion Program - Coaching and Celebrating
Intuit's Accessibility Champion Program - Coaching and Celebrating Intuit's Accessibility Champion Program - Coaching and Celebrating
Intuit's Accessibility Champion Program - Coaching and Celebrating
 
Accessibility First Innovation
Accessibility First InnovationAccessibility First Innovation
Accessibility First Innovation
 
Inclusive customer interviews make it your friday task
Inclusive customer interviews  make it your friday taskInclusive customer interviews  make it your friday task
Inclusive customer interviews make it your friday task
 
Coaching and Celebrating Accessibility Champions
Coaching and Celebrating Accessibility ChampionsCoaching and Celebrating Accessibility Champions
Coaching and Celebrating Accessibility Champions
 
Accessibility statements and resource publishing best practices csun 2019
Accessibility statements and resource publishing best practices   csun 2019Accessibility statements and resource publishing best practices   csun 2019
Accessibility statements and resource publishing best practices csun 2019
 
Raising Accessibility Awareness at Intuit
Raising Accessibility Awareness at IntuitRaising Accessibility Awareness at Intuit
Raising Accessibility Awareness at Intuit
 
Trickle Down Accessibility
Trickle Down AccessibilityTrickle Down Accessibility
Trickle Down Accessibility
 
Trickle-Down Accessibility - CSUN 2018
Trickle-Down Accessibility - CSUN 2018Trickle-Down Accessibility - CSUN 2018
Trickle-Down Accessibility - CSUN 2018
 
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
 
Mystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessibleMystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessible
 
React Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native MeetupReact Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native Meetup
 

Último

Último (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Using QuickBooks as a Model for Updating Mature Software for Accessibility csun14

  • 1. Cheryl Aranha, Intuit! Ted Drake, Intuit! CSUN 2014 Using QuickBooks as a Model for Updating Mature Software for Accessibility This presentation was created for CSUN 2014, San Diego. Aztec pyramids are massive structures built 2-3,000 years ago. While they seem daunting, they are ultimately composed of multiple steps. This presentation shows the steps taken by a small team to make QuickBooks Desktop accessible. photo: Chichen Itza Pyramid in Riviera Maya, Mexico by Grand Velas Riviera Maya http://www.flickr.com/photos/grandvelasrivieramaya/3180226026/
  • 2. Step 1: ! What’s broken? You need a full understanding of what’s broken before you can fix it. Where in the architecture are the problems caused?
  • 3. History • Older than MSAA platform! • Custom, not standard, components! • No awareness of impact! • Workarounds became the norm QuickBooks was built in 1990’s before Microsoft’s MSAA platform was established. Unfortunately the core of QuickBooks was built on custom elements that had no standard interface with the Accessibility APIs. Engineers continued to work with custom elements, as there was not an understanding of the accessibility impact. As the product matured, elements began integrating standards and some elements were more accessible. However, blind users still had to discover their own workarounds to use the product. photo: Mexico City by Ana Kelston http://www.flickr.com/photos/bananawacky/10563468256/
  • 4. QB 2013 Broken Promises QB 2013 was a significant re-build with a new, simplified interface. Designers paid significant attention to low vision and cognitive accessibility. Unfortunately, the engineers made the product less accessible with the new set of custom components. QB was testing with blind users, but were not able to solve the increasingly bad developments prior to product launch.
  • 5. • Significantly simplified interface! • Improved low vision and cognitive accessibility! • Worse accessibility for screen reader users! • JAWS Script-only fix attempt! • Blind user testing did not solve problems prior to product launch QB 2013 QuickBooks 2013 was a mixed bag. There were attempts to add more accessible, but they efforts were not effective. This led to a fundamental re-evaluation.
  • 6. QuickBooks 2014 A New Commitment photo: Chichen Itza Sun God by Thomasz Wagner http://www.flickr.com/photos/mananetwork/358007257/
  • 7. Executive Support Step 2: While executives understood the accessibility challenge, we needed them to fully embrace the efforts and provide the budget to hire consultants (DeQue and My Blind Spot) to make this work. They also committed to making this a permanent effort and to include outreach and education.
  • 8. Executive Support • QuickBooks executives introduced to accessibility impact on a personal level.! • Dixie’s video and meeting with Albert Rizzi led to expanded support! • Accessibility became a “no trade-off” position for QB 2014. While executives understood the accessibility challenge, we needed them to fully embrace the efforts and provide the budget to hire consultants (DeQue and My Blind Spot) to make this work. They also committed to making this a permanent effort and to include outreach and education.
  • 9. Dixie’s Dilemma This video introduces Dixie. It was originally created for QuickBooks upper management to understand the problems caused by QB inaccessibility. It’s effectiveness was stronger than we hoped and the video was released officially by Intuit. http://www.youtube.com/watch?v=ZklXouXyORk
  • 10. Step 3! Build the Team photo: Mexico, Tula by Phil http://www.flickr.com/photos/chicoboomba/8125701672/
  • 11. QB Team • Cheryl Aranha (QuickBooks) - Project Management, Lead Engineer ! • Steven Clark and John Martyn (My Blind Spot) - Scripting and User expertise! • Sujasree Kurapati (DeQue) - C++ and Accessibility API expertise! • Albert Rizzi (My Blind Spot) - User testing, training, outreach management! • Lori Samuels (Intuit) - Project and Strategy Management Cheryl’s team expanded as she was able to reach across the QuickBooks team to find help on specific problems. For instance, tracking down engineers that previously worked on components.
  • 13. JAWS Scripts • John Martyn demonstrated his JAWS scripts for QB 2012 at NFB 2012! • Screen layout dependent! • Slow and fragile! • Required significant changes for QB 2013 The scripts were a valiant effort, but were limited by the lack of control information provided by the program. With no solid identification of objects, the scripts had to investigate the page to discover the identity of each element.
  • 14. Fix The Core • Focus on the components • Identify their state,class, name, and control ID • Start with one page, expand to full product • Regression testing critical QuickBooks is fundamentally a mature product with a large user base. Our first priority was to fix the accessibility issues without introducing new issues. ! Start small (one screen) allow changes to bubble up across the product.
  • 15. Automated Testing •If they can do it, why can’t we?! •Core fixes improve automated testing Accessibility projects need to include automated testing, as they go hand in hand. With QB, the automated tests included complicated methods to grab component information. We were able to use this information to make these custom components work for everyone. Working with QA incorporated regression testing to ensure product stability. photo: robot by jbraine http://www.flickr.com/photos/jbraine/4282847492/
  • 16. Challenges !• Product cycle and regression timelines! !•!Levels of testing! ! •!Respecting OS themes! !•!Mixed technical stack! !•!Prioritizing screens • Keeping to product cycle and regression timelines • Levels of testing: From within product/ testing for accessibility/ testing with scripts/ beta testing • Respecting OS themes and not overriding system behaviour- be it colors/ fonts etc • Mixed technical stack • Prioritizing screens- to our luck, fixing some core controls ended up getting fixed across QB. But this widened the scope of testing
  • 17. Results • QB 2014 release included basic accessibility! • Subsequent releases have increased support to 90%! • JAWS Scripts make product much more usable.! • NVDA and WindowEyes under development! • Roadmap for QB 2015 and future releases
  • 18. This short video shows how the inputs are now announcing the states, values, and functionality. It shows how to write a check, one of the most commonly used screens within QuickBooks. The screen reader is JAWS
  • 19. Step 5: ! Testing and Training Steven and Sujasree brought extensive screen reader experience Small business and accountants were enlisted Testing for barriers and inconsistencies Testers helped each other via email distribution list
  • 20. Training • Current users have developed their own workarounds. • These will be affected with new release • Education to use QB 2014 natively • Accessible training materials Real World Training provides official training for QuickBooks, this information is used towards building the accessible documentation
  • 21. Video Training This check writing video represents the training component of this project. Richard Kelly also has a video on setting up QuickBooks to work with JAWS. http://www.youtube.com/watch?v=nioOjbvSCkU
  • 22. Interesting Discoveries • Custom focus color was blocking JAWS! • Detect screen reader to remove skins! • Beta testing platform was not accessible! • Document shortcut keys for consistency QuickBooks used a green highlight color. JAWS looks for blue or black and was not able to detect the green focus indication. Better yet, changes were made to use true focus instead of only visual indication Detecting the screen reader via Microsoft’s wm_getobject allowed us to disable the problematic skin and focus on core elements. Beta testers were initially blocked by a third party software that was not accessible.
  • 23. Contact • Ted Drake, Intuit 
 @ted_drake, Ted_Drake@Intuit.com! • Cheryl Aranha, Intuit
 Cheryl_Aranha@Intuit.com ! • Albert Rizzi, My Blind Spot
 @MyBlindSpotOrg