Developing large programs for parallel, distributed computer systems is at least as difficult as developing software for more traditional sequential systems. The added difficulty is in the innovation required to exploit the multiplicity of processors. Considerable effort has been expended to build operating and networks so that they are conducive to distributed programming, and new programming languages have been built to increase the expressive computation so that it takes advantage of the structure of the support system. Program designers do not have adequate tools to assist them in creating and evaluating parallel, distributed computations. They also lack convenient ways to describe, model and visualize these computations. The goal of the research is to study mechanism that support the orderly exploration of parallel program structures, and which provide varying amounts of feedback evaluation during that design process.