Collaboration software is a general term for tools that people use to electronically communicate with each other. The software can be designed for tasks as simple as a text-based messaging; they can handle large numbers of items as with an office calendaring program; or they can be as complex as a computer aided engineering design system. New attention has been placed on collaboration software because of the potential of the Internet to provide new platforms for delivery and evolution of complex projects.
Traditionally collaboration software models have been used internally by companies since companies have work teams that need to transfer and share of information between employees. Two popular models of collaboration software are peer-level systems and hierarchical systems. Microsoft Word would exemplify a peer-level system, where peers work together on a project. A hierarchical system is used for larger or more complex projects. Hierarchical systems use a central repository of data and changes.
Most large projects need a hierarchical system to facilitate collaboration. Large projects are broken into smaller sub-projects for manageability. The sub-projects are then assigned to individuals or teams as tasks. People working on the tasks need to communicate with each other and with team members working on different subprojects in order to ensure that their contributions match the goals of the entire project. System designers and project manager needs to work with all the groups to ensure that the pieces will work together as a uniform product. Collaboration software facilitates the exchange of information. For example, a project such as the design of a new aircraft will require hundreds of engineers, designers, programmers, managers, etc. The structural designers need to collaborate with each other and with subcomponent designers so that the parts they design fit together and function as a piece of the entire system. Further, optimization of the design of the entire system can require modification of thousands of parts. Collaboration applications are intended to support these types of projects. Management collaboration applications permit each manager to see how their piece of the project affects the whole project.
More complex collaboration software usually stores the documents or information that are being developed at a central computer. Team members typically access the centrally stored repository, only updating their portion. The collaboration software's primary role is to safeguard against two people changing the same section at the same time. Changes are automatically logged with an identification of the person and the time of the modification. Two users are precluded from simultaneously modifying the same set of data. Typically a person who wishes to change the information is required to "check-out" (state their intention to change a section) a component prior to changing it. The collaboration software then locks out other people from making changes until the person with the lock releases it. As they release their lock, they update the information in the central repository. When others want to change the same section, they must retrieve the latest version. The "check-out" procedure is the step that forces the update. While the information is under modifications, others are still permitted to view the unchanged version of the document.
Collaboration software is not restricted to complex, large systems. Many common software programs provide peer level collaboration. Microsoft Word, for example, includes features like change tracking. This allows multiple people to work on the same document. The inherent limitation of tools such as this is that two people cannot work simultaneously on the same document. They need to agree, ahead of time, on who will be modifying the document at a particular time. When they have completed their changes, they need to forward the "source" or "master" document to the next person scheduled to modify it. No additional changes are made until the next person has completed their revisions. Obviously this negotiation becomes difficult for large documents under development by many people.
The Internet's ability to make it easy for people to access each other (and each other's data) located anywhere has extended the use and types of collaboration software. Chat rooms and bulletin boards are the simplest and most visible form of "web collaboration," but these are restricted to very simple text-based exchanges. Calendaring applications (scheduling meetings and conference rooms) are excellent examples of web collaboration because they require very little information transfer but yet they require a central "gatekeeper".
The Internet presented several new collaboration approaches and is modifying traditional ones. The main advantage of the Internet is its ability to reach users just about anywhere; however, users may have connections that only allow transfer of small amounts of data. Companies can use the Internet to extend the capabilities of traditional collaboration tools. Many times large projects extend between many companies. The Internet makes it easier for workers from different companies to use and share collaboration software so they can work on the same project.
Probably, the most significant collaboration (and one that is just exploding) is the use of web sites for training and presentations. Here, multiple users can visit the same website (intranet, Internet, or extranet), and the presenter, via a telephone or special delivery software, can lead the audience through the presentation. One tremendous benefit of this approach is that the presentation/course can be left on the website, and the audience can revisit it to get the important points, to show it to other people, and to make their own presentations. Systems like on-line whiteboards (where multiple people draw on a shared electronic tablet, and others can immediately see their modifications remotely) enhance the presentations, thereby getting everyone closer to the goal of distance based conference rooms. The fundamental goal is to control costs by reducing travel and provide better sharing of information.