Collaboration has become increasingly widespread in the software industry as systems have become larger and more complex, adding human complexity to the technological complexity already involved in developing software systems. To deal with this complexity, human-centric software development methods, such as Extreme Programming and other agile methods, have been developed and implemented. Aiming to prepare future software developers for today's software industry, this paper presents a framework for developing collaborative learning tools and activities, and examples that were developed for the course "Human Aspects of Software Engineering" in order to assist students in learning collaborative software development. The learning processes and knowledge construction undergone by the students in the study were examined empirically, both in general and with respect to collaboration in particular. Results indicate that, based on their individual and group in-class experiences and reflections, students developed skills and constructed both practical and theoretical knowledge relating to successful collaborative software development.
Hadar, Irit; Sherman, Sofia; and Hazzan, Orit
"Learning Human Aspects of Collaborative Software Development,"
Journal of Information Systems Education: Vol. 19
, Article 8.
Available at: https://aisel.aisnet.org/jise/vol19/iss3/8