Simulating vision impairments for Java/Swing developers using ...

bravesnailsSoftware and s/w Development

Jun 7, 2012 (6 years and 13 days ago)


Simulating vision impairments for Java/Swing
developers using the NetBeans IDE
Theofanis Oikonomou
, Konstantinos Votis
, Peter Korn
and Dimitrios Tzovaras

Informatics and Telematics Institute, Centre for Research and Technology Hellas,
6th km Charilaou-Thermi Road, P.O. Box 60361, Thessaloniki, GR-57001 Greece
{thoikon, kvotis, tzovaras}
Sun Microsystems, Inc.,
17 Network Circle, MPK17-101, Menlo Park, CA 94025, USA
Abstract. In this work we propose a Netbeans vision impairments simulation
module for Java
Swing applications. Thus, developers will prevent
accessibility barriers and improve the overall quality for their implementations.
1 Extended abstract
It is important to realize that people with disabilities are not just a tiny minority of the
population. The lowest estimate, based on the extremes of currently defined
disablement categories, puts their total number at around 40 Million persons (nearly
11% of the population of the EU). Designing for people with disabilities is becoming
an increasingly important topic for a variety of reasons, especially due to the recent
legislation in many countries promoting their rights. Consequently, even if people
with disabilities want to be independent and do things for themselves by themselves,
unfortunately, most Information and Communication Technologies (ICT) applications
and systems are not fully accessible today.
Thus, the lack of non accessible software applications can cause large productivity
losses, with many people being unable to fully participate at work, in education, or in
a wide range of economic and social activities. Existing development tools and
packaged solutions (e.g., several Computer-aided design (CAD) tools or simulation
environments) give little out-of-the-box assistance in most cases or, at worst, make it
impossible to design and develop accessible ICT Java solutions for vision impaired
users. It is important that the design and development of accessible ICT solutions can
be supported in an automated fashion, as much as possible. So, although the existing
simulation tools are considered to be a good reference for authoring tools, it is
currently a work under progress. Thus, developers and designers need tools that
provide process-integrated and constructive guidance to them in how to apply the
accessibility principles.
Even though most of the well known vision impairment simulators, such as
aDesigner [1], Color Doctor [2], Visual Impairment Simulator for Microsoft
Windows [3], Vischeck [4] and WebAIM Low Vision Simulator [5], are considered
2 Theofanis Oikonomou et al.
to be a good guide to the accessibility enhancement of Web sites and Microsoft
applications, there are a number of major drawbacks regarding this effort. One major
concern is that, they do not offer vision impaired simulation capabilities for other
applications than Web such as Java
Swing applications. In addition all of these
applications are excluded from well known Intergraded Development Environments
(IDE) that developers use for their software implementations. Thus, it is very unlikely
that developers who are not working exclusively on accessibility issues will ever use
In this work we devised two new modules, "Preview Design in Vision Impairment
Simulator" (PreDeVIS) and "Run Project in Vision Impairment Simulator" (RunVIS),
for the Netbeans IDE that can give the developer an idea of what would his Graphical
User Interface (GUI) actually look like to a vision impaired user. We used the Sun
Standard Edition Development Kit (JDK), the Java Accessibility Application
Programming Interface (JAAPI) and the Netbeans IDE.
PreDeVIS module provides a visual design preview feature that allows you to see
how the form will display in your application. When activated, the GUI builder will
activate the form in Preview mode. The preview gives an indication of whether the
component alignments and anchors are set the way you want them. Preview mode lets
you type information into text fields, tab from field to field, resize the form and
simulate various visual deficiencies. We can identify four different regions. The first
one, located in the upper left part of the PreDeVIS is the previewed form. The
simulated form is located in the upper right part. Any action made in the previewed
form is propagated in the simulated form. Furthermore, we can specify which
impairment to simulate from the control panel found in the lower left part of the
simulator and control various factors regarding the specific impairment from the
controls located in the lower right part of the preview simulator. For example we can
choose to simulate how a low vision user with glaucoma would perceive our form
when he expands a tree (
Fig. 1

Fig. 1. PreDeVIS module simulating glaucoma.

Netbeans Vision Impairments Simulator modules 3
With RunVIS module the developer has the ability to explore the application and
test if the functionality he has programmatically set to each GUI component actually
works. While the application is running new windows, such as dialogs, choosers or
frames, may appear due to a user action. The module automatically simulates the
window that has the user's focus. Another interesting feature is that the module
inherits the Look and Feel (L&F) that was set to the application by the developer. For
example the developer can see how a user with cataract clicks on a check box while
the application has the Windows L&F (Fig.

Fig. 2. RunVIS module simulating cataract.
In this paper a tool for simulating various vision impairments in developing Java
swing applications is presented. This tool can be used as a module of the Netbeans
IDE aiding the developers throughout the phases of the whole development process.
This way they can overcome accessibility barriers and improve the overall quality of
their applications. Feedback from user groups could be used to better simulate the
implemented impairments or add more. Finally, the tool could be extended in order to
apply the same simulation techniques to JavaFX [7] applications.

Acknowledgments. This work was partially funded by the EC FP7 project
ACCESSIBLE - Accessibility Assessment Simulation Environment for New
Applications Design and Development [6], Grant Agreement No. 224145.
1. IBM aDesigner accessed 28 April 2009 from:
2. Fujitsu Color Doctor 2.1, accessed 28 April 2009 from:
4 Theofanis Oikonomou et al.
3. Visual Impairment Simulator for Microsoft Windows, accessed 28 April 2009 from:
4. Vischeck tool, accessed 28 April 2009 from:
5. WebAIM low vision simulator, accessed 28 April 2009 from:
6. FP7 strep project ACCESSIBLE - Accessibility Assessment Simulation Environment for
New Applications Design and Development, Grant Agreement No. 224145,
7. JavaFX software applications, accessed 15 July 2009 from: