Our belief is that future, Computer Supported Cooperative Work will by necessity involve a heterogeneous collection of applications, paradigms and models and that no single system will meet all the requirements of all groups. For this reason we propose a CSCW Environment, a form of operating system, which facilitates inter-working between many different CSCW applications. We describe the key requirements of such an environment, followed by a set of models which offer different perspectives on the environment and which collectively define its functionality. These models address issues including setting planned work against a background of ad-hoc interaction; providing a common organisational context for applications; defining the str...