Overview of PSEware Project

Overview of PSEware Project


This effort is a multi-institutional, multidisciplinary research project on Problem Solving Environments (PSEs) focused on symbolic computation, user interfaces and collaborative technologies for parallel object-oriented programming. The PSEware (pronounced SEAware) project is driven by a several applications, including:

Major Issues

Area Background

A problem-solving environment is an integrated collection of software tools that facilitates problem-solving in some domain. A significant amount of work has been carried out in the area of PSEs for problems specified by differential equations. Our work has a different emphasis from much of the work in PSEs by focusing on symbolic specifications, methods of reuse of object structures for user interfaces and parallel execution, component technologies for PSEs, and collaboration technologies for problem solving.

A scientist or engineer should be able to specify a problem symbolically with the notation that they use in communication with each other. PSEs should help them refine their symbolic specification to efficient parallel object-oriented programs. Parallel program archetypes should facilitate this refinement. The symbolic and graphical user interfaces should also be object-oriented to facilitate reuse of the user interface for large classes of scientific applications.

Most modern scientific computing research is done by groups of people. A PSE should facilitate collaboration among a distributed group as well as empower a single person. Our project researchs adapting internet-based collaboration technologies to help collections of people use shared PSEs to solve problems together. A collaborative problem-solving environment is also an ideal teaching tool. A focus of our group is in using PSEs for outreach and education.

The PSEware project targets the generic underpinnings of problem solving environments, and one application of that research is the identification and creation of components and glue technologies which will allow application scientists to quickly and easily build their own PSEs.

Related Research Areas

Our work is application-driven, and those driving application areas include airshed modeling, cosmology, numerical tokamak, sparse linear systems, code generation, and soliton exploration. A great deal of work is going on in these and related areas of science and engineering and some of that work deals with PSEs for specific areas. Our focus has a different emphasis: research on methods and tools to develop PSEs as opposed to PSEs for a specific application. However, working on several specific PSEs is critical to be able to identify archetypes and resuable, useful tools for PSEs, and to assure that the tools developed are both usable and used.

Symbolic computation has been receiving increasing attention with the widespread use of Mathematica and Maple and similar tools, and with the increasing integration of these tools with tools for numeric computations such as Matlab. Most PSE research which has used symbolic computing has used the computer algebra system as a relatively simple scripting front-end.

A great deal of research is being carried out in parallel object technologies parallel languages, and parallel runtime systems (MPI, PVM). There is a huge and growing interest in collaborative technologies, the Web and distributed computing.

We are furthering all those areas. Our emphasis is on integrating those research strands in different areas into a unified discipline of PSE engineering, abstracting general software architectures and tools from existing approaches and creating new ones.

Component PSEware Projects

[ IU CS ] [ Extreme! Computing ] [ PSEware ]

Last updated: Mon Jan 25 12:58:49 1999