This research was performed within a software engineering workshop. In addition to standard technical issues, this workshop was designed to enhance students' capabilities related to non-technical knowledge areas, such as critical thinking, interpersonal and team-based skills. An important objective of outlining the importance of software maintainability issues was achieved through team-based collaborative development activities. There were three assignments in which each team had to continue the work designed (or developed) by another team. The main research study objective was to examine the effect of employing this kind of a team-based peer-review on the students' learning process. Data referring to the students' perceptions is presented and analyzed in addition to student reflections on the workshop which demonstrate their expanded understanding of the design and application process.