Collaborative Software Development: A Discussion of Problem Solving Models and Groupware Technologies
Teamwork is always challenging. Adding the complication of problem solving and software design only amplifies this challenge. The challenges of developing software as a team can be reduced by using groupware to coordinate and communicate the intricate details involved in the process. This study set out to determine if in fact there are tools available to assist in the collaborative problem solving and software development process. It must be understood at the outset of this paper that problem solving is at the heart of software development. Without amplifying the collaborative problem solving steps required for developing an effective and efficient solution, a much less then accurate solution will result. This paper provides a review of collaborative problem solving techniques and groupware in the software development domain covering both methodology and technology. There are three areas of focus in this paper. Specifically, collaborative problem solving and decision making; groupware theory and tools; and group cognition and psychology will be explored. The review is then followed by a careful analysis of the collaboration models and tools as well as their potential impact on software development. This paper ends with a discussion of our future work that will include developing a tool, which incorporates a problem solving model and collaborative structures for the software development domain.