School of Computing


HiPPO - High Performance (Parallel) Object-Oriented Software Systems

Our long-term vision is an object-oriented software development environment in which a software engineer can use (visual) notations to design, implement, and debug the performance of a parallel, object-oriented software system. The parallelism will be automatically extracted from the notations used, and the engineer will not be concerned with the detail of specifying and controlling parallelism, nor with tailoring software to run on a particular parallel system. The engineer will be able to link the software with large, object-oriented databases, which can "feed" objects into the software system for processing. The engineer will find it easy to pull existing software components together, e.g. to use libraries of numerical algorithms (also built using the same environment). In addition the engineer (and the producers of the numeric libraries) will have substantial support in the notation for constructing new numerical software. Research to support this vision is the topic of this research proposal.