Thursday 8 November 2007

Belated Readings: Week 6

Building collaboration into IDEs
What are the major collaborative features suggested by the authors?
The question arises as to why it is beneficial to integrate collaboration within IDEs instead of using external tools for the collaboration process? This is addressed by considering the following 3 collaborative processes.

Configuration Management: Integrating this reduces the effort required to perform shared file management operations. Properly done, this provides the functionality that configuration management is as easy as managing files on the local system. This would add similar benefit as integrating the debugger and linker into the same IDE, by saving time and effort using different tools.

Screen Sharing: Problems are often solved by discussing code between developers. Integrated this into the IDE keeps the data within the IDE context and can easily be used for reference afterwards.

E-mail and IM: This ties the informal discussion between developers into formal source code and repository branches. Another great benefit is traceability, where questions and answers about a particular code are available within the idea, reducing the possibility of losing this information within a normal email or server.


When adding collaboration features it is necessary to

  • Accommodate a variety of processes, both formal and informal, because requirements between different groups and teams may vary
  • Provide a flexible collection of ways that developers can collaborate to allow groups to choose which features to use
  • Be configurable and extensible by the developers themselves

The following capabilities flexibly accommodate various group dynamics regarding programming
  • Provide peripheral awareness of other programmers and their activities
  • Support a variety of communication mechanisms
  • Integrate with the team's source-code control system and bug tracking system
  • Support "in context" communication, both synchronous and asynchronous
  • Support searching through saved team artifacts and the development history

No comments: