Affiliation:
1. Department of Computer Science and Software Engineering, Concordia University, Montreal, Canada
Abstract
If there is a constant in software development, then it is that its ecosystem is a variable. The agile methodologies are part of a relatively recent shift from predictive to adaptive approach towards software development. This change has had a notable impact on software engineering education (SEE). In this article, a glimpse into the state-of-the-art of incorporating agile methodologies in software engineering courses is presented. In doing so, the reasons for including a project component in software engineering courses, and for committing to agile methodologies in software engineering projects in those courses, are given. The significance of collaboration in the execution of agile methodologies, in general, is underscored, and the pivotal role of collaboration in agile course projects, in particular, is emphasized. To lend an understanding to the notion of collaboration in agile methodologies, a conceptual model for collaboration is proposed and elaborated. The types of collaborations that can occur in agile course projects are classified and discussed. The use technological means for facilitating collaboration, including the Social Web and especially the Wiki, is highlighted.
Reference66 articles.
1. The five orders of ignorance
2. Active learning and feedback patterns.;J.Bergin;Proceedings of the 13th Conference on Pattern Languages of Programs,2006
3. Exploring principles of user-centered agile software development: A literature review