Supporting distributed software development by modes of collaboration
Kluwer Academic Publishers, Dordrecht, The Netherlands
Work processes in team based software development need to be strucured to minise and resolve conflicting or divergent work. Current software development methodologies propose ways for diving the whole task of software development between team members. This paper suggests a different way of working by introducing modes of collaboration (MoCs), which support concurrent and collaborative work. A MoC defines how tight two people can work together and how much the rest of the group can demand to know about a programmer. Different MoCs are ordered in a specturm from single users's offline usage up to concurrent editing of the same source code. Special emphasis is put on balancing gains and efforts that are related to a specific MoC. The second part of the paper presents how MoCs are implemented in the distributed co-operative software development environment TUKAN. TUKAN includes synchronous co-operative tools and awareness widgets, which operate on a spatial representation of the software under construction. TUKAN provides tools for each MoC and allows programmers to swich between MoCs.