Andy Funk

A Tool for the Visual Composition of Distributed Java/Matlab Applications

Date: May 22, 2003

ABSTRACT

Many scientists and engineers have data processing applications that would benefit from distributed computation, but lack the time or expertise to develop parallel versions of their algorithms. Meanwhile networks of workstations have become an increasingly inexpensive and readily-available platform for parallel computing. Existing tools provide a means of development to the experienced parallel programmer, but fall short in the areas of visual, component-based application development. Clearly a need exists for a a tool that supports distributed application development while providing an intuitive graphical interface.

The JavaPorts Visual Application Composer (JPVAC) is a graphical tool that provides the ability to create distributed applications by combining reusable Java and Matlab software components in a visual environment. The JPVAC providesthe essential features such as the ability to define a task interactions graph, allocate tasks to computing nodes, and connect tasks via communication ports, along with advanced features such as the ability to undo/redo recent changes to the task graph, to create hierarchical groups of tasks, and to generate common task graph patterns automatically.

The presentation will provide the necessary background on the JavaPorts components framework and related visual development projects. It will include an in-depth discussion of the software development process involved, including identification of user requirements, object-oriented analysis and design according to the Model-View-Controller (MVC) architecture, and implementation using Java and supporting software libraries. The presentation will conclude with an interactive demonstration to provide a sense of how quickly and easily a distributed multi-component software application can be developed using the JPVAC.

Thesis Committee
Prof. Kaeli, Dr. Jeremy Kepner (external), Prof. Manolakos (advisor)