The rise of the Internet has spawned quite a number of new technologies that could be put to good use to address long-standing issues in design and development of distributed systems. Problem-Solving Environments are prime candidates to benefit from this wealth of technological innovation. This paper
presents a high-level architecture for composing, building, scheduling, and executing distributed scientific problem-solving applications. A mosaic of emerging technologies is woven together in a credible way {XML, CORBA, Java Beans, eta). Although only a conceptual design at this point, it shows considerable scope and promise. Associating a performance model with each component is a nice idea in an object system. Prototype implementations of the Equation Builder and MDS-PSE do not go very far in proving the concepts, beyond what others have already accomplished. However the discussion of MDS-PSE provides a concise tutorial on distributed execution with CORBA objects. Although not much new ground is broken, readers should find it useful to see someone paint the entire picture of what a problem-solving environment might look like if you drew upon the best of the current generation of technologies. The component taxonomy is well thought out for today’s problems and computing environments.
However, there is an important piece of related work that should really be discussed and compared to the Visual Component Composition Environment. In the late 1980s, several commercial dataflow visualization systems arose, largely based on ideas first built into products by the team that became Advanced Visual Systems, Inc. Although directed at the visualization market, AVS tools are actually PSE composition and execution systems (see http://www.avs.com/products/). There are strong similarities between AVS and VCCE. The AVS system of components, their dataflow paradigm with typed inputs and outputs, and their interactive canvas composition system are all very similar to the VCCE design described in this paper. Of course, VCCE is an updated design. It would be highly desirable to explicitly compare AVS to VCCE in Section 2 of this paper. I think such a discussion would also help to highlight some of the innovative points of the VCCE design for the readers.
Others have done extensive work within the AVS environment, pushing its limits as a PSE composition tool. One of the things that they found was that the pure dataflow model is only practical for simple execution structures. For example, when the execution flow needed to loop (as in computational steering), getting the connected dataflow components to do the right thing became very awkward. AVS eventually added Some control mechanisms that ameliorated this problem. A similar problem could occur in the new architecture presented in this paper. However, the event model described in this paper may provide a way around the pure dataflow model.