Collaboration is vital in any team-based software development effort, and traditionally occurs in the source control repository or in applications outside the IDE (e.g. email, instant messaging). The Jazz project extends the IDE with collaborative capabilities, focusing on adding awareness, coordination, and communication among a small team of developers. Our goal is to provide easy, in-context, yet unobtrusive access to as much team information as possible. We demonstrate this in our prototype by contributing a number of collaborative plug-ins to the Eclipse Java development environment.
Teams and their members are shown with their online status and information on the activities they are engaged in. Each team has an associated group discussion board, one-to-one chats to discuss source code, and screen sharing facilities for joint debugging and code walkthroughs. Team members can define, assign, and relate activities, which include tasks and source control events, and these are automatically logged in the discussion board and linked with relevant source files. In addition to people-centered awareness, the Jazz project provides resource-centered awareness. Through decorators in the package explorer, a user can tell which files have been checked out, modified, and checked in. Markers next to code are used to indicate modifications, annotations, chats about a particular region of code, and associated activities.
Keywords: Eclipse, IDE, application development, integrated development environment, collaborative computing, collaborative software engineering, collaborative development environment, CSCW, groupware, Java