Computer Supported Cooperative Work, or CSCW, is a rapidly growing multi-disciplinary field. As personal workstations get more powerful and as networks get faster and wider, the stage seems to be set for using computers not only to help accomplish our everyday, personal tasks but also to help us communicate and work with others. Indeed, group activities occupy a large amount of our time: meetings, telephone calls, mail (electronic or not), but also informal encounters in corridors, coordination with secretaries, team workers or managers, etc. In fact, work is so much group work that it is surprising to see how poorly computer systems support group activities. For example, many documents (such as this book) are created by multiple authors but yet no commercial tool currently allows a group of authors to create such shared documents as easily as one can create a single-author document. We have all experienced the nightmares of multiple copies being edited in parallel, format conversion, mail and file transfers, etc.CSCW is not recent. Back in the late 1960s, Doug Engelbart created the NLS/Augment system that featured most of the functions that today's systems are trying to implement such as real-time shared editing of outlines, shared annotations of documents, and videoconferencing. The field really emerged in the 1980s and has been growing since then, boosted in the recent years by the explosion of the Internet and the World Wide Web. The Web itself is not a very collaborative system: pages can be easily published but it is impossible (or very difficult) to share them, e.g. to know when someone is reading a particular page or when a page has been modified. The range and complexity of the problems to solve to support cooperative activities is rapidly overwhelming: data sharing, concurrency control, conflict management, access control, performance, reliability, the list goes on.A large part of this book is devoted to the exploration of these problems and the state of the art of their solutions. In fact, CSCW is challenging most of the assumptions that were explicitly or implicitly embodied in the design of our current computer systems. CSCW tools, or groupware, are by nature distributed and interactive. To succeed in the marketplace, they must be safe (authentication), interoperable (from network protocols to operating systems and GUI platforms), fault-tolerant and robust (you don't want to be slowed down or loose your data if another participant in the session uses a slow connection or experiences a crash).In addition to these technical difficulties, there is another, maybe harder, problem in implementing groupware: people. For a medium to work, there must be an audience that accepts using it. Usability issues have stressed the need to take the users into account when designing, developing and evaluating an interactive software. For groupware, usability issues go beyond the now well-understood (if not always well-applied) methods from psychology and design. They involve social sciences to understand how people work...