apply end-user programming to the assistive technol-
ogy area in the pursuit of strategies and results that
may contribute to refining the proposed approach. Fi-
nally, we present the MIT App Inventor development
platform used to develop the prototypes of these cus-
tomizable mobile apps.
2.1 Scanning Access Training
Access to the computer by people with major mo-
tor difficulties may have to be carried out through a
mechanism called scanning. To control this mech-
anism, users should activate one or more switches.
In the case of regular scanning, only one switch is
used. The first activation of the switch will start the
scanning, and then the system will automatically step
through all the available options in the user interface.
A second activation of the switch will select the op-
tion highlighted at that moment. Other scanning al-
ternatives, such as step-by-step scanning, require two
switches. One of the switches is used to move be-
tween options manually, and the second switch allows
the user to select highlighted option.
For effective use of scanning access, to control
the computer or other electronic devices, users usu-
ally undergo a training program involving activities
of the following types that should be carried out in a
progressive way (Cook and Hussey, 2002):
1. Cause-Effect Training – Activities where activa-
tion of a switch (or touching the screen) causes
certain effects, such as coloring an image or mov-
ing an element on the screen;
2. Hit on time Training – Activities where an ele-
ment moves on the screen, and the user must acti-
vate the switch at the right moment. For example,
in an activity directed toward children, it may be
necessary to activate the switch when a football
player passes in front of the soccer goal;
3. Symbol Selection Training – Activities where the
user is asked to select a communication symbol
using scanning access.
A past graduation project (Silva, 2003) was de-
veloped in collaboration with the Center of Cerebral
Palsy of ANONYMOUS, a computer application con-
taining activities to train users in these three steps.
In the following work, also another graduation
project, a second application was developed to allow
rehabilitation therapists and special education teach-
ers to create new activities, specifically adapted to
their students (Coelho, 2007). The creation of new
activities was based on pre-existing models, which
these professionals completed by providing the nec-
essary data through a wizard-like configuration inter-
face. For example, for a cause-effect activity, they
could select the sequence of images to be displayed
to the user.
In this new project, a new approach will be tested,
consisting of letting rehabilitation therapists and spe-
cial education teachers change the program code di-
rectly to better adapt each activity to their students’
needs and capabilities.
2.2 Software Customizability
Customizability is an important usability principle
that consists in the modifiability of the user interface
by a user (adaptability) or system (adaptivity) (Dix
et al., 2003). This principle assumes even greater im-
portance for users with special needs since it allows
software and interfaces adaptation to this group of
users’ specific needs and capabilities.
Personalization through adaptivity is a strategy
that requires a certain degree of intelligence on the
part of the system. Instead of explicit configuration,
the system must infer the users’ needs and adapt its
mode of operation based on collected knowledge. For
example, options can be ordered in a menu according
to their frequency of use, thus optimizing the user’s
effort. In assistive technologies, this strategy is fol-
lowed by augmentative and alternative communica-
tion systems to predict words and sentences that users
intend to speak.
In this work, we explore personalization through
adaptability, meaning that the user will explicitly con-
figure the software for training scanning access. How-
ever, instead of offering a graphical user configuration
interface consisting of several dialog boxes for user
configuration, an alternative is explored that allows
users to change those options in the code.
This approach has been applied with some nu-
ances in different application areas. (Barricelli
et al., 2019) carried out a systematic mapping
study about this strategy, considering scientific lit-
erature about End-User Development (EUD), End-
Programming (EUP), and End-User Software En-
gineering (EUSE). They identified several differ-
ent techniques that were adopted in those stud-
ies: component-based, rule-based, programming by
demonstration/example, spreadsheet-based, natural
language, template-based, natural language, work-
flow and dataflow diagrams, model-based, text-based,
digital sketching, annotation-based, assertion-based,
and gesture-based. The authors also identified several
application domains: business and data management,
web applications and mashups, smart objects and en-
vironments, games and entertainment, education and
teaching, healthcare and wellness, mobile applica-
CSEDU 2022 - 14th International Conference on Computer Supported Education
294