The main cooperation aspects are identified in [BJP94]:
The most obvious starting point when trying to add cooperation support to an SCM system is to focus on software objects and access to these. Most SCM systems have a shared database of software objects, and use some mechanism to synchronize object access. Few systems provide facilities for communication between users or for user coordination at a higher level than object access. With this focus in mind, we would expect that further cooperation support will be concerned with communication about the objects managed by the system and that declaration of activities that need coordination are centered around the object they will access.