The document describes ACCESS, an open source framework that aims to provide accessibility support for older and less experienced computer users by automatically configuring the operating system based on a user's interactions. The framework uses plugins that monitor user behavior and can make changes like increasing mouse click thresholds. Experimental results found users found the tool beneficial and non-intrusive. Future work includes adding real-time correction and addressing security/trust issues before broader deployment.
Extreme Programming의 개요에 대해 설명한 문서입니다.
여기 나와있는 그림은 (넘기고) 이 책의 2장의 첫번째 페이지에서 나오는 그림인데요,
저는 처음 이 그림의 밑에 나와있는 설명을 보고 무슨 말인지 전혀 이해하지 못했습니다.
한국어로 직역하면, 개발자로서 우리는 extreme programmin이 마을의 유일한 게임이 아님을 기억해야한다, 입니다. 이게 도대체 무슨 말인가 싶어서 검색해보았더니/only game in town은 일종의 관용어구로 유일한 선택지나 최선의 선택지라는 뜻이 있었습니다. 즉, 개발자로서 우리는 extreme programming이 유일한 선택지가 아니라는 것을 기억해야한다는 말이죠. 이게 무슨 말인지 이제부터 알아보겠습니다./위키에 의하면, Extreme Programming은 계속해서 변화하는 고객의 요구사항에도 높은 퀄러티의 소프트웨어를 개발하고, 개발 팀의 삶의 질을 보장하는데 목적이 있는 애자일 소프트웨어 개발 프레임워크입니다. /Extreme Programming은 소프트웨어 요구사항이 동적으로 변화하는 경우,
새로운 기술로 마감 시한이 정해져있는 프로젝트를 하는 경우,
소규모의 공동으로 개발하는 팀의 경우 등의 상황에서 사용하기 적합한 방법입니다.
아까 Introduction에서 말씀드렸던 것 처럼 XP가 모든 상황에서 적합한 방법은 아닙니다.
이 페이지의 두번째 링크를 보면, XP가 언제 적합하지 않은지 나와있으니 궁금하신 분은 후에 확인하셔도 좋을 것 같습니다.
/Extreme Programming은 팀워크를 강조하는데요,
Extreme Programming이 소프트웨어의 퀄러티를 개선시키는데는 다섯가지의 방법이 있습니다. 의사소통과 단순성, 피드백, 존중 그리고 용기입니다. 일종의 핵심 가치라고도 할 수 있습니다.
/Extreme Programming의 핵심가치를 하나씩 설명해보겠습니다.
첫번째로 커뮤니케이션, 소프트웨어 개발은 본질적으로 축구나 야구와 같은 팀 스포츠와 같다고 볼 수 있습니다. 우리는 충분한 의사소통을 통해, 팀 구성원 한명 한명이 다른 팀 구성원들에게 지식을 전달해야합니다. 의사소통이 제대로 되지 않는 팀은 쉽게 어긋나고 말죠.
두번째로 단순성은 우리가 할 수 있는, 알고 있는 요구사항만을 다루는 것을 의미합니다. 고객이 어떤 것을 요구할 것 같다는, 미래를 예측하는 행동을 하지 않는 것입니다. 이는 낭비를 가능한 한 피하고, 가능한한 시스템설계를 단순하게 유지하는 등 절대적으로 필요한 일만을 하는 것입니다.
세번째로 피드백은, 팀원 각자들이 해온 노력들을 꾸준히 피드백을 함으로써 어떤 분야를 더 개선해야 할지 발견할 수 있게 하는 것입니다.
마지막으로 용기와 존중입니다. Extreme Programming에서 Extreme은 한국어로 하면 ‘극단적인'이라는 의미를 가지고 있습니다. 팀의 효율성을 저하시키는 조직의 문제를 제기하려면 용기가 필요합니다. 또한 작동하지 않는 것을 개발하는 것을 멈추고 다른 것을 시도하는 것 또한 용기를 필요로 합니다. 수락하기 어려운 경우에도 피드백을 수락하고 그를 행동으로 옮기는 데도 용기를 필요로 합니다.
팀원들은 서로 의사소통을 하고 피드백을 제공하고 수락하며 협력하기 위해 서로를 존중해야 합니다.
/(Practice : 관행)
이 페이지에 나와있는 12가지의 리스트는 소프트웨어 개발 관행입니다.
전부 다 소개하기에는 너무 많은 것 같아서 우리에게 익숙한 Refactoring에 대한 상세 설명만 준비했습니다. 나머지 관행들에 대해서는 책을 읽으시면 자세한 설명을 찾을 수 있습니다.
/(Practice : 관행)
아마 대부분의 분들이 많이 들어봤을 단어인데요,
코드를 작성하고나면 종종 내가 왜 이런식으로 코드를 짰지? 하고 당황할정도로 엉망진창인 코드를 발견하게 되기도 합니다.
extreme programming은 잦은 리팩토링을 통해 코드를 최대한 깨끗하고 단순하게 유지합니다.
리팩토링이란 시스템의, 프로그램의 동작에는 영향을 주지 않으면서 프로그램의 구조에는 변화를 주는 개선 방식입니다. 각각의 변화는 사소한 것이며, 우리는 리팩토링을 완료한 후에 우리가 어떤 동작에 영향을 주지 않았는지 확인을 하기 위해 유닛 테스트를 진행합니다.
리팩토링은 개발도중 지속적으로 진행되며, 이를 통해 아까 언급했던 것처럼 코드를 최대한 깨끗하고 단순하게 유지할 수 있습니다.
/마지막으로 결론입니다.
extreme programming은 앞에서 소개한 다섯가지의 가치를 기반으로한 소프트웨어 개발 방법론입니다. 이 가치들은 팀을 하나로 묶어주며, 서로에게 충분한 피드백을 함으로써 현재 팀원 자신의 위치를 직시하게 하고, 관행들을 고유한 상황에 맞게 조율할 수 있도록 합니다.
프로젝트를 진행하는 대부분의 팀들이 XP를 그대로 사용할 수 있지만, 몇몇 팀들은 관행을 추가하거나 수정함으로써 적용시킬 수 있습니다.
Extreme Programming의 개요에 대해 설명한 문서입니다.
여기 나와있는 그림은 (넘기고) 이 책의 2장의 첫번째 페이지에서 나오는 그림인데요,
저는 처음 이 그림의 밑에 나와있는 설명을 보고 무슨 말인지 전혀 이해하지 못했습니다.
한국어로 직역하면, 개발자로서 우리는 extreme programmin이 마을의 유일한 게임이 아님을 기억해야한다, 입니다. 이게 도대체 무슨 말인가 싶어서 검색해보았더니/only game in town은 일종의 관용어구로 유일한 선택지나 최선의 선택지라는 뜻이 있었습니다. 즉, 개발자로서 우리는 extreme programming이 유일한 선택지가 아니라는 것을 기억해야한다는 말이죠. 이게 무슨 말인지 이제부터 알아보겠습니다./위키에 의하면, Extreme Programming은 계속해서 변화하는 고객의 요구사항에도 높은 퀄러티의 소프트웨어를 개발하고, 개발 팀의 삶의 질을 보장하는데 목적이 있는 애자일 소프트웨어 개발 프레임워크입니다. /Extreme Programming은 소프트웨어 요구사항이 동적으로 변화하는 경우,
새로운 기술로 마감 시한이 정해져있는 프로젝트를 하는 경우,
소규모의 공동으로 개발하는 팀의 경우 등의 상황에서 사용하기 적합한 방법입니다.
아까 Introduction에서 말씀드렸던 것 처럼 XP가 모든 상황에서 적합한 방법은 아닙니다.
이 페이지의 두번째 링크를 보면, XP가 언제 적합하지 않은지 나와있으니 궁금하신 분은 후에 확인하셔도 좋을 것 같습니다.
/Extreme Programming은 팀워크를 강조하는데요,
Extreme Programming이 소프트웨어의 퀄러티를 개선시키는데는 다섯가지의 방법이 있습니다. 의사소통과 단순성, 피드백, 존중 그리고 용기입니다. 일종의 핵심 가치라고도 할 수 있습니다.
/Extreme Programming의 핵심가치를 하나씩 설명해보겠습니다.
첫번째로 커뮤니케이션, 소프트웨어 개발은 본질적으로 축구나 야구와 같은 팀 스포츠와 같다고 볼 수 있습니다. 우리는 충분한 의사소통을 통해, 팀 구성원 한명 한명이 다른 팀 구성원들에게 지식을 전달해야합니다. 의사소통이 제대로 되지 않는 팀은 쉽게 어긋나고 말죠.
두번째로 단순성은 우리가 할 수 있는, 알고 있는 요구사항만을 다루는 것을 의미합니다. 고객이 어떤 것을 요구할 것 같다는, 미래를 예측하는 행동을 하지 않는 것입니다. 이는 낭비를 가능한 한 피하고, 가능한한 시스템설계를 단순하게 유지하는 등 절대적으로 필요한 일만을 하는 것입니다.
세번째로 피드백은, 팀원 각자들이 해온 노력들을 꾸준히 피드백을 함으로써 어떤 분야를 더 개선해야 할지 발견할 수 있게 하는 것입니다.
마지막으로 용기와 존중입니다. Extreme Programming에서 Extreme은 한국어로 하면 ‘극단적인'이라는 의미를 가지고 있습니다. 팀의 효율성을 저하시키는 조직의 문제를 제기하려면 용기가 필요합니다. 또한 작동하지 않는 것을 개발하는 것을 멈추고 다른 것을 시도하는 것 또한 용기를 필요로 합니다. 수락하기 어려운 경우에도 피드백을 수락하고 그를 행동으로 옮기는 데도 용기를 필요로 합니다.
팀원들은 서로 의사소통을 하고 피드백을 제공하고 수락하며 협력하기 위해 서로를 존중해야 합니다.
/(Practice : 관행)
이 페이지에 나와있는 12가지의 리스트는 소프트웨어 개발 관행입니다.
전부 다 소개하기에는 너무 많은 것 같아서 우리에게 익숙한 Refactoring에 대한 상세 설명만 준비했습니다. 나머지 관행들에 대해서는 책을 읽으시면 자세한 설명을 찾을 수 있습니다.
/(Practice : 관행)
아마 대부분의 분들이 많이 들어봤을 단어인데요,
코드를 작성하고나면 종종 내가 왜 이런식으로 코드를 짰지? 하고 당황할정도로 엉망진창인 코드를 발견하게 되기도 합니다.
extreme programming은 잦은 리팩토링을 통해 코드를 최대한 깨끗하고 단순하게 유지합니다.
리팩토링이란 시스템의, 프로그램의 동작에는 영향을 주지 않으면서 프로그램의 구조에는 변화를 주는 개선 방식입니다. 각각의 변화는 사소한 것이며, 우리는 리팩토링을 완료한 후에 우리가 어떤 동작에 영향을 주지 않았는지 확인을 하기 위해 유닛 테스트를 진행합니다.
리팩토링은 개발도중 지속적으로 진행되며, 이를 통해 아까 언급했던 것처럼 코드를 최대한 깨끗하고 단순하게 유지할 수 있습니다.
/마지막으로 결론입니다.
extreme programming은 앞에서 소개한 다섯가지의 가치를 기반으로한 소프트웨어 개발 방법론입니다. 이 가치들은 팀을 하나로 묶어주며, 서로에게 충분한 피드백을 함으로써 현재 팀원 자신의 위치를 직시하게 하고, 관행들을 고유한 상황에 맞게 조율할 수 있도록 합니다.
프로젝트를 진행하는 대부분의 팀들이 XP를 그대로 사용할 수 있지만, 몇몇 팀들은 관행을 추가하거나 수정함으로써 적용시킬 수 있습니다.
The User Edit Method - What is it and how can I use it?Chris LaRoche
Presentation at the UPA Boston July 2010 monthly meeting. This is a ten-minute talk about the research method known as user edit/usability edit method. This is a UX/Usability method used to test the effectiveness of task-based documentation.
Principles of learnability in interaction design, including predictability, synthesizability, familiarity, generalizability, and consistency.
Emphasis on the need for intuitive user interaction, where users can predict outcomes based on past interactions, apply previous knowledge, and experience consistency across similar tasks.
All content within this presentation is the property of Royal Holloway, University of London. Unauthorized use, duplication, or distribution of the materials contained herein is strictly prohibited.
“Markets are certainly looking at election results with some apprehension, but what is also true is that they are in for a correction. Elections might act as the trigger for such a correction,” said Jagannadham Thunuguntla, equity head at SMC Capitals.
Software, by default, is opaque. It doesn't explain what it is doing, or how well it's going. Only through development do we gain visibility into systems, and thus commonly only the needs of developers are met.
See through software seeks to acknowledge the needs of the entire organization through democratization of data access.
This talk focuses on logging and metrics as two sources of potential insight and the architecture CommerceHub has adopted to democratize access to this information
Meeple centred design - Board Game AccessibilityMichael Heron
Delivered at the UK Games Expo on Friday 1st of June, 2018 . In this seminar, Dr Michael Heron and Pauline Belford of Meeple Like Us discuss the topic of board game accessibility and why support for people with disabilities within the tabletop gaming community is important - not just for its own sake, but for all of us.
Pages referenced here:
Meeple Like Us: http://meeplelikeus.co.uk
The Game Accessibility Guidelines: http://gameaccessibilityguidelines.com/
Eighteen Months of Meeple Like Us:
http://meeplelikeus.co.uk/eighteen-months-of-meeple-like-us-an-exploration-into-the-state-of-board-game-accessibility/
Meeple Centred Design: http://meeplelikeus.co.uk/meeple-centred-design-a-heuristic-toolkit-for-evaluating-the-accessibility-of-tabletop-games/
The User Edit Method - What is it and how can I use it?Chris LaRoche
Presentation at the UPA Boston July 2010 monthly meeting. This is a ten-minute talk about the research method known as user edit/usability edit method. This is a UX/Usability method used to test the effectiveness of task-based documentation.
Principles of learnability in interaction design, including predictability, synthesizability, familiarity, generalizability, and consistency.
Emphasis on the need for intuitive user interaction, where users can predict outcomes based on past interactions, apply previous knowledge, and experience consistency across similar tasks.
All content within this presentation is the property of Royal Holloway, University of London. Unauthorized use, duplication, or distribution of the materials contained herein is strictly prohibited.
“Markets are certainly looking at election results with some apprehension, but what is also true is that they are in for a correction. Elections might act as the trigger for such a correction,” said Jagannadham Thunuguntla, equity head at SMC Capitals.
Software, by default, is opaque. It doesn't explain what it is doing, or how well it's going. Only through development do we gain visibility into systems, and thus commonly only the needs of developers are met.
See through software seeks to acknowledge the needs of the entire organization through democratization of data access.
This talk focuses on logging and metrics as two sources of potential insight and the architecture CommerceHub has adopted to democratize access to this information
Meeple centred design - Board Game AccessibilityMichael Heron
Delivered at the UK Games Expo on Friday 1st of June, 2018 . In this seminar, Dr Michael Heron and Pauline Belford of Meeple Like Us discuss the topic of board game accessibility and why support for people with disabilities within the tabletop gaming community is important - not just for its own sake, but for all of us.
Pages referenced here:
Meeple Like Us: http://meeplelikeus.co.uk
The Game Accessibility Guidelines: http://gameaccessibilityguidelines.com/
Eighteen Months of Meeple Like Us:
http://meeplelikeus.co.uk/eighteen-months-of-meeple-like-us-an-exploration-into-the-state-of-board-game-accessibility/
Meeple Centred Design: http://meeplelikeus.co.uk/meeple-centred-design-a-heuristic-toolkit-for-evaluating-the-accessibility-of-tabletop-games/
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Strategies for Successful Data Migration Tools.pptxvarshanayak241
Data migration is a complex but essential task for organizations aiming to modernize their IT infrastructure and leverage new technologies. By understanding common challenges and implementing these strategies, businesses can achieve a successful migration with minimal disruption. Data Migration Tool like Ask On Data play a pivotal role in this journey, offering features that streamline the process, ensure data integrity, and maintain security. With the right approach and tools, organizations can turn the challenge of data migration into an opportunity for growth and innovation.
Advanced Flow Concepts Every Developer Should KnowPeter Caitens
Tim Combridge from Sensible Giraffe and Salesforce Ben presents some important tips that all developers should know when dealing with Flows in Salesforce.
Designing for Privacy in Amazon Web ServicesKrzysztofKkol1
Data privacy is one of the most critical issues that businesses face. This presentation shares insights on the principles and best practices for ensuring the resilience and security of your workload.
Drawing on a real-life project from the HR industry, the various challenges will be demonstrated: data protection, self-healing, business continuity, security, and transparency of data processing. This systematized approach allowed to create a secure AWS cloud infrastructure that not only met strict compliance rules but also exceeded the client's expectations.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
ACCESS: A Technical Framework for Adaptive Accessibility Support
1. Michael Heron, Canterbury Christ Church University
michael.heron@canterbury.ac.uk
Vicki L. Hanson, University of Dundee
Ian W. Ricketts, University of Dundee
{vlh|ricketts}@computing.dundee.ac.uk
2. Introduction
• Operating systems have come a long way in
providing accessibility support.
• Most come complete with a relatively wide range
of options for configuring the user environment.
• However, several issues combine to complicate the
job of providing accessibility support for novices.
• Lower levels of computing literacy
• Lower confidence working with computers
• Increased anxiety when making changes to the
underlying system.
• In this paper, we present ACCESS as a proof of
concept, possible solution to some of these
problems.
3. Issues and Difficulties
• Within our research, we focused on older users (N=38, M=15, F=23;
Mean age=67.89, SD=6.02) on Windows XP.
• Within this group, we found several issues for significant numbers of
participants.
• Unsure when presented with jargon, and uneasy about
experimenting with settings.
• Coupled to this, largely unsure of the terms ‘ease of access’ or
‘accessibility’
• Largely unaware of the possible options within the control panel,
and often what the control panel was.
• More likely to simply work with a computer as it was presented
rather than make any changes.
• Unsure of the difference between operating system wide changes,
and those specific to applications.
• These results were obtained from a questionnaire administered to
participants (see Heron, 2011 for a full discussion of this).
4. Computer Configuration
• These results replicate those discussed within the
literature regarding older users and computers (c.f.
Trewin, 2000; Hawthorne, 2003).
• Novice users:
• are often unaware of what options are available.
• often lack the knowledge of how to make changes.
• often lack the confidence to make the changes they
know how to make.
• Some users may also be operating under
additional constraints that frustrate their ability to
make changes at all.
• The system may be in the wrong language.
• The user may have physical restrictions that mean
they cannot interact sufficiently to enable support.
5. ACCESS
• Access is an open source, plug-in enabled, cross
platform framework for adaptive accessibility.
• It works by inverting the traditional responsibility
for configuration
• It becomes the computer’s responsibility to identify
when users are having trouble.
• Many of the users within our studies use
computers as tools, and simply want them to
work.
• Much work has already been done on the
effectiveness of dynamic accessibility, and the
development of tools to test that.
• Unfortunately these tools are often tied to a specific
context, cannot co-operate with other tools, and
require considerable amounts of skill to implement.
6. ACCESS Architecture
• The core of the framework is written in Java.
• It presents itself as a traditional server.
• The framework contains several operating
contexts.
• These handle the underlying connections with the
operating system.
• Each operating system requires a key/mouse
listener to be developed.
• Proof of concept implementations for these exist for
Windows XP, Windows 7, and Linux Mint.
• The listeners interpret user input data, and then
send it via a socket to the ACCESS engine.
• This then passes the stream information into the
interested plugins.
8. What does it do?
• The engine is responsible for performing high level
tasks such as managing sockets and threads.
• It’s also responsible for selecting plug-ins to make
an adapation to the user’s operating system.
• Each plug-in keeps track of the user input provided
and performs any needed calculations.
• And every so often, the engine ticks.
• It asks each plugin ‘do you want to make a
correction?’
• It makes a roulette wheel of those that do
• It then spins the wheel and picks a weighted plugin.
• That plug-in then makes its adaptation based on its
internal calculations.
• It does this via the Operating System Context, so it
doesn’t need to know where it is running.
9. Weight a Minute
• Each plugin has a weight that represents its likliehood
of being selected.
• When a change is made, the user is presented with a
dialog asking ‘did you like this?’
• If they select ‘yes’, the change is committed and the
weight of the plug-in is increased.
• If they select ‘no’, the change is committed and the
weight of the plug-in is slashed.
10. Weights
• Within our testing group, the issue of dynamic
diversity is important.
• Older users rarely have one significant issue they will
self-identify as a problem.
• More often they have a blend of minor ailments that
combine to create a unique portfolio
• None of which are significant enough to be considered
a problem in themselves.
• The dynamic weighting adjustment within the
framework allows for users to feel as if they are in
control.
• It also allows for plug-ins to ‘mould’ themselves to
a user’s specific preferences.
11. Plug-Ins
• We tested several plug-ins, either individually or as
part of a ‘suite’, to determine the effectiveness of
the framework.
Plug-In Description
DoubleClick Identified difficulties in double clicking, and increased
the threshold if they were encountered.
PointerSize
and
MouseTrails
Identified difficulties in finding the mouse, and either
increased the size of the pointer (PointerSize) or
switched on/lengthened mouse trails (MouseTrails)
DoubleBack Identified doubling back behaviour with mouse
interactions, and changes the speed of the pointer.
MissedClicks Identified when someone had difficulty clicking on a
precise target, and would enable pointer precision.
InputRecorder Recorded all input from users in the testing, allowing for
it to be played back later in a form that allowed for O/S
interaction.
12. Results
• Experimental validation of the tool shows several
things:
• Users thought the tool was beneficial
• Users thought the tool was understandable
• Users thought the tool was non-intrusive
• Users felt the tool made changes in an appropriate
way.
• Users would be willing to use a similar tool on their
own machines.
• Correcting real world interaction difficulties was
not a priority of the testing.
• However, numerous statistically significant
improvements were observed for quantitative
measures of speed/accuracy and qualitative measures
of task ease (see Heron, Hanson, & Ricketts, 2013a).
13. Framework Benefits
• Experimental validation shows that this is a
promising approach for user configuration.
• Though more real world testing is required.
• The provision of a central framework lowers the
development burden of building adaptive plug-ins.
• No need to worry about issues of porting, low
level events and such.
• The provision of a central framework allows for
high-level co-operation between adaptations.
• The framework lowers the burden of knowledge on
users, and allows for a way to resolve issues of
confidence in configuration.
14. Future Work
• Currently, the framework is limited to changing the
underlying operating system.
• It doesn’t offer real time adaptive correction yet.
• Before the tool can be deployed in the real world,
several issues regarding security and trust must be
resolved (see Heron, Hanson and Ricketts, 2013b)
• Future work is aimed at addressing both of these issues.
• As well as expanding the supported operating systems
and power of the operating system contexts.
• The tool is available as open source at https://
github.com/drakkos/ACCESS, but is not currently in a
very developer-friendly format.
• If anyone is interested in working with the tool, please
let me know.
15. References
• Trewin, S. (2000). Configuration agents, control and privacy.
In CUU '00: Proceedings on the 2000 conference on Universal
Usability, pages 9-16, New York, NY, USA. ACM.
• Hawthorn, D. (2003). How universal is good design for older
users? In CUU '03: Proceedings of the 2003 conference on
Universal usability, pages 38-45, New York, NY, USA. ACM.
• Heron, M., Hanson, V. L., and Ricketts, I. W. (2013a).
Accessibility support for older adults with the ACCESS
framework. International Journal of Human-Computer
Interaction,
• Heron, M., Hanson, V., and Ricketts, I. (2013b). Open source
and accessibility: advantages and limitations. Journal of
Interaction Science, 1(1):2.
• Heron, M. (2011). The ACCESS Framework: reinforcement
learning for accessibility and cognitive support for older
adults. PhD thesis, Dundee University, Dundee, Scotland.