JavaSpeak Project

JavaSpeak is an Integrated Development Environment (IDE) designed to provide a non-sighted user with useful information about a Java program's structure and semantics. The current version of JavaSpeak (version 3.0) is implementaed as a set of plug-ins for the Eclipse IDE.

Instructions for downloading and installing JavaSpeak (3.0).

Features of JavaSpeak.

Unlike other IDEs that we have worked with, Eclipse is designed to work relatively well with a screen reader like JAWS. As such, we assume the user's screen reader will handle the primary navigation tasks and speech output for JavaSpeak.

Currently, we have Eclipse plug-ins to support two areas: (a) basic accessibility, and (b) accessible tree navigation.

(a) The basic set of accessibility modifications for Eclipse includes the following:

  1. A list of Elcipse shortcuts that can be used to access various parts of Eclipse without a mouse.
  2. A plug-in to provide auditory cues signaling the success or failure of a compile, and the successful execution or runtime error of a program.
  3. A plug-in to automatically set the focus to the console window during runtime so that the output and/or error logs can be heard as they are generated.
  4. A modified Eclipse plug-in, such that the focus of the "New Java Class" window is originally on the "Source Folder" field, rather than on the "Name" field.
  5. Modified help context messages to describe complex GUI layouts.

(b) Accessible Tree Navigation:

An accessible tree is also being implemented in JavaSpeak. THe motivation for this tool is to support navigation through trees that represent the program structure. This tool is being designed to meet the following requirements:

  1. The tool must support navigating large, complex trees representing program structure. While any particular program structure tree may be relatively small, the navigation strategy must not be limited to the kinds of hierarchies represented by most menu systems.
  2. The tool must support effective navigation through unknown tree structures. Although a user may revisit the same tree multiple times, the main objective is to support the investigation of new code to figure out what is going on. As the tool will be used by programmers, it can be assumed that the user is familiar with tree terminology. It can also be assumed that the user is a relatively savvy computer user, although not necessarily an expert programmer.

The accessible tree is currently implemented as a plug-in for Eclipse that extends the resource navigator class, which is part of the existing Navigator view of Eclipse. Primarily, a set of event listeners has been added along with appropriate audio output. The implementation is designed to work in conjunction with JAWS.

A prototype implementation of the accessible tree is available as

The current version of an acessible navigator tree, as a plug-in for Eclipse, is available as

The JavaSpeak project is part of the CSCAP (Computer Science Curriculum Accessibility Program) at Winona State University and Saint Mary's University, which is funded in part by NSF .

end of page.