{"id":37566,"date":"2019-08-02T01:00:02","date_gmt":"2019-08-02T08:00:02","guid":{"rendered":"http:\/\/devblogs.microsoft.com\/premier-developer\/?p=37566"},"modified":"2019-08-05T09:23:33","modified_gmt":"2019-08-05T16:23:33","slug":"accessibility-at-all-stages-a-good-for-all-sdlc-approach","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/premier-developer\/accessibility-at-all-stages-a-good-for-all-sdlc-approach\/","title":{"rendered":"Accessibility at all stages: A Good-for-All SDLC approach"},"content":{"rendered":"<p><span style=\"text-decoration: underline;\"><a href=\"https:\/\/www.linkedin.com\/in\/bajaj-aditya\/\" target=\"_blank\" rel=\"noopener noreferrer\">Aditya Bajaj<\/a><\/span> is an Operations Manager focusing on accessibility and web operations at Microsoft.<\/p>\n<hr \/>\n<p><img decoding=\"async\" class=\"wp-image-37579 size-full alignright\" src=\"http:\/\/devblogs.microsoft.com\/premier-developer\/wp-content\/uploads\/sites\/31\/2019\/08\/Accessibility-throughout-SDLC_5.png\" alt=\"Accessibility throughout SDLC stages\" width=\"500\" height=\"483\" srcset=\"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-content\/uploads\/sites\/31\/2019\/08\/Accessibility-throughout-SDLC_5.png 500w, https:\/\/devblogs.microsoft.com\/premier-developer\/wp-content\/uploads\/sites\/31\/2019\/08\/Accessibility-throughout-SDLC_5-300x290.png 300w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/>We believe accessibility is essential to our industry\u2014and the progress of all people. Implementing accessibility end-to-end is still challenging and has a lot of room for improvement in terms of efficient accessibility testing tools and processes. We are continuously looking for efficient tools and processes that help reduce the manual work and improve the overall accessibility of web, products, and services.<\/p>\n<p>In the first half of 2019, my team worked on incorporating accessibility at all stages of our website development and maintenance lifecycle. Considering accessibility early-on helps minimize the churn between designers, developers, and QA. Hence, we trained and equipped our people with accessibility tools and resources. For any net new development, accessibility is considered at every stage from kick-off to design to development to post launch and maintenance. This approach reduces the number of bugs as the product progresses through various stages of its lifecycle. For example, for HoloLens 2 and Microsoft Build web sites, we were able to reduce number of\u00a0accessibility violations early on and avoid the bolt-on approach to fix accessibility after development which is often more expensive and doesn\u2019t consider all audiences. We saw 50% fewer accessibility bugs through this approach. We\u00a0shared this learning at a high level at the 2nd annual\u00a0Ability Summit Community Day\u00a0event in May 2019 that was open to public.<\/p>\n<h2><strong>Common accessibility issues we observed<\/strong><\/h2>\n<p>Here are the common <span style=\"text-decoration: underline;\"><a href=\"https:\/\/www.w3.org\/WAI\/WCAG21\/Understanding\/\" target=\"_blank\" rel=\"noopener noreferrer\">web content accessibility guidelines<\/a><\/span> (WCAG) issues we observed in the design and content update phases. Paying special attention to these issues in the respective stages can help you reduce your accessibility bugs even further and improve your team\u2019s efficiency in creating more usable web, software, or services.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<h3>In design phase<\/h3>\n<ol style=\"list-style-type: lower-alpha;\">\n<li>WCAG 1.4.3 &#8211; Contrast (Minimum)<\/li>\n<li>WCAG 3.2.4 &#8211; Consistent Identification<\/li>\n<li>WCAG 1.4.1 &#8211; Use of Color<\/li>\n<li>WCAG 2.3.1 &#8211; Three Flashes or Below Threshold<\/li>\n<li>WCAG 2.2.2 &#8211; Pause, Stop, Hide<\/li>\n<li>WCAG 2.1.1 &#8211; Keyboard<\/li>\n<li>WCAG 4.1.2 &#8211; Name, Role, Value<\/li>\n<li>WCAG 2.4.1 &#8211; Bypass Blocks<\/li>\n<\/ol>\n<\/td>\n<td style=\"vertical-align: top;\">\n<h3>In content update\/maintenance phase<\/h3>\n<ol style=\"list-style-type: lower-alpha;\">\n<li>WCAG 1.1.1 &#8211; Non-text Content<\/li>\n<li>WCAG 1.4.5 &#8211; Images of Text<\/li>\n<li>WCAG 1.2.5 &#8211; Audio Description (Pre-recorded)<\/li>\n<li>WCAG 1.2.2 &#8211; Captions (Pre-recorded)<\/li>\n<li>WCAG 2.4.2 &#8211; Page Titled<\/li>\n<li>WCAG 2.4.4 &#8211; Link Purpose (In Context)<\/li>\n<li>WCAG 2.4.6 &#8211; Headings and Labels<\/li>\n<\/ol>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>We all know that accessibility improves usability; considering accessibility reviews early-on and at all stages gives us an opportunity to not only save cycles of design, dev, and QA, but more importantly, it creates a more usable product for everyone. Additionally, while <span style=\"text-decoration: underline;\"><a href=\"https:\/\/adityabajaj.com\/automated-web-accessibility-qa-not-enough\/\" target=\"_blank\" rel=\"noopener noreferrer\">automated QA for accessibility is not enough<\/a><\/span>, it can still help make web pages and\/or software accessible faster. Instead of running full manual assessment which can be time consuming, if accessibility issues found through automated checks are fixed first, it can also reduce total number of bugs found through manual assessment.<\/p>\n<h2><strong>Accessibility testing tool<\/strong><\/h2>\n<p>Step back and re-evaluate your team\u2019s processes to ensure accessibility is considered early on.\u00a0The <span style=\"text-decoration: underline;\"><a href=\"https:\/\/accessibilityinsights.io\" target=\"_blank\" rel=\"noopener noreferrer\">free Accessibility Insights for Web<\/a><\/span> browser extension available for Edge and Google Chrome helps you identify issues through automated as well as manual assessments. I like that the detailed step-by-step accessibility testing guidance on this tool can help anyone learn accessibility testing and overall about accessibility. The following key features of the accessibility insights tool are used the most in my team. The tab stops and no color simulation under \u201cad hoc\u201d tools come handy too.<\/p>\n<p><strong>FastPass<\/strong> \u2013 the tool identifies instances and evaluates them automatically giving you visual mappings as well as an easy way to copy the issue details for your dev team to fix.<\/p>\n<p><strong>Manual assessment<\/strong> \u2013 the tool provides instructions for identifying and evaluating instances.<\/p>\n<p><strong>Reporting<\/strong> \u2013 at the end of assessment, you can generate a report quickly for your management teams to understand percentwise or technical teams to get the details of any recorded failures.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Accessibility improves usability; considering accessibility reviews early-on and at all stages gives us an opportunity to not only save cycles of design, dev, and QA, but more importantly, it creates a more usable product for everyone. <\/p>\n","protected":false},"author":582,"featured_media":37573,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5940,22,4354,55],"tags":[133],"class_list":["post-37566","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development","category-devops","category-ux","category-web","tag-accessibility"],"acf":[],"blog_post_summary":"<p>Accessibility improves usability; considering accessibility reviews early-on and at all stages gives us an opportunity to not only save cycles of design, dev, and QA, but more importantly, it creates a more usable product for everyone. <\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts\/37566","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/users\/582"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/comments?post=37566"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts\/37566\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/media\/37573"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/media?parent=37566"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/categories?post=37566"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/tags?post=37566"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}