computer accessibility in humancomputer interaction computer accessibility also known as accessible computing refers to the accessibility of a computer system to all people regardless of disability type or severity of impairment the term accessibility is most often used in reference to specialized hardware or software or a combination of both designed to enable use of a computer by a person with a disability or impairment specific technologies may be referred to as assistive technology there are many disabilities or impairments that can be a barrier to effective computer use these impairments which can be acquired from disease trauma or may be congenital include but are not limited to cognitive impairments head injury autism developmental disabilities and learning disabilities such as dyslexia dyscalculia or adhd visual impairment such as lowvision complete or partial blindness and color blindness hearingrelated disabilities including deafness being hard of hearing or hyperacusis motor or dexterity impairment such as paralysis cerebral palsy dyspraxia carpal tunnel syndrome and repetitive strain injury accessibility is often abbreviated as the numeronym a11y where the number 11 refers to the number of letters omitted this parallels the abbreviations of internationalization and localization as i18n and l10n respectively specialneeds assessment people wishing to overcome an impairment in order to use a computer comfortably and productively may require a special needs assessment by an assistive technology consultant such as an occupational therapist a rehabilitation engineering technologist or an educational technologist to help them identify and configure appropriate assistive technologies to meet individual needs even those who are unable to leave their own home or who live far from assessment providers may be assessed and assisted remotely using remote desktop software and a web cam for example the assessor logs on to the clients computer via a broadband internet connection observes the users computer skills and then remotely makes accessibility adjustments to the clients computer where necessary considerations for specific impairments bbc news shown in desktop mode with accessibility links at the top the screenshot is taken from windows mobile a singleswitch assistive device that enables the user to access an onscreen keyboard cognitive impairments and illiteracy the biggest challenge in computer accessibility is to make resources accessible to people with cognitive disabilities particularly those with poor communication and reading skills as an example people with learning disabilities may rely on proprietary symbols and thus identify particular products via the products symbols or icons unfortunately copyright laws can limit icon or symbol release to webbased programs and websites by owners who are unwilling to release them to the public in these situations an alternative approach for users who want to access public computer based terminals in libraries atms and information kiosks is for the user to present a token to the computer terminal such as a smart card that has configuration information to adjust the computer speed text size etcetera to their particular needs the concept is encompassed by the cen standard identification card systems humanmachine interface visual impairment since computer interfaces often solicit visual input and provide visual feedback another significant challenge in computer accessibility involves making software usable by people with visual impairments for individuals with mild to medium vision impairment it is helpful to use large fonts high dpi displays highcontrast themes and icons supplemented with auditory feedback and screen magnifying software in the case of severe vision impairment such as blindness screen reader software that provides feedback via text to speech or a refreshable braille display is a necessary accommodation for interaction with a computer about 8 of people suffer from some form of colorblindness the main color combinations that might be confused by people with visual deficiency include redgreen and bluegreen however in a welldesigned user interface color will not be the primary way to distinguish between different pieces of information motor and dexterity impairments some people may not be able to use a conventional input device such as the mouse or the keyboard therefore it is important for software functions to be accessible using both devices ideally software will use a generic input api that permits the use even of highly specialized devices unheard of at the time of softwares initial development keyboard shortcuts and mouse gestures are ways to achieve this access as are more specialized solutions including onscreen software keyboards and alternate input devices switches joysticks and trackballs users may enable a bounce key feature allowing the keyboard to ignore repeated presses of the same key speech recognition technology is also a compelling and suitable alternative to conventional keyboard and mouse input as it simply requires a commonly available audio headset the astrophysicist stephen hawkings use of assistive technology is an example of a person with severe motor and physical limitations who uses technology to support activities of daily living he used a switch combined with special software that allows him to control his wheelchairmounted computer using his limited and small movement ability this personalized system allowed him to remain mobile do research produce his written work mr hawking also used augmentative and alternative communication technology to speak and an environmental control device to access equipment independently a small amount of modern research indicates that utilizing a standard computer mouse device improves finemotor skills hearing impairment while sound user interfaces have a secondary role in common desktop computing these interfaces are usually limited to using system sounds such as feedback some software producers take into account people who cant hear due to hearing impairments silence requirements or lack of sound producing software system sounds like beeps can be substituted or supplemented with visual notifications and captioned text akin to closed captioning closed captions are a very popular means of relaying information for the deaf and hearing impaired communities software accessibility accessibility application programming interfaces software apis application programming interfaces exist to allow assistive technology products such as screen readers and screen magnifiers to work with mainstream software the current or past apis include java accessibility and the java access bridge for java software assistive technology service provider interface atspi on unix and linux being standardized as isoiec pdtr 130664 microsoft active accessibility msaa on microsoft windows iaccessible2 on microsoft windows a competitor of microsoft ui automation also replacing msaa by free standards group standardized as isoiec 1306632012 mac os x accessibility microsoft ui automation on microsoft windows replacing msaa some of these apis are being standardized in the isoiec 13066 series of standards accessibility features in mainstream software accessibility software can also make input devices easier to access at the user level keyboard shortcuts and mousekeys allow the user to substitute keyboarding for mouse actions macro recorders can greatly extend the range and sophistication of keyboard shortcuts sticky keys allows characters or commands to be typed without having to hold down a modifier key shift ctrl or alt while pressing a second key similarly clicklock is a microsoft windows feature that remembers a mouse button is down so that items can be highlighted or dragged without holding the mouse button down while scrolling customization of mouse or mouse alternatives responsiveness to movement doubleclicking and so forth togglekeys is a feature of microsoft windows 95 onwards a high sound is heard when the caps lock scroll lock or number lock key is switched on a low sound is heard when any of those keys is switched off customization of pointer appearance such as size color and shape predictive text spell checkers and grammar checkers support for learning disabilities other approaches that may be particularly relevant to users with a learning disability include cause and effect software switchaccessible software navigable with a switch handeye coordination skills software diagnostic assessment software mind mapping software study skills software symbolbased software texttospeech touch typing software web accessibility web accessibility enabling access to web content for all users is the concern of the web accessibility movement which strives to create accessible websites via conformance to certain design principles for example screen readers are of limited use when reading text from websites designed without consideration to accessibility sometimes these limitations are due to the differences between spoken and written language and the complexity of text but it is often caused by poor page design practices the tendency to indicate semantic meaning using methods that are purely presentational eg larger or smaller font sizes using different font colors embedded images or multimedia to provide information restricts meaningful access to some users therefore designing sites in accordance with web accessibility principles helps enable meaningful access for all users see also alt attribute open accessibility framework the open accessibility framework oaf provides an outline of the steps that must be in place in order for any computing platform to be considered accessible these steps are analogous to those necessary to make a physical or built environment accessible the oaf divides the required steps into two categories creation and use the creation steps describe the precursors and building blocks required for technology developers to create accessible applications and products they are as follows define what accessible means for the identified use of the platform it must be clear what is meant by accessible as this will differ according to the modality and capabilities of each platform accessibility features may include tabbing navigation theming and an accessibility api provide accessible stock user interface elements prebuilt stock user interface elements used by application developers and authoring tools must be implemented to make use of the accessibility features of a platform provide authoring tools that support accessibility application developers and content authors should be encouraged to implement tools that will improve the accessibility features of a platform using these tools can support accessible stock user interface elements prompt for information required to properly implement an accessibility api and identify accessibility evaluation and repair tools the use steps describe what is necessary in the computing environment in which these accessible applications will run they are as follows provide platform supports computing platforms must properly implement the accessibility features that are specified in their accessibility definition for example the accessibility api definitions must be implemented correctly in the program code provide accessible application software accessible applications must be available for the platform and they must support the accessibility features of the platform this may be achieved by simply engaging the accessible stock elements and authoring tools that support accessibility provide assistive technologies assistive technologies eg screen readers screen magnifiers voice input adapted keyboards must actually be available for the platform so that the users can effectively interface with the technology the following examples show that the oaf can be applied to different types of platforms desktop operating systems web applications accessibility apis include the assistive technology service provider interface and ui automation on the desktop waiaria in web applications and the blackberry accessibility api on the blackberry operating system other apis are keyboard access and theming in widget libraries like java swing for desktop applications the jquery ui and fluid infusion for web applications and the lightweight user interface toolkit lwuit for mobile applications support for accessible development can be effective by using glade for the gtk toolkit also fit into this step support for ui automation on microsoft windows or the midp lcdui mobile runtime that is available on mobile phones with java are examples of apis the daisy player amis on the microsoft windows desktop are designed for accessibility the gnome shell magnifier and orca on the gnome desktop gnomes atk accessibility toolkit the webbased screen reader webanywhere are examples of assistive technologies the goal of the listed tools is to embed accessibility into various mainstream technologies standards and regulations international standards iso 9241171 iso 9241171 ergonomics of humansystem interaction guidance on software accessibility compiled from independent standards experts this document is the most comprehensive and technical standard for designing accessible features for software covering all disabilities and all aspects of software it provides examples of two priority levels required and recommended and offers a handy checklist designed to help with recording software testing results the only trouble is that because of its complexity and technical nature and with upwards of 150 individual statements iso 9241172 is difficult to interpret and apply luckily not every statement is relevant to every situation therefore it may be advisable to identify a subset of statements that are tailored to the particular software environment making the use of this document much more achievable accessapps a collection of accessibility software which fits on a usb drive assistive technology augmentative and alternative communication digital rights fire vox game accessibility knowbility modding section 508 amendment to the rehabilitation act of 1973 user1st an automated tool to remediate accessibility on websites web accessibility thai wikimedia commons has media related to computer accessibility the annual ercim workshop on user interfaces for all emphasising accessibility better living through technology contains guides on accessibility options and information about specialist assistive hardware and software hp accessibility abilitynet provides information on accessibility assistive technology and remote assessment c4ea consortium for elearning accessibility w3c web accessibility initiative wai accessibility in the opera web browser mozilla accessibility project open office accessibility project eu project guide multimodal user interfaces for elderly people with mild impairments assignment help vtemajor fields of computer sciencenote this template roughly follows the 2012 acm computing classification systemhardware printed circuit board peripheral integrated circuit very large scale integration systems on chip socs energy consumption green computing electronic design automation hardware acceleration computer systemsorganization computer architecture embedded system realtime computing dependability networks network architecture network protocol network components network scheduler network performance evaluation network service software organization interpreter middleware virtual machine operating system software quality software notationsand tools programming paradigm programming language compiler domainspecific language modeling language software framework integrated development environment software configuration management software library software repository software development software development process requirements analysis software design software construction software deployment software maintenance programming team opensource model theory of computation model of computation formal language automata theory computational complexity theory logic semantics algorithms algorithm design analysis of algorithms algorithmic efficiency randomized algorithm computational geometry mathematicsof computing discrete mathematics probability statistics mathematical software information theory mathematical analysis numerical analysis informationsystems database management system information storage systems enterprise information system social information systems geographic information system decision support system process control system multimedia information system data mining digital library computing platform digital marketing world wide web information retrieval security cryptography formal methods security services intrusion detection system hardware security network security information security application security humancomputerinteraction interaction design social computing ubiquitous computing visualization accessibility concurrency concurrent computing parallel computing distributed computing multithreading multiprocessing artificialintelligence natural language processing knowledge representation and reasoning computer vision automated planning and scheduling search methodology control method philosophy of artificial intelligence distributed artificial intelligence machine learning supervised learning unsupervised learning reinforcement learning multitask learning crossvalidation graphics animation rendering image manipulation graphics processing unit mixed reality virtual reality image compression solid modeling appliedcomputing ecommerce enterprise software computational mathematics computational physics computational chemistry computational biology computational social science computational engineering computational healthcare digital art electronic publishing cyberwarfare electronic voting video games word processing operations research educational technology document management book category portal wikiproject commons 