A Problem Solving Environment (PSE) should aim to hide implementation and systems details from application developers, to
enable a scientist or engineer to concentrate on the science. A PSE is, by definition, problem domain specific, but the infrastructure
for a PSE can be problem domain independent. A domain independent infrastructure for a PSE is described, followed by two application
dependent PSEs for Molecular Dynamics and Boundary Element codes that make use of our generic PSE infrastructure.