The development of large software systems demands intensive cooperation among multiple project team members with different responsibilities. The development process is often distributed across time and space and takes place within and between specialized workgroups. This necessitates finding appropriate answers to questions related to division of labor, to communication, and to coordination and cooperation in the planning, development and maintenance of software systems. Development environments that explicitly support group work are an important prerequisite for the production of high-quality software systems. Most of the software development environments in use today support primarily technical aspects and have shortcomings in the area of organizational support. This paper describes a model for cooperative work processes in software projects and a corresponding development environment that provides balanced support for both organizational and technical aspects of software developmen...